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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1486) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -3
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
  3. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  4. package/Libraries/Alert/Alert.js +3 -5
  5. package/Libraries/Alert/NativeAlertManager.js +0 -2
  6. package/Libraries/Alert/RCTAlertManager.android.js +0 -2
  7. package/Libraries/Alert/RCTAlertManager.ios.js +0 -2
  8. package/Libraries/Animated/Animated.js +0 -2
  9. package/Libraries/Animated/AnimatedEvent.js +26 -7
  10. package/Libraries/Animated/AnimatedImplementation.js +0 -2
  11. package/Libraries/Animated/AnimatedMock.js +1 -8
  12. package/Libraries/Animated/AnimatedWeb.js +6 -3
  13. package/Libraries/Animated/NativeAnimatedHelper.js +10 -7
  14. package/Libraries/Animated/NativeAnimatedModule.js +0 -2
  15. package/Libraries/Animated/NativeAnimatedTurboModule.js +0 -2
  16. package/Libraries/Animated/animations/Animation.js +1 -0
  17. package/Libraries/Animated/animations/DecayAnimation.js +2 -0
  18. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  19. package/Libraries/Animated/animations/TimingAnimation.js +3 -0
  20. package/Libraries/Animated/components/AnimatedFlatList.js +0 -2
  21. package/Libraries/Animated/components/AnimatedImage.js +0 -2
  22. package/Libraries/Animated/components/AnimatedScrollView.js +0 -2
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -3
  24. package/Libraries/Animated/components/AnimatedText.js +0 -2
  25. package/Libraries/Animated/components/AnimatedView.js +0 -2
  26. package/Libraries/Animated/createAnimatedComponent.js +25 -19
  27. package/Libraries/Animated/createAnimatedComponentInjection.js +48 -0
  28. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +48 -0
  29. package/Libraries/Animated/nodes/AnimatedInterpolation.js +21 -22
  30. package/Libraries/Animated/nodes/AnimatedProps.js +0 -1
  31. package/Libraries/Animated/nodes/AnimatedValue.js +24 -5
  32. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -0
  33. package/Libraries/Animated/useAnimatedProps.js +211 -0
  34. package/Libraries/AppState/AppState.js +90 -164
  35. package/Libraries/AppState/NativeAppState.js +0 -2
  36. package/Libraries/BatchedBridge/MessageQueue.js +19 -14
  37. package/Libraries/BatchedBridge/NativeModules.js +5 -1
  38. package/Libraries/Blob/BlobManager.js +0 -2
  39. package/Libraries/Blob/FileReader.js +1 -3
  40. package/Libraries/Blob/NativeBlobModule.js +0 -2
  41. package/Libraries/Blob/NativeFileReaderModule.js +0 -2
  42. package/Libraries/Blob/RCTBlobManager.h +2 -1
  43. package/Libraries/Blob/RCTBlobManager.mm +1 -3
  44. package/Libraries/Blob/RCTBlobPlugins.mm +4 -3
  45. package/Libraries/Blob/React-RCTBlob.podspec +3 -3
  46. package/Libraries/Blob/URL.js +18 -20
  47. package/Libraries/BugReporting/BugReporting.js +2 -2
  48. package/Libraries/BugReporting/getReactData.js +2 -2
  49. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +350 -0
  50. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +4 -2
  51. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +0 -2
  52. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +35 -0
  53. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +26 -0
  54. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +6 -8
  55. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +0 -2
  56. package/Libraries/Components/Button.js +45 -15
  57. package/Libraries/Components/Clipboard/Clipboard.js +0 -2
  58. package/Libraries/Components/Clipboard/NativeClipboard.js +0 -2
  59. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -5
  60. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +50 -14
  61. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +1 -2
  62. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -2
  63. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +0 -2
  64. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -9
  65. package/Libraries/Components/Keyboard/Keyboard.js +16 -17
  66. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +17 -22
  67. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +0 -2
  68. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +3 -3
  69. package/Libraries/Components/Pressable/Pressable.js +20 -7
  70. package/Libraries/Components/Pressable/useAndroidRippleForView.js +18 -17
  71. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +0 -2
  72. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +0 -2
  73. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +4 -5
  74. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +2 -5
  75. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -2
  76. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +0 -2
  77. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +9 -3
  78. package/Libraries/Components/RefreshControl/RefreshControl.js +5 -7
  79. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  80. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +0 -2
  81. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
  82. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +11 -15
  83. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
  84. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
  85. package/Libraries/Components/ScrollView/ScrollView.js +754 -170
  86. package/Libraries/Components/ScrollView/ScrollViewContext.js +0 -2
  87. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +3 -4
  88. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -0
  89. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +31 -10
  90. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +2 -0
  91. package/Libraries/Components/ScrollView/processDecelerationRate.js +0 -2
  92. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -2
  93. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +4 -5
  94. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +17 -11
  95. package/Libraries/Components/Slider/Slider.js +19 -8
  96. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -2
  97. package/Libraries/Components/Sound/NativeSoundManager.js +0 -2
  98. package/Libraries/Components/Sound/SoundManager.js +0 -1
  99. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +0 -2
  100. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +0 -2
  101. package/Libraries/Components/StatusBar/StatusBar.js +10 -21
  102. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +0 -2
  103. package/Libraries/Components/Switch/Switch.js +98 -118
  104. package/Libraries/Components/Switch/SwitchNativeComponent.js +0 -2
  105. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -8
  106. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +2 -3
  107. package/Libraries/Components/TextInput/InputAccessoryView.js +6 -8
  108. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +0 -2
  109. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +6 -5
  110. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -16
  111. package/Libraries/Components/TextInput/{RCTSinglelineTextInputViewConfig.js → RCTTextInputViewConfig.js} +3 -5
  112. package/Libraries/Components/TextInput/TextInput.js +128 -69
  113. package/Libraries/Components/TextInput/TextInputNativeCommands.js +0 -2
  114. package/Libraries/Components/TextInput/TextInputState.js +1 -3
  115. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +0 -2
  116. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +0 -1
  117. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -2
  118. package/Libraries/Components/Touchable/PooledClass.js +1 -2
  119. package/Libraries/Components/Touchable/Position.js +1 -2
  120. package/Libraries/Components/Touchable/Touchable.js +26 -55
  121. package/Libraries/Components/Touchable/TouchableBounce.js +0 -2
  122. package/Libraries/Components/Touchable/TouchableHighlight.js +22 -6
  123. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +16 -5
  124. package/Libraries/Components/Touchable/TouchableOpacity.js +19 -8
  125. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +13 -4
  126. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +0 -2
  127. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +2 -3
  128. package/Libraries/Components/View/ReactNativeStyleAttributes.js +133 -68
  129. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -2
  130. package/Libraries/Components/View/ReactNativeViewViewConfig.js +1 -3
  131. package/Libraries/Components/View/View.js +2 -4
  132. package/Libraries/Components/View/ViewAccessibility.js +3 -0
  133. package/Libraries/Components/View/ViewNativeComponent.js +0 -2
  134. package/Libraries/Core/Devtools/getDevServer.js +0 -2
  135. package/Libraries/Core/Devtools/parseErrorStack.js +0 -9
  136. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  137. package/Libraries/Core/ExceptionsManager.js +51 -41
  138. package/Libraries/Core/ExtendedError.js +19 -0
  139. package/Libraries/Core/InitializeCore.js +1 -0
  140. package/Libraries/Core/NativeExceptionsManager.js +0 -2
  141. package/Libraries/Core/ReactFiberErrorDialog.js +44 -34
  142. package/Libraries/Core/ReactNativeVersion.js +1 -1
  143. package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
  144. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +0 -2
  145. package/Libraries/Core/Timers/JSTimers.js +41 -31
  146. package/Libraries/Core/Timers/NativeTiming.js +0 -2
  147. package/Libraries/Core/Timers/immediateShim.js +67 -0
  148. package/Libraries/Core/Timers/queueMicrotask.js +41 -0
  149. package/Libraries/Core/polyfillPromise.js +1 -1
  150. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  151. package/Libraries/Core/setUpDeveloperTools.js +53 -58
  152. package/Libraries/Core/setUpGlobals.js +2 -0
  153. package/Libraries/Core/setUpReactDevTools.js +18 -1
  154. package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
  155. package/Libraries/Core/setUpTimers.js +65 -6
  156. package/Libraries/Core/setUpXHR.js +4 -4
  157. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.android.js +131 -0
  158. package/Libraries/DeprecatedPropTypes/{DeprecatedImagePropType.js → DeprecatedImagePropType.ios.js} +0 -0
  159. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +5 -5
  160. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +2 -0
  161. package/Libraries/EventEmitter/NativeEventEmitter.js +100 -51
  162. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -77
  163. package/Libraries/EventEmitter/RCTEventEmitter.js +5 -1
  164. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +0 -2
  165. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +31 -10
  166. package/Libraries/FBLazyVector/BUCK +5 -1
  167. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  168. package/Libraries/HeapCapture/HeapCapture.js +0 -2
  169. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -2
  170. package/Libraries/Image/AssetUtils.js +0 -2
  171. package/Libraries/Image/Image.android.js +22 -133
  172. package/Libraries/Image/Image.ios.js +39 -33
  173. package/Libraries/Image/ImageAnalyticsTagContext.js +0 -2
  174. package/Libraries/Image/ImageBackground.js +10 -8
  175. package/Libraries/Image/ImageInjection.js +28 -0
  176. package/Libraries/Image/ImagePickerIOS.js +0 -2
  177. package/Libraries/Image/ImageProps.js +28 -0
  178. package/Libraries/Image/ImageSource.js +57 -14
  179. package/Libraries/Image/ImageViewNativeComponent.js +0 -2
  180. package/Libraries/Image/NativeImageEditor.js +0 -2
  181. package/Libraries/Image/NativeImageLoaderAndroid.js +0 -2
  182. package/Libraries/Image/NativeImageLoaderIOS.js +2 -3
  183. package/Libraries/Image/NativeImagePickerIOS.js +0 -2
  184. package/Libraries/Image/NativeImageStoreAndroid.js +0 -2
  185. package/Libraries/Image/NativeImageStoreIOS.js +0 -2
  186. package/Libraries/Image/RCTGIFImageDecoder.mm +6 -0
  187. package/Libraries/Image/RCTImageLoader.h +2 -2
  188. package/Libraries/Image/RCTImageLoader.mm +6 -18
  189. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +0 -5
  190. package/Libraries/Image/RCTImagePlugins.mm +4 -3
  191. package/Libraries/Image/RCTImageStoreManager.mm +5 -5
  192. package/Libraries/Image/RCTLocalAssetImageLoader.mm +5 -0
  193. package/Libraries/Image/React-RCTImage.podspec +3 -3
  194. package/Libraries/Image/TextInlineImageNativeComponent.js +84 -2
  195. package/Libraries/Image/nativeImageSource.js +0 -2
  196. package/Libraries/Inspector/ElementProperties.js +1 -1
  197. package/Libraries/Inspector/Inspector.js +13 -4
  198. package/Libraries/Inspector/InspectorPanel.js +1 -1
  199. package/Libraries/Interaction/FrameRateLogger.js +0 -2
  200. package/Libraries/Interaction/InteractionManager.js +3 -5
  201. package/Libraries/Interaction/PanResponder.js +1 -1
  202. package/Libraries/LayoutAnimation/LayoutAnimation.js +53 -17
  203. package/Libraries/Linking/Linking.js +5 -7
  204. package/Libraries/Linking/NativeIntentAndroid.js +0 -2
  205. package/Libraries/Linking/NativeLinkingManager.js +0 -2
  206. package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +4 -3
  207. package/Libraries/LinkingIOS/React-RCTLinking.podspec +3 -3
  208. package/Libraries/Lists/CellRenderMask.js +145 -0
  209. package/Libraries/Lists/FillRateHelper.js +1 -1
  210. package/Libraries/Lists/FlatList.js +77 -53
  211. package/Libraries/Lists/SectionList.js +20 -23
  212. package/Libraries/Lists/SectionListModern.js +249 -0
  213. package/Libraries/Lists/ViewabilityHelper.js +9 -9
  214. package/Libraries/Lists/VirtualizeUtils.js +18 -20
  215. package/Libraries/Lists/VirtualizedList.js +176 -132
  216. package/Libraries/Lists/VirtualizedListContext.js +0 -2
  217. package/Libraries/Lists/VirtualizedSectionList.js +247 -209
  218. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +6 -6
  219. package/Libraries/LogBox/Data/LogBoxData.js +21 -19
  220. package/Libraries/LogBox/Data/LogBoxLog.js +0 -2
  221. package/Libraries/LogBox/Data/LogBoxSymbolication.js +0 -2
  222. package/Libraries/LogBox/Data/parseLogBoxLog.js +0 -2
  223. package/Libraries/LogBox/LogBox.js +114 -49
  224. package/Libraries/LogBox/LogBoxInspectorContainer.js +0 -2
  225. package/Libraries/LogBox/LogBoxNotificationContainer.js +0 -2
  226. package/Libraries/LogBox/UI/LogBoxButton.js +0 -2
  227. package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
  228. package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
  229. package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
  230. package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
  231. package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
  232. package/Libraries/LogBox/UI/LogBoxInspector.js +0 -2
  233. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +0 -2
  234. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +0 -2
  235. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +0 -2
  236. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +0 -2
  237. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +0 -2
  238. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +0 -2
  239. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -5
  240. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +0 -2
  241. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +4 -3
  242. package/Libraries/LogBox/UI/LogBoxMessage.js +0 -2
  243. package/Libraries/LogBox/UI/LogBoxNotification.js +3 -4
  244. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -2
  245. package/Libraries/Modal/Modal.js +42 -21
  246. package/Libraries/{Text/TextInjection.js → Modal/ModalInjection.js} +3 -5
  247. package/Libraries/Modal/NativeModalManager.js +0 -2
  248. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +8 -4
  249. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
  250. package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +4 -3
  251. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
  252. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -1
  253. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +1 -1
  254. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +32 -28
  255. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +3 -3
  256. package/Libraries/NativeComponent/NativeComponentRegistry.js +34 -2
  257. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -2
  258. package/Libraries/NativeModules/specs/NativeDevMenu.js +0 -2
  259. package/Libraries/NativeModules/specs/NativeDevSettings.js +0 -2
  260. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +0 -2
  261. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +0 -2
  262. package/Libraries/NativeModules/specs/NativeLogBox.js +0 -2
  263. package/Libraries/NativeModules/specs/NativeRedBox.js +0 -2
  264. package/Libraries/NativeModules/specs/NativeSourceCode.js +0 -2
  265. package/Libraries/Network/NativeNetworkingAndroid.js +0 -2
  266. package/Libraries/Network/NativeNetworkingIOS.js +0 -2
  267. package/Libraries/Network/RCTDataRequestHandler.mm +6 -0
  268. package/Libraries/Network/RCTFileRequestHandler.mm +6 -0
  269. package/Libraries/Network/RCTHTTPRequestHandler.h +5 -0
  270. package/Libraries/Network/RCTHTTPRequestHandler.mm +25 -7
  271. package/Libraries/Network/RCTNetworkPlugins.mm +4 -3
  272. package/Libraries/Network/RCTNetworking.android.js +6 -3
  273. package/Libraries/Network/RCTNetworking.h +1 -1
  274. package/Libraries/Network/RCTNetworking.ios.js +63 -21
  275. package/Libraries/Network/RCTNetworking.mm +3 -3
  276. package/Libraries/Network/React-RCTNetwork.podspec +2 -2
  277. package/Libraries/Network/XMLHttpRequest.js +5 -3
  278. package/Libraries/Network/convertRequestBody.js +2 -1
  279. package/Libraries/NewAppScreen/components/Colors.js +0 -2
  280. package/Libraries/NewAppScreen/components/Header.js +1 -1
  281. package/Libraries/NewAppScreen/components/HermesBadge.js +4 -1
  282. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -1
  283. package/Libraries/NewAppScreen/components/logo.png +0 -0
  284. package/Libraries/NewAppScreen/index.js +0 -2
  285. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -2
  286. package/Libraries/Performance/QuickPerformanceLogger.js +4 -4
  287. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -3
  288. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -5
  289. package/Libraries/Pressability/HoverState.js +0 -2
  290. package/Libraries/Pressability/Pressability.js +18 -13
  291. package/Libraries/Pressability/PressabilityDebug.js +9 -4
  292. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +48 -0
  293. package/Libraries/Pressability/PressabilityTypes.js +18 -0
  294. package/Libraries/Pressability/usePressability.js +0 -2
  295. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +3 -0
  296. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +18 -3
  297. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +13 -1
  298. package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +4 -3
  299. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +3 -3
  300. package/Libraries/RCTRequired/BUCK +4 -1
  301. package/Libraries/RCTRequired/RCTRequired.podspec +2 -2
  302. package/Libraries/ReactNative/AppContainer.js +3 -25
  303. package/Libraries/ReactNative/AppRegistry.js +48 -7
  304. package/Libraries/ReactNative/DisplayMode.js +32 -0
  305. package/Libraries/ReactNative/DummyUIManager.js +7 -2
  306. package/Libraries/ReactNative/FabricUIManager.js +6 -5
  307. package/Libraries/ReactNative/HeadlessJsTaskError.js +0 -2
  308. package/Libraries/ReactNative/I18nManager.js +23 -9
  309. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +0 -2
  310. package/Libraries/ReactNative/NativeI18nManager.js +1 -2
  311. package/Libraries/ReactNative/NativeUIManager.js +2 -3
  312. package/Libraries/ReactNative/PaperUIManager.js +13 -7
  313. package/Libraries/ReactNative/RootTag.js +2 -4
  314. package/Libraries/ReactNative/UIManager.js +2 -3
  315. package/Libraries/ReactNative/UIManagerInjection.js +0 -2
  316. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +32 -0
  317. package/Libraries/ReactNative/renderApplication.js +24 -6
  318. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -3
  319. package/Libraries/Reliability/UserFlow.js +7 -0
  320. package/Libraries/Renderer/REVISION +1 -1
  321. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +9484 -7643
  322. package/Libraries/Renderer/implementations/ReactFabric-dev.js +7877 -6935
  323. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +3038 -2506
  324. package/Libraries/Renderer/implementations/ReactFabric-prod.js +2112 -1937
  325. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +3375 -2693
  326. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2568 -2244
  327. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +9638 -7942
  328. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5736 -4864
  329. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +2865 -2464
  330. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2275 -2120
  331. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +3190 -2643
  332. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +2565 -2259
  333. package/Libraries/Renderer/shims/ReactFabric.js +5 -3
  334. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -0
  335. package/Libraries/Renderer/shims/ReactNative.js +3 -0
  336. package/Libraries/Renderer/shims/ReactNativeTypes.js +21 -15
  337. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +5 -0
  338. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -0
  339. package/Libraries/Settings/NativeSettingsManager.js +0 -2
  340. package/Libraries/Settings/RCTSettingsPlugins.mm +4 -3
  341. package/Libraries/Settings/React-RCTSettings.podspec +2 -2
  342. package/Libraries/Settings/Settings.ios.js +4 -2
  343. package/Libraries/Share/NativeShareModule.js +0 -2
  344. package/Libraries/Share/Share.js +0 -2
  345. package/Libraries/Storage/AsyncStorage.js +1 -2
  346. package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -2
  347. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -2
  348. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +0 -2
  349. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +16 -3
  350. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +8 -3
  351. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +2 -2
  352. package/Libraries/StyleSheet/Rect.js +0 -2
  353. package/Libraries/StyleSheet/StyleSheet.js +3 -5
  354. package/Libraries/StyleSheet/normalizeColor.js +2 -4
  355. package/Libraries/StyleSheet/processColorArray.js +16 -6
  356. package/Libraries/StyleSheet/processTransform.js +6 -6
  357. package/Libraries/StyleSheet/splitLayoutProps.js +0 -4
  358. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +1 -1
  359. package/Libraries/Text/React-RCTText.podspec +2 -2
  360. package/Libraries/Text/Text.js +187 -235
  361. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +0 -2
  362. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +12 -2
  363. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +10 -12
  364. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
  365. package/Libraries/Text/TextNativeComponent.js +0 -2
  366. package/Libraries/Text/TextProps.js +7 -7
  367. package/Libraries/TurboModule/RCTExport.js +1 -1
  368. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -5
  369. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +0 -2
  370. package/Libraries/TypeSafety/RCTTypeSafety.podspec +3 -3
  371. package/Libraries/Types/CoreEventTypes.js +0 -2
  372. package/Libraries/{Components/Picker/PickerAndroid.ios.js → Types/RootTagTypes.js} +2 -3
  373. package/Libraries/UTFSequence.js +1 -1
  374. package/Libraries/Utilities/Appearance.js +13 -7
  375. package/Libraries/Utilities/BackHandler.android.js +0 -2
  376. package/Libraries/Utilities/DebugEnvironment.js +0 -2
  377. package/Libraries/Utilities/DevSettings.js +48 -58
  378. package/Libraries/Utilities/DeviceInfo.js +0 -2
  379. package/Libraries/Utilities/Dimensions.js +19 -20
  380. package/Libraries/Utilities/FeatureDetection.js +31 -0
  381. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -2
  382. package/Libraries/Utilities/HMRClient.js +15 -10
  383. package/Libraries/Utilities/JSDevSupportModule.js +0 -2
  384. package/Libraries/Utilities/LoadingView.android.js +0 -2
  385. package/Libraries/Utilities/LoadingView.ios.js +0 -2
  386. package/Libraries/Utilities/MatrixMath.js +1 -1
  387. package/Libraries/Utilities/NativeAppearance.js +0 -2
  388. package/Libraries/Utilities/NativeDevLoadingView.js +0 -2
  389. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -2
  390. package/Libraries/Utilities/NativeDeviceInfo.js +1 -3
  391. package/Libraries/Utilities/NativeJSDevSupport.js +0 -2
  392. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +0 -2
  393. package/Libraries/Utilities/NativePlatformConstantsIOS.js +0 -2
  394. package/Libraries/Utilities/PerformanceLoggerContext.js +8 -4
  395. package/Libraries/Utilities/Platform.android.js +0 -2
  396. package/Libraries/Utilities/Platform.ios.js +0 -2
  397. package/Libraries/Utilities/ReactNativeTestTools.js +12 -19
  398. package/Libraries/Utilities/codegenNativeCommands.js +1 -3
  399. package/Libraries/Utilities/codegenNativeComponent.js +0 -2
  400. package/Libraries/Utilities/createPerformanceLogger.js +0 -2
  401. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -0
  402. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  403. package/Libraries/Utilities/deprecatedPropType.js +2 -4
  404. package/Libraries/Utilities/stringifySafe.js +1 -3
  405. package/Libraries/Utilities/useColorScheme.js +4 -4
  406. package/Libraries/Utilities/useMergeRefs.js +44 -0
  407. package/Libraries/Utilities/useRefEffect.js +45 -0
  408. package/Libraries/Utilities/useWindowDimensions.js +9 -6
  409. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +0 -2
  410. package/Libraries/Vibration/NativeVibration.js +0 -2
  411. package/Libraries/Vibration/RCTVibrationPlugins.mm +4 -3
  412. package/Libraries/Vibration/React-RCTVibration.podspec +2 -2
  413. package/Libraries/Vibration/Vibration.js +0 -2
  414. package/Libraries/WebSocket/NativeWebSocketModule.js +0 -2
  415. package/Libraries/WebSocket/WebSocket.js +12 -12
  416. package/Libraries/WebSocket/WebSocketInterceptor.js +6 -3
  417. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -0
  418. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -2
  419. package/Libraries/promiseRejectionTrackingOptions.js +2 -2
  420. package/Libraries/vendor/emitter/EventEmitter.js +36 -2
  421. package/Libraries/vendor/emitter/EventSubscription.js +19 -0
  422. package/Libraries/vendor/emitter/_EmitterSubscription.js +7 -7
  423. package/Libraries/vendor/emitter/_EventEmitter.js +28 -42
  424. package/Libraries/vendor/emitter/_EventSubscription.js +4 -2
  425. package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
  426. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -2
  427. package/README.md +5 -5
  428. package/React/Base/RCTAssert.h +29 -11
  429. package/React/Base/RCTAssert.m +52 -0
  430. package/React/Base/RCTBridge+Private.h +8 -0
  431. package/React/Base/RCTBridge.h +20 -0
  432. package/React/Base/RCTBridge.m +39 -7
  433. package/React/Base/RCTBridgeModule.h +62 -12
  434. package/React/Base/RCTBundleManager.m +78 -0
  435. package/React/Base/RCTBundleURLProvider.h +35 -9
  436. package/React/Base/RCTBundleURLProvider.mm +90 -25
  437. package/React/Base/RCTCallableJSModules.m +47 -0
  438. package/React/Base/RCTConstants.h +3 -16
  439. package/React/Base/RCTConstants.m +6 -36
  440. package/React/Base/RCTConvert.h +1 -1
  441. package/React/Base/RCTConvert.m +31 -7
  442. package/React/Base/RCTCxxConvert.h +1 -1
  443. package/React/Base/RCTDefines.h +22 -3
  444. package/React/Base/RCTEventDispatcherProtocol.h +3 -2
  445. package/React/{Views/RCTPickerManager.h → Base/RCTInitializing.h} +4 -2
  446. package/React/Base/RCTJSThread.h +29 -0
  447. package/React/Base/RCTJSThread.m +19 -0
  448. package/React/Base/RCTModuleData.h +11 -3
  449. package/React/Base/RCTModuleData.mm +66 -1
  450. package/React/Base/RCTMultipartStreamReader.m +0 -2
  451. package/React/Base/RCTRootView.h +25 -1
  452. package/React/Base/RCTRootView.m +27 -4
  453. package/React/Base/RCTTouchHandler.m +3 -0
  454. package/React/Base/RCTUtils.h +3 -0
  455. package/React/Base/RCTUtils.m +14 -7
  456. package/React/Base/RCTVersion.m +1 -1
  457. package/React/Base/Surface/RCTSurfaceStage.h +6 -11
  458. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +12 -0
  459. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +46 -2
  460. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -0
  461. package/React/CoreModules/BUCK +4 -3
  462. package/React/CoreModules/CoreModulesPlugins.mm +4 -3
  463. package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
  464. package/React/CoreModules/RCTActionSheetManager.mm +14 -5
  465. package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
  466. package/React/CoreModules/RCTDevLoadingView.mm +25 -33
  467. package/React/CoreModules/RCTDevMenu.h +0 -5
  468. package/React/CoreModules/RCTDevMenu.mm +29 -60
  469. package/React/CoreModules/RCTDevSettings.h +12 -2
  470. package/React/CoreModules/RCTDevSettings.mm +96 -53
  471. package/React/CoreModules/RCTDevSplitBundleLoader.mm +3 -8
  472. package/React/CoreModules/RCTDeviceInfo.mm +4 -5
  473. package/React/CoreModules/RCTEventDispatcher.h +2 -1
  474. package/React/CoreModules/RCTEventDispatcher.mm +23 -25
  475. package/React/CoreModules/RCTKeyboardObserver.mm +1 -1
  476. package/React/CoreModules/RCTLogBox.mm +14 -10
  477. package/React/CoreModules/RCTPerfMonitor.mm +15 -4
  478. package/React/CoreModules/RCTRedBox.mm +3 -12
  479. package/React/CoreModules/RCTSourceCode.mm +2 -1
  480. package/React/CoreModules/RCTTiming.h +2 -1
  481. package/React/CoreModules/RCTTiming.mm +1 -3
  482. package/React/CoreModules/RCTWebSocketExecutor.mm +6 -0
  483. package/React/CoreModules/React-CoreModules.podspec +3 -3
  484. package/React/CxxBridge/RCTCxxBridge.mm +93 -33
  485. package/React/CxxModule/RCTNativeModule.mm +3 -1
  486. package/React/DevSupport/RCTPackagerConnection.h +3 -0
  487. package/React/DevSupport/RCTPackagerConnection.mm +19 -8
  488. package/{Libraries → React}/FBReactNativeSpec/FBReactNativeSpec.podspec +15 -8
  489. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.h +2 -1
  490. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +5 -10
  491. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +4 -2
  492. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +1 -3
  493. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +7 -0
  494. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.h +3 -1
  495. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +62 -20
  496. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +0 -1
  497. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
  498. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +5 -0
  499. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +135 -87
  500. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +23 -0
  501. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +22 -0
  502. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +14 -9
  503. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +104 -16
  504. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +53 -17
  505. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +48 -2
  506. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
  507. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +122 -8
  508. package/React/Fabric/Mounting/RCTComponentViewFactory.h +10 -2
  509. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +83 -46
  510. package/React/Fabric/Mounting/RCTComponentViewProtocol.h +3 -0
  511. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +1 -12
  512. package/React/Fabric/Mounting/RCTMountingManager.h +22 -1
  513. package/React/Fabric/Mounting/RCTMountingManager.mm +57 -3
  514. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +4 -0
  515. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +30 -4
  516. package/React/Fabric/RCTConversions.h +3 -0
  517. package/React/Fabric/RCTScheduler.h +8 -16
  518. package/React/Fabric/RCTScheduler.mm +36 -54
  519. package/React/Fabric/RCTSurfacePresenter.h +8 -16
  520. package/React/Fabric/RCTSurfacePresenter.mm +49 -170
  521. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +4 -2
  522. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -1
  523. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  524. package/React/Fabric/Surface/RCTFabricSurface.h +2 -6
  525. package/React/Fabric/Surface/RCTFabricSurface.mm +132 -129
  526. package/React/Modules/RCTEventEmitter.h +1 -2
  527. package/React/Modules/RCTEventEmitter.m +8 -11
  528. package/React/Modules/RCTI18nUtil.h +14 -6
  529. package/React/Modules/RCTI18nUtil.m +1 -47
  530. package/React/Modules/RCTUIManager.m +8 -2
  531. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  532. package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
  533. package/React/React-RCTFabric.podspec +5 -5
  534. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +63 -0
  535. package/React/Views/RCTComponentData.h +10 -1
  536. package/React/Views/RCTComponentData.m +23 -8
  537. package/React/Views/RCTDatePickerManager.m +33 -0
  538. package/React/Views/RCTFont.mm +54 -38
  539. package/React/Views/RCTModalHostView.h +5 -1
  540. package/React/Views/RCTModalHostView.m +52 -20
  541. package/React/Views/RCTModalHostViewManager.m +5 -0
  542. package/React/Views/RCTView.h +7 -7
  543. package/React/Views/RCTView.m +32 -49
  544. package/React/Views/RCTViewManager.m +22 -4
  545. package/React/Views/RCTWeakViewHolder.h +19 -0
  546. package/React/Views/RefreshControl/RCTRefreshControl.m +26 -0
  547. package/React/Views/RefreshControl/RCTRefreshControlManager.m +1 -0
  548. package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
  549. package/React/Views/ScrollView/RCTScrollView.h +1 -0
  550. package/React/Views/ScrollView/RCTScrollView.m +123 -36
  551. package/React/Views/ScrollView/RCTScrollViewManager.m +4 -7
  552. package/React/Views/UIView+React.m +2 -11
  553. package/React/third-party.xcconfig +1 -1
  554. package/React-Core.podspec +5 -4
  555. package/React.podspec +2 -2
  556. package/ReactAndroid/Android-prebuilt.mk +19 -3
  557. package/ReactAndroid/README.md +2 -2
  558. package/ReactAndroid/build.gradle +137 -25
  559. package/ReactAndroid/gradle.properties +7 -5
  560. package/ReactAndroid/src/androidTest/buck-runner/BUCK +1 -0
  561. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
  562. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
  563. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
  564. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/ReactIdleDetectionUtil.java +1 -1
  565. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
  566. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -2
  567. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
  568. package/ReactAndroid/src/androidTest/js/BUCK +26 -0
  569. package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -12
  570. package/ReactAndroid/src/androidTest/js/UIManagerTestModule.js +7 -6
  571. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
  572. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
  573. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
  574. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
  575. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +2 -2
  576. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +1 -0
  577. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +2 -1
  578. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +3 -2
  579. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
  580. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +5 -0
  581. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
  582. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +184 -92
  583. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +37 -1
  584. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +21 -1
  585. package/ReactAndroid/src/main/java/com/facebook/react/{turbomodule/core/ReactPackageTurboModuleManagerDelegate.java → ReactPackageTurboModuleManagerDelegate.java} +2 -3
  586. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +40 -28
  587. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
  588. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +10 -2
  589. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +5 -5
  590. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
  591. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +7 -5
  592. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
  593. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -3
  594. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +4 -1
  595. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleRegistry.java +4 -0
  596. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
  597. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +1 -1
  598. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +8 -1
  599. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +26 -0
  600. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +46 -8
  601. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +2 -3
  602. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
  603. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.java +7 -3
  604. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
  605. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
  607. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
  608. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +3 -2
  609. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +29 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +347 -0
  611. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +33 -0
  612. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +39 -0
  613. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +34 -0
  614. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/OnLoad.cpp +15 -0
  615. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.cpp +76 -0
  616. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.h +51 -0
  617. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +2 -1
  618. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +61 -29
  619. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
  620. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +275 -0
  621. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
  622. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java +2 -2
  623. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
  624. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +189 -352
  625. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +4 -73
  626. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +13 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +1 -1
  628. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
  629. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{ReactInstanceManagerDevHelper.java → ReactInstanceDevHelper.java} +3 -2
  630. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxHandler.java +2 -16
  631. package/ReactAndroid/src/main/java/com/facebook/react/{modules/datepicker/DatePickerMode.java → devsupport/interfaces/BundleLoadCallback.java} +3 -6
  632. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +6 -1
  633. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorType.java +23 -0
  634. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +1 -1
  635. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +15 -1
  636. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
  637. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +9 -64
  638. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +317 -393
  639. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +40 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandler.java +50 -0
  641. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.java +131 -0
  642. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +36 -1
  643. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +14 -2
  644. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +5 -3
  645. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.cpp +69 -0
  646. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.h +40 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +4 -4
  648. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +308 -103
  649. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +33 -8
  650. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +3 -6
  651. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +22 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +4 -0
  653. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/OnLoad.cpp +2 -0
  654. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.cpp +16 -2
  655. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.h +3 -1
  656. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp +122 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.h +68 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +414 -0
  659. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +134 -71
  660. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +247 -40
  661. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +4 -6
  662. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +13 -6
  663. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
  664. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
  665. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +3 -3
  666. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +21 -4
  667. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
  668. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
  669. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +11 -1
  670. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
  671. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
  672. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +35 -7
  673. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
  674. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BUCK +1 -1
  675. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
  676. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
  677. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
  679. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
  680. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +7 -4
  681. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +1 -1
  682. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
  683. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
  684. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +19 -8
  685. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
  686. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +12 -4
  687. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.java +10 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +2 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +19 -13
  690. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
  691. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
  692. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
  693. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
  694. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
  695. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +1 -1
  696. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +1 -18
  697. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
  698. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
  699. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
  700. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
  701. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +1 -1
  702. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
  703. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
  704. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  705. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
  706. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
  707. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
  708. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
  709. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/Android.mk +1 -1
  710. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/BUCK +1 -1
  711. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -2
  712. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -9
  713. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +0 -1
  714. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +9 -6
  715. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java +3 -0
  716. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModule.java +4 -4
  717. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +2 -2
  718. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +2 -2
  719. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +40 -7
  720. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +10 -2
  721. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +3 -0
  722. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +15 -1
  723. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.java +17 -0
  724. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverManager.java +41 -0
  725. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
  726. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +2 -11
  727. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +14 -5
  728. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +4 -13
  729. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +10 -13
  730. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +17 -6
  731. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
  732. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -10
  733. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingProhibitedView.java +26 -0
  734. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +5 -1
  735. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
  736. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.java +18 -0
  737. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/StateWrapper.java +21 -1
  738. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
  739. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -8
  740. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +1 -1
  741. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +29 -20
  742. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +15 -17
  743. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +1 -2
  744. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +13 -6
  745. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +7 -4
  746. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +2 -2
  747. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.java +26 -0
  748. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
  749. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ContentSizeChangeEvent.java +8 -3
  750. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +100 -8
  751. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +236 -0
  752. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +8 -0
  753. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +21 -7
  754. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +58 -4
  755. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/ViewProps.java +10 -2
  756. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +37 -0
  757. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +41 -0
  758. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.cpp +77 -0
  759. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.h +54 -0
  760. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/OnLoad.cpp +16 -0
  761. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
  762. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +12 -4
  763. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +9 -10
  764. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +9 -10
  765. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +7 -13
  766. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +7 -13
  767. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java +2 -16
  768. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +10 -5
  769. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +2 -1
  770. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +12 -3
  771. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +23 -12
  772. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.java +12 -4
  773. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.java +12 -4
  774. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
  775. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
  776. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerView.java +29 -6
  777. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +184 -24
  778. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +9 -4
  779. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +109 -12
  780. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +18 -3
  781. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +9 -4
  782. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +37 -20
  783. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
  784. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -5
  785. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +5 -7
  786. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +13 -16
  787. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
  788. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.java +12 -4
  789. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +2 -1
  790. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
  791. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +13 -0
  792. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +9 -13
  793. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +6 -10
  794. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +1 -0
  795. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +6 -8
  796. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactClickableSpan.java +2 -1
  797. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +59 -44
  798. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
  799. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +32 -4
  800. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +19 -0
  801. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +48 -1
  802. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +41 -59
  803. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +230 -139
  804. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +45 -20
  805. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +616 -0
  806. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TypefaceStyle.java +72 -0
  807. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
  808. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +3 -13
  809. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +19 -8
  810. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
  811. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +3 -13
  812. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +3 -13
  813. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +3 -13
  814. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEvent.java +3 -13
  815. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +8 -18
  816. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +9 -20
  817. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +126 -63
  818. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +3 -13
  819. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +8 -18
  820. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
  821. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
  822. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +49 -2
  823. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +3 -1
  824. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.java +11 -4
  825. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +13 -7
  826. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +24 -2
  827. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +151 -0
  828. package/ReactAndroid/src/main/jni/first-party/fb/BUCK +4 -0
  829. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -7
  830. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +8 -4
  831. package/ReactAndroid/src/main/jni/react/jni/Android.mk +6 -3
  832. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
  833. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +61 -0
  834. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +8 -0
  835. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
  836. package/{ReactCommon/react/renderer/components/picker/iospicker/primitives.h → ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h} +6 -10
  837. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
  838. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
  839. package/{ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerComponentDescriptor.h → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +8 -7
  840. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
  841. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  842. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -94
  843. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +0 -30
  844. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +1 -0
  845. package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +7 -2
  846. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/jump_arm_aapcs_elf_gas.S +86 -0
  847. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/make_arm_aapcs_elf_gas.S +79 -0
  848. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/ontop_arm_aapcs_elf_gas.S +91 -0
  849. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/jump_arm64_aapcs_elf_gas.S +114 -0
  850. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/make_arm64_aapcs_elf_gas.S +85 -0
  851. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/ontop_arm64_aapcs_elf_gas.S +113 -0
  852. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/jump_i386_sysv_elf_gas.S +78 -0
  853. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/make_i386_sysv_elf_gas.S +106 -0
  854. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/ontop_i386_sysv_elf_gas.S +85 -0
  855. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/jump_x86_64_sysv_elf_gas.S +76 -0
  856. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/make_x86_64_sysv_elf_gas.S +81 -0
  857. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/ontop_x86_64_sysv_elf_gas.S +79 -0
  858. package/ReactAndroid/src/main/jni/third-party/fmt/Android.mk +15 -0
  859. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +36 -16
  860. package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +36 -0
  861. package/ReactAndroid/src/main/jni/third-party/libevent/evconfig-private.h +49 -0
  862. package/{third-party-podspecs/libevent.podspec → ReactAndroid/src/main/jni/third-party/libevent/event-config.h} +141 -366
  863. package/ReactAndroid/src/main/libraries/fbjni/BUCK +2 -2
  864. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +26 -26
  865. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +5 -5
  866. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -1
  867. package/ReactAndroid/src/main/res/views/uimanager/values/strings_unlocalized.xml +4 -8
  868. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
  869. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +2 -2
  870. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +29 -9
  871. package/ReactAndroid/src/main/third-party/java/okio/BUCK +15 -5
  872. package/ReactAndroid/src/main/third-party/java/robolectric/{4.4/BUCK → BUCK} +0 -0
  873. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
  874. package/ReactAndroid/src/main/third-party/kotlin/BUCK +91 -0
  875. package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +8 -3
  876. package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedNodeTraversalTest.java +1 -1
  877. package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +1 -1
  878. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
  879. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/JSDebuggerWebSocketClientTest.java +3 -1
  880. package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
  881. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
  882. package/ReactAndroid/src/test/java/com/facebook/react/modules/dialog/DialogModuleTest.java +1 -1
  883. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkingModuleTest.java +10 -10
  884. package/ReactAndroid/src/test/java/com/facebook/react/modules/timing/TimingModuleTest.java +1 -1
  885. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BaseViewManagerTest.java +32 -0
  886. package/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.java +8 -0
  887. package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +4 -0
  888. package/ReactCommon/React-Fabric.podspec +58 -14
  889. package/ReactCommon/ReactCommon.podspec +8 -3
  890. package/ReactCommon/better/Android.mk +1 -1
  891. package/ReactCommon/better/BUCK +2 -2
  892. package/ReactCommon/callinvoker/Android.mk +1 -1
  893. package/ReactCommon/callinvoker/BUCK +3 -3
  894. package/ReactCommon/callinvoker/React-callinvoker.podspec +3 -3
  895. package/ReactCommon/cxxreact/Android.mk +2 -1
  896. package/ReactCommon/cxxreact/BUCK +2 -4
  897. package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
  898. package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
  899. package/ReactCommon/cxxreact/Instance.cpp +21 -1
  900. package/ReactCommon/cxxreact/MethodCall.cpp +2 -2
  901. package/ReactCommon/cxxreact/ModuleRegistry.cpp +5 -0
  902. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +0 -21
  903. package/ReactCommon/cxxreact/NativeToJsBridge.h +0 -6
  904. package/ReactCommon/cxxreact/React-cxxreact.podspec +5 -4
  905. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  906. package/ReactCommon/hermes/React-hermes.podspec +5 -5
  907. package/ReactCommon/hermes/executor/Android.mk +4 -4
  908. package/ReactCommon/hermes/inspector/Android.mk +1 -2
  909. package/ReactCommon/hermes/inspector/BUCK +8 -5
  910. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +115 -0
  911. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +215 -1
  912. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +115 -1
  913. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +144 -0
  914. package/ReactCommon/hermes/inspector/tools/message_types.txt +4 -0
  915. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +1 -3
  916. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +1 -3
  917. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +1 -3
  918. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +1 -3
  919. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +1 -3
  920. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +1 -3
  921. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +1 -3
  922. package/ReactCommon/hermes/inspector/tools/msggen/package.json +8 -5
  923. package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -2
  924. package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -2
  925. package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -2
  926. package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -2
  927. package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -2
  928. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -2
  929. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +1 -2
  930. package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +1 -3
  931. package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -2
  932. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +1 -3
  933. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +2246 -1419
  934. package/ReactCommon/jsi/Android.mk +1 -1
  935. package/ReactCommon/jsi/BUCK +1 -3
  936. package/ReactCommon/jsi/JSCRuntime.cpp +7 -0
  937. package/ReactCommon/jsi/React-jsi.podspec +4 -4
  938. package/ReactCommon/jsi/jsi/CMakeLists.txt +1 -1
  939. package/ReactCommon/jsi/jsi/decorator.h +15 -0
  940. package/ReactCommon/jsi/jsi/instrumentation.h +13 -0
  941. package/ReactCommon/jsi/jsi/jsi.cpp +3 -0
  942. package/ReactCommon/jsi/jsi/jsi.h +31 -2
  943. package/ReactCommon/jsi/jsi/jsilib-posix.cpp +1 -11
  944. package/ReactCommon/jsiexecutor/Android.mk +2 -2
  945. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -3
  946. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +36 -3
  947. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +2 -0
  948. package/ReactCommon/jsinspector/BUCK +2 -0
  949. package/ReactCommon/jsinspector/React-jsinspector.podspec +1 -1
  950. package/ReactCommon/logger/Android.mk +23 -0
  951. package/ReactCommon/logger/BUCK +43 -0
  952. package/ReactCommon/logger/React-logger.podspec +40 -0
  953. package/ReactCommon/logger/react_native_log.cpp +52 -0
  954. package/ReactCommon/logger/react_native_log.h +33 -0
  955. package/ReactCommon/react/config/Android.mk +1 -1
  956. package/ReactCommon/react/config/BUCK +1 -1
  957. package/ReactCommon/react/debug/Android.mk +31 -0
  958. package/ReactCommon/react/debug/BUCK +69 -0
  959. package/ReactCommon/react/debug/flags.h +19 -0
  960. package/ReactCommon/react/debug/react_native_assert.cpp +45 -0
  961. package/ReactCommon/react/debug/react_native_assert.h +64 -0
  962. package/ReactCommon/react/nativemodule/core/Android.mk +3 -3
  963. package/ReactCommon/react/nativemodule/core/BUCK +3 -3
  964. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
  965. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
  966. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +1 -1
  967. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
  968. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
  969. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +55 -1
  970. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +76 -42
  971. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -1
  972. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.h +24 -0
  973. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.mm +28 -0
  974. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -16
  975. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +79 -32
  976. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +0 -7
  977. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +123 -127
  978. package/ReactCommon/react/nativemodule/samples/BUCK +4 -5
  979. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +2 -2
  980. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboCxxModule.mm +12 -0
  981. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboModule.mm +0 -2
  982. package/ReactCommon/react/renderer/animations/Android.mk +3 -2
  983. package/ReactCommon/react/renderer/animations/BUCK +6 -3
  984. package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
  985. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +11 -66
  986. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -13
  987. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +1117 -1147
  988. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +98 -243
  989. package/ReactCommon/react/renderer/animations/conversions.h +212 -0
  990. package/ReactCommon/react/renderer/animations/primitives.h +104 -0
  991. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +544 -0
  992. package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
  993. package/ReactCommon/react/renderer/animations/utils.h +80 -0
  994. package/ReactCommon/react/renderer/attributedstring/Android.mk +4 -2
  995. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
  996. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +28 -6
  997. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +2 -2
  998. package/ReactCommon/react/renderer/attributedstring/BUCK +9 -4
  999. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
  1000. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
  1001. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
  1002. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
  1003. package/ReactCommon/react/renderer/attributedstring/conversions.h +718 -305
  1004. package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
  1005. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +105 -0
  1006. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +17 -20
  1007. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +7 -12
  1008. package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +13 -15
  1009. package/ReactCommon/react/renderer/componentregistry/Android.mk +3 -2
  1010. package/ReactCommon/react/renderer/componentregistry/BUCK +5 -4
  1011. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
  1012. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
  1013. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +17 -67
  1014. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
  1015. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +73 -0
  1016. package/ReactCommon/react/renderer/{components/picker/iospicker/PickerShadowNode.cpp → componentregistry/componentNameByReactViewName.h} +7 -2
  1017. package/ReactCommon/react/renderer/componentregistry/native/Android.mk +29 -0
  1018. package/ReactCommon/react/renderer/componentregistry/native/BUCK +58 -0
  1019. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +68 -0
  1020. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.h +61 -0
  1021. package/ReactCommon/react/renderer/components/image/Android.mk +5 -3
  1022. package/ReactCommon/react/renderer/components/image/BUCK +7 -3
  1023. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +3 -2
  1024. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
  1025. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
  1026. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -1
  1027. package/ReactCommon/react/renderer/components/image/conversions.h +29 -18
  1028. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +4 -3
  1029. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryComponentDescriptor.h +5 -3
  1030. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
  1031. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +1 -1
  1032. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +17 -4
  1033. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +5 -10
  1034. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
  1035. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1036. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +69 -12
  1037. package/ReactCommon/react/renderer/components/modal/Android.mk +4 -3
  1038. package/ReactCommon/react/renderer/components/modal/BUCK +6 -2
  1039. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +5 -3
  1040. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +6 -0
  1041. package/ReactCommon/react/renderer/components/progressbar/Android.mk +3 -3
  1042. package/ReactCommon/react/renderer/components/progressbar/BUCK +4 -3
  1043. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +4 -2
  1044. package/ReactCommon/react/renderer/components/root/Android.mk +4 -3
  1045. package/ReactCommon/react/renderer/components/root/BUCK +4 -3
  1046. package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
  1047. package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
  1048. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +7 -1
  1049. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  1050. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +35 -3
  1051. package/ReactCommon/react/renderer/components/safeareaview/BUCK +4 -3
  1052. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewComponentDescriptor.h +5 -3
  1053. package/ReactCommon/react/renderer/components/scrollview/Android.mk +5 -3
  1054. package/ReactCommon/react/renderer/components/scrollview/BUCK +6 -3
  1055. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +59 -6
  1056. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +10 -5
  1057. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +23 -2
  1058. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.h +1 -0
  1059. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +1 -1
  1060. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +12 -2
  1061. package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
  1062. package/ReactCommon/react/renderer/components/slider/Android.mk +4 -3
  1063. package/ReactCommon/react/renderer/components/slider/BUCK +5 -3
  1064. package/ReactCommon/react/renderer/components/slider/SliderComponentDescriptor.h +4 -2
  1065. package/ReactCommon/react/renderer/components/slider/SliderState.h +8 -0
  1066. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.cpp +3 -1
  1067. package/ReactCommon/react/renderer/components/switch/Android.mk +3 -3
  1068. package/ReactCommon/react/renderer/components/switch/BUCK +3 -3
  1069. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +4 -2
  1070. package/ReactCommon/react/renderer/components/text/Android.mk +5 -3
  1071. package/ReactCommon/react/renderer/components/text/BUCK +10 -4
  1072. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
  1073. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
  1074. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +2 -3
  1075. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +5 -24
  1076. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +15 -6
  1077. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
  1078. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +9 -16
  1079. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +7 -6
  1080. package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +4 -0
  1081. package/ReactCommon/react/renderer/components/text/ParagraphState.h +8 -3
  1082. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
  1083. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
  1084. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +36 -2
  1085. package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
  1086. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
  1087. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +23 -0
  1088. package/ReactCommon/react/renderer/components/text/conversions.h +22 -0
  1089. package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +8 -5
  1090. package/ReactCommon/react/renderer/components/textinput/Android.mk +5 -3
  1091. package/ReactCommon/react/renderer/components/textinput/BUCK +8 -4
  1092. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +8 -5
  1093. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
  1094. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
  1095. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +2 -8
  1096. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +5 -5
  1097. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -3
  1098. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +5 -8
  1099. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +5 -4
  1100. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputComponentDescriptor.h +4 -2
  1101. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
  1102. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
  1103. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +3 -2
  1104. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.h +6 -6
  1105. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.h +2 -0
  1106. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +19 -7
  1107. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
  1108. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
  1109. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +4 -3
  1110. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +4 -3
  1111. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +8 -3
  1112. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
  1113. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
  1114. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +28 -0
  1115. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
  1116. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1117. package/ReactCommon/react/renderer/components/view/Android.mk +6 -4
  1118. package/ReactCommon/react/renderer/components/view/BUCK +5 -3
  1119. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +19 -5
  1120. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -1
  1121. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
  1122. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
  1123. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
  1124. package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
  1125. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -8
  1126. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -19
  1127. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
  1128. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +147 -78
  1129. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +4 -9
  1130. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  1131. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
  1132. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +99 -24
  1133. package/ReactCommon/react/renderer/components/view/conversions.h +89 -45
  1134. package/ReactCommon/react/renderer/components/view/primitives.h +5 -4
  1135. package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
  1136. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +11 -2
  1137. package/ReactCommon/react/renderer/core/Android.mk +4 -2
  1138. package/ReactCommon/react/renderer/core/BUCK +7 -4
  1139. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -34
  1140. package/ReactCommon/react/renderer/core/BatchedEventQueue.h +2 -9
  1141. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +6 -3
  1142. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +28 -27
  1143. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +11 -5
  1144. package/ReactCommon/react/renderer/core/ConcreteState.h +7 -3
  1145. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +35 -0
  1146. package/ReactCommon/react/renderer/{components/picker/iospicker/PickerState.h → core/DynamicPropsUtilities.h} +5 -4
  1147. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +9 -15
  1148. package/ReactCommon/react/renderer/core/EventDispatcher.h +5 -10
  1149. package/ReactCommon/react/renderer/core/EventEmitter.cpp +22 -12
  1150. package/ReactCommon/react/renderer/core/EventEmitter.h +7 -2
  1151. package/ReactCommon/react/renderer/core/EventPipe.h +2 -0
  1152. package/ReactCommon/react/renderer/core/EventPriority.h +1 -1
  1153. package/ReactCommon/react/renderer/core/EventQueue.cpp +39 -36
  1154. package/ReactCommon/react/renderer/core/EventQueue.h +14 -8
  1155. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +82 -0
  1156. package/ReactCommon/react/renderer/core/EventQueueProcessor.h +36 -0
  1157. package/ReactCommon/react/renderer/core/EventTarget.cpp +4 -2
  1158. package/ReactCommon/react/renderer/core/LayoutConstraints.h +6 -0
  1159. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +65 -0
  1160. package/ReactCommon/react/renderer/core/LayoutMetrics.h +35 -2
  1161. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +14 -6
  1162. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +1 -1
  1163. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +2 -7
  1164. package/ReactCommon/react/renderer/core/Props.cpp +10 -2
  1165. package/ReactCommon/react/renderer/core/Props.h +6 -1
  1166. package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
  1167. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1168. package/ReactCommon/react/renderer/core/RawEvent.h +40 -3
  1169. package/ReactCommon/react/renderer/core/RawProps.cpp +5 -3
  1170. package/ReactCommon/react/renderer/core/RawProps.h +3 -1
  1171. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +18 -7
  1172. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +8 -6
  1173. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +10 -7
  1174. package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
  1175. package/ReactCommon/react/renderer/core/RawValue.h +9 -7
  1176. package/ReactCommon/react/renderer/core/ReactEventPriority.h +43 -0
  1177. package/ReactCommon/react/renderer/core/ReactPrimitives.h +34 -2
  1178. package/ReactCommon/react/renderer/core/Sealable.cpp +4 -3
  1179. package/ReactCommon/react/renderer/core/Sealable.h +5 -1
  1180. package/ReactCommon/react/renderer/core/ShadowNode.cpp +42 -13
  1181. package/ReactCommon/react/renderer/core/ShadowNode.h +14 -4
  1182. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +2 -1
  1183. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +2 -1
  1184. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +17 -1
  1185. package/ReactCommon/react/renderer/core/State.h +3 -0
  1186. package/ReactCommon/react/renderer/core/StateData.h +3 -0
  1187. package/ReactCommon/react/renderer/core/propsConversions.h +19 -9
  1188. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
  1189. package/ReactCommon/react/renderer/core/tests/ConcreteShadowNodeTest.cpp +1 -1
  1190. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +66 -0
  1191. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +134 -0
  1192. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +99 -30
  1193. package/ReactCommon/react/renderer/core/tests/TestComponent.h +11 -7
  1194. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +31 -0
  1195. package/ReactCommon/react/renderer/debug/Android.mk +1 -1
  1196. package/ReactCommon/react/renderer/debug/BUCK +4 -6
  1197. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +11 -25
  1198. package/ReactCommon/react/renderer/debug/flags.h +50 -0
  1199. package/ReactCommon/react/renderer/element/BUCK +3 -3
  1200. package/ReactCommon/react/renderer/graphics/Android.mk +7 -3
  1201. package/ReactCommon/react/renderer/graphics/BUCK +16 -4
  1202. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -3
  1203. package/ReactCommon/react/renderer/graphics/Transform.cpp +5 -4
  1204. package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
  1205. package/ReactCommon/react/renderer/graphics/conversions.h +102 -44
  1206. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
  1207. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +14 -6
  1208. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +2 -0
  1209. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
  1210. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +14 -6
  1211. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +44 -1
  1212. package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
  1213. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
  1214. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
  1215. package/ReactCommon/react/renderer/imagemanager/Android.mk +3 -2
  1216. package/ReactCommon/react/renderer/imagemanager/BUCK +5 -4
  1217. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +5 -4
  1218. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +8 -6
  1219. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  1220. package/ReactCommon/react/renderer/leakchecker/Android.mk +29 -0
  1221. package/ReactCommon/react/renderer/{components/picker/iospicker → leakchecker}/BUCK +8 -12
  1222. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +60 -0
  1223. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +39 -0
  1224. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +37 -0
  1225. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.h +39 -0
  1226. package/ReactCommon/react/renderer/mapbuffer/Android.mk +9 -6
  1227. package/ReactCommon/react/renderer/mapbuffer/BUCK +14 -5
  1228. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +131 -4
  1229. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +40 -4
  1230. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +226 -0
  1231. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +94 -0
  1232. package/ReactCommon/react/renderer/mapbuffer/primitives.h +91 -0
  1233. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +141 -5
  1234. package/ReactCommon/react/renderer/mounting/Android.mk +5 -2
  1235. package/ReactCommon/react/renderer/mounting/BUCK +6 -3
  1236. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +794 -620
  1237. package/ReactCommon/react/renderer/mounting/Differentiator.h +31 -4
  1238. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -2
  1239. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -4
  1240. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  1241. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +2 -2
  1242. package/ReactCommon/react/renderer/mounting/MountingTransactionMetadata.h +1 -1
  1243. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +19 -15
  1244. package/ReactCommon/react/renderer/mounting/ShadowTree.h +11 -4
  1245. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +3 -1
  1246. package/ReactCommon/react/renderer/mounting/ShadowTreeRevision.h +1 -1
  1247. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +15 -1
  1248. package/ReactCommon/react/renderer/mounting/ShadowView.h +45 -2
  1249. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +28 -0
  1250. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +17 -0
  1251. package/ReactCommon/react/renderer/mounting/StubView.cpp +21 -2
  1252. package/ReactCommon/react/renderer/mounting/StubView.h +3 -0
  1253. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +204 -77
  1254. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +1 -1
  1255. package/ReactCommon/react/renderer/mounting/TelemetryController.h +1 -1
  1256. package/ReactCommon/react/renderer/mounting/stubs.cpp +5 -4
  1257. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +13 -2
  1258. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +232 -9
  1259. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +18 -8
  1260. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +28 -0
  1261. package/ReactCommon/react/renderer/runtimescheduler/BUCK +77 -0
  1262. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +118 -0
  1263. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +105 -0
  1264. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +171 -0
  1265. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +44 -0
  1266. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
  1267. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
  1268. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerComponentDescriptor.h → runtimescheduler/RuntimeSchedulerClock.h} +8 -5
  1269. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +65 -0
  1270. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +37 -0
  1271. package/ReactCommon/react/renderer/runtimescheduler/Task.h +48 -0
  1272. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +41 -0
  1273. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +472 -0
  1274. package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +46 -0
  1275. package/ReactCommon/react/renderer/runtimescheduler/tests/StubClock.h +41 -0
  1276. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +38 -0
  1277. package/ReactCommon/react/renderer/scheduler/Android.mk +4 -2
  1278. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +16 -13
  1279. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +4 -4
  1280. package/ReactCommon/react/renderer/scheduler/BUCK +5 -3
  1281. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.cpp → scheduler/InspectorData.h} +10 -2
  1282. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +81 -132
  1283. package/ReactCommon/react/renderer/scheduler/Scheduler.h +32 -35
  1284. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +12 -10
  1285. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +2 -0
  1286. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +317 -0
  1287. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +209 -0
  1288. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +104 -0
  1289. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +67 -0
  1290. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +14 -5
  1291. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +4 -1
  1292. package/ReactCommon/react/renderer/telemetry/Android.mk +31 -0
  1293. package/ReactCommon/react/renderer/telemetry/BUCK +84 -0
  1294. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.cpp +5 -0
  1295. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.h +3 -1
  1296. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +163 -0
  1297. package/ReactCommon/react/renderer/{mounting → telemetry}/TransactionTelemetry.h +11 -0
  1298. package/ReactCommon/react/renderer/telemetry/tests/TransactionTelemetryTest.cpp +176 -0
  1299. package/ReactCommon/react/renderer/templateprocessor/Android.mk +1 -1
  1300. package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -3
  1301. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +5 -5
  1302. package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +5 -2
  1303. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +5 -3
  1304. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +12 -9
  1305. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +132 -3
  1306. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +17 -1
  1307. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
  1308. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
  1309. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/TextLayoutManager.mm +25 -3
  1310. package/ReactCommon/react/renderer/{components/picker → timeline}/BUCK +14 -28
  1311. package/ReactCommon/react/renderer/timeline/Timeline.cpp +120 -0
  1312. package/ReactCommon/react/renderer/timeline/Timeline.h +63 -0
  1313. package/ReactCommon/react/renderer/timeline/TimelineController.cpp +77 -0
  1314. package/ReactCommon/react/renderer/timeline/TimelineController.h +80 -0
  1315. package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +25 -0
  1316. package/ReactCommon/react/renderer/timeline/TimelineFrame.h +46 -0
  1317. package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +97 -0
  1318. package/ReactCommon/react/renderer/timeline/TimelineHandler.h +80 -0
  1319. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +30 -0
  1320. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.h +36 -0
  1321. package/ReactCommon/react/renderer/uimanager/Android.mk +4 -2
  1322. package/ReactCommon/react/renderer/uimanager/BUCK +5 -3
  1323. package/ReactCommon/react/renderer/uimanager/LayoutAnimationStatusDelegate.h +2 -4
  1324. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +121 -36
  1325. package/ReactCommon/react/renderer/uimanager/UIManager.h +40 -21
  1326. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +3 -5
  1327. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +201 -77
  1328. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +29 -6
  1329. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +2 -4
  1330. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +16 -15
  1331. package/ReactCommon/react/renderer/uimanager/primitives.h +57 -9
  1332. package/ReactCommon/react/test_utils/BUCK +57 -0
  1333. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/Entropy.h +4 -0
  1334. package/ReactCommon/react/test_utils/MockClock.h +29 -0
  1335. package/ReactCommon/react/{renderer/components/picker/iospicker/PickerEventEmitter.h → test_utils/MockSurfaceHandler.h} +6 -9
  1336. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/shadowTreeGeneration.h +61 -5
  1337. package/ReactCommon/react/utils/Android.mk +8 -3
  1338. package/ReactCommon/react/utils/BUCK +9 -2
  1339. package/ReactCommon/react/utils/CalledOnceMovableOnlyFunction.h +6 -4
  1340. package/ReactCommon/react/utils/ContextContainer.h +4 -24
  1341. package/ReactCommon/react/utils/LayoutManager.h +56 -0
  1342. package/ReactCommon/react/utils/ManagedObjectWrapper.h +3 -1
  1343. package/ReactCommon/react/utils/RunLoopObserver.cpp +5 -4
  1344. package/ReactCommon/reactperflogger/Android.mk +1 -1
  1345. package/ReactCommon/reactperflogger/BUCK +1 -1
  1346. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -2
  1347. package/ReactCommon/runtimeexecutor/Android.mk +1 -1
  1348. package/ReactCommon/runtimeexecutor/BUCK +2 -2
  1349. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +2 -2
  1350. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +14 -2
  1351. package/ReactCommon/yoga/Yoga.podspec +1 -1
  1352. package/ReactCommon/yoga/yoga/BitUtils.h +3 -2
  1353. package/ReactCommon/yoga/yoga/Utils.cpp +1 -1
  1354. package/ReactCommon/yoga/yoga/YGNode.cpp +111 -110
  1355. package/ReactCommon/yoga/yoga/YGNode.h +11 -0
  1356. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +7 -4
  1357. package/ReactCommon/yoga/yoga/Yoga-internal.h +4 -5
  1358. package/ReactCommon/yoga/yoga/Yoga.cpp +114 -159
  1359. package/ReactCommon/yoga/yoga/Yoga.h +1 -1
  1360. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar +0 -0
  1361. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.md5 +1 -0
  1362. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha1 +1 -0
  1363. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha256 +1 -0
  1364. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha512 +1 -0
  1365. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module +272 -0
  1366. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.md5 +1 -0
  1367. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha1 +1 -0
  1368. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha256 +1 -0
  1369. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha512 +1 -0
  1370. package/android/com/facebook/react/react-native/{0.0.0-201c10733/react-native-0.0.0-201c10733.pom → 0.0.0-268efb102/react-native-0.0.0-268efb102.pom} +24 -13
  1371. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.md5 +1 -0
  1372. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha1 +1 -0
  1373. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha256 +1 -0
  1374. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha512 +1 -0
  1375. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -3
  1376. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  1377. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  1378. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -0
  1379. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -0
  1380. package/flow/HermesInternalType.js +114 -0
  1381. package/flow/global.js +68 -0
  1382. package/flow-typed/npm/react-test-renderer_v16.x.x.js +79 -0
  1383. package/index.js +122 -60
  1384. package/jest/preprocessor.js +75 -7
  1385. package/jest/renderer.js +3 -9
  1386. package/jest/setup.js +21 -15
  1387. package/package.json +61 -21
  1388. package/react.gradle +47 -25
  1389. package/scripts/find-node.sh +39 -0
  1390. package/scripts/generate-specs-cli.js +20 -2
  1391. package/scripts/ios-configure-glog.sh +4 -0
  1392. package/scripts/react-native-xcode.sh +7 -23
  1393. package/scripts/react_native_pods.rb +215 -47
  1394. package/template/_flowconfig +3 -4
  1395. package/template/_gitignore +1 -0
  1396. package/template/android/app/build.gradle +12 -7
  1397. package/template/android/app/src/main/res/values/styles.xml +0 -1
  1398. package/template/android/build.gradle +7 -8
  1399. package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  1400. package/template/android/gradle.properties +1 -1
  1401. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  1402. package/template/ios/Podfile +1 -0
  1403. package/template/package.json +4 -5
  1404. package/third-party-podspecs/DoubleConversion.podspec +1 -1
  1405. package/third-party-podspecs/RCT-Folly.podspec +31 -11
  1406. package/third-party-podspecs/boost.podspec +23 -0
  1407. package/third-party-podspecs/glog.podspec +1 -1
  1408. package/Libraries/BUCK +0 -56
  1409. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.android.js +0 -169
  1410. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.ios.js +0 -280
  1411. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -89
  1412. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  1413. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  1414. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -82
  1415. package/Libraries/Components/Picker/AndroidDialogPickerViewConfig.js +0 -30
  1416. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -69
  1417. package/Libraries/Components/Picker/Picker.js +0 -165
  1418. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -145
  1419. package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
  1420. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -164
  1421. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -72
  1422. package/Libraries/Components/Picker/RCTPickerViewConfig.js +0 -41
  1423. package/Libraries/Components/ScrollResponder.js +0 -797
  1424. package/Libraries/Components/StaticContainer.react.js +0 -51
  1425. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -35
  1426. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -26
  1427. package/Libraries/Interaction/InteractionMixin.js +0 -55
  1428. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  1429. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -100
  1430. package/Libraries/Utilities/registerGeneratedViewConfig.js +0 -36
  1431. package/Libraries/promiseRejectionIsError.js +0 -24
  1432. package/React/Base/RCTJSInvokerModule.h +0 -18
  1433. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.h +0 -19
  1434. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.mm +0 -206
  1435. package/React/Views/RCTPicker.h +0 -23
  1436. package/React/Views/RCTPicker.m +0 -122
  1437. package/React/Views/RCTPickerManager.m +0 -68
  1438. package/ReactAndroid/release.gradle +0 -87
  1439. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
  1440. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactPickerTestCase.java +0 -196
  1441. package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
  1442. package/ReactAndroid/src/androidTest/js/PickerAndroidTestModule.js +0 -89
  1443. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerImpl.java +0 -82
  1444. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
  1445. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
  1446. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -147
  1447. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
  1448. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerDelegate.java +0 -48
  1449. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerInterface.java +0 -23
  1450. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerDelegate.java +0 -48
  1451. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerInterface.java +0 -22
  1452. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/BUCK +0 -30
  1453. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDialogPickerManager.java +0 -51
  1454. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDropdownPickerManager.java +0 -50
  1455. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +0 -196
  1456. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +0 -95
  1457. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +0 -43
  1458. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +0 -97
  1459. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/events/PickerItemSelectEvent.java +0 -40
  1460. package/ReactCommon/cxxreact/re_worker_requirements +0 -6
  1461. package/ReactCommon/react/renderer/components/picker/Android.mk +0 -37
  1462. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.cpp +0 -23
  1463. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.h +0 -27
  1464. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.cpp +0 -28
  1465. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.h +0 -77
  1466. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.h +0 -29
  1467. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.cpp +0 -23
  1468. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.h +0 -27
  1469. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.cpp +0 -28
  1470. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.h +0 -77
  1471. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.cpp +0 -17
  1472. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.h +0 -29
  1473. package/ReactCommon/react/renderer/components/picker/iospicker/PickerComponentDescriptor.h +0 -26
  1474. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.cpp +0 -23
  1475. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.cpp +0 -46
  1476. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.h +0 -36
  1477. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.h +0 -33
  1478. package/ReactCommon/react/renderer/components/picker/iospicker/conversions.h +0 -47
  1479. package/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp +0 -142
  1480. package/ReactCommon/react/renderer/mounting/tests/TransactionTelemetryTest.cpp +0 -125
  1481. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar +0 -0
  1482. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar.md5 +0 -1
  1483. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar.sha1 +0 -1
  1484. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.pom.md5 +0 -1
  1485. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.pom.sha1 +0 -1
  1486. package/scripts/generate-specs.sh +0 -91
@@ -2,11 +2,16 @@ load(
2
2
  "//tools/build_defs/oss:rn_defs.bzl",
3
3
  "ANDROID",
4
4
  "fb_xplat_cxx_test",
5
+ "get_apple_compiler_flags",
6
+ "get_apple_inspector_flags",
7
+ "get_preprocessor_flags_for_build_mode",
5
8
  "react_native_xplat_target",
6
9
  "rn_xplat_cxx_library",
7
10
  "subdir_glob",
8
11
  )
9
12
 
13
+ APPLE_COMPILER_FLAGS = get_apple_compiler_flags()
14
+
10
15
  rn_xplat_cxx_library(
11
16
  name = "mapbuffer",
12
17
  srcs = glob(
@@ -27,15 +32,18 @@ rn_xplat_cxx_library(
27
32
  compiler_flags = [
28
33
  "-fexceptions",
29
34
  "-frtti",
30
- "-std=c++14",
35
+ "-std=c++17",
31
36
  "-Wall",
32
37
  ],
38
+ fbobjc_compiler_flags = APPLE_COMPILER_FLAGS,
39
+ fbobjc_preprocessor_flags = get_preprocessor_flags_for_build_mode() + get_apple_inspector_flags(),
33
40
  force_static = True,
34
41
  labels = ["supermodule:xplat/default/public.react_native.infra"],
35
42
  macosx_tests_override = [],
36
- platforms = (ANDROID),
43
+ platforms = ANDROID,
37
44
  preprocessor_flags = [
38
45
  "-DLOG_TAG=\"ReactNative\"",
46
+ "-DWITH_FBSYSTRACE=1",
39
47
  ],
40
48
  tests = [":tests"],
41
49
  visibility = ["PUBLIC"],
@@ -44,7 +52,7 @@ rn_xplat_cxx_library(
44
52
  "//xplat/fbsystrace:fbsystrace",
45
53
  "//xplat/folly:headers_only",
46
54
  "//xplat/folly:memory",
47
- react_native_xplat_target("react/utils:utils"),
55
+ react_native_xplat_target("react/debug:debug"),
48
56
  ],
49
57
  )
50
58
 
@@ -55,14 +63,15 @@ fb_xplat_cxx_test(
55
63
  compiler_flags = [
56
64
  "-fexceptions",
57
65
  "-frtti",
58
- "-std=c++14",
66
+ "-std=c++17",
59
67
  "-Wall",
60
68
  ],
61
69
  contacts = ["oncall+react_native@xmail.facebook.com"],
62
- platforms = (ANDROID),
70
+ platforms = ANDROID,
63
71
  deps = [
64
72
  "//xplat/folly:molly",
65
73
  "//xplat/third-party/gmock:gtest",
74
+ react_native_xplat_target("react/debug:debug"),
66
75
  react_native_xplat_target("react/renderer/mapbuffer:mapbuffer"),
67
76
  ],
68
77
  )
@@ -7,15 +7,142 @@
7
7
 
8
8
  #include "MapBuffer.h"
9
9
 
10
+ using namespace facebook::react;
11
+
10
12
  namespace facebook {
11
13
  namespace react {
12
14
 
13
- MapBuffer::MapBuffer() {}
15
+ // TODO T83483191: Extend MapBuffer C++ implementation to support basic random
16
+ // access
17
+ MapBuffer::MapBuffer(uint8_t *const data, int32_t dataSize) {
18
+ react_native_assert(
19
+ (data != nullptr) && "Error trying to build an invalid MapBuffer");
20
+
21
+ // Should we move the memory here or document it?
22
+ data_ = data;
23
+
24
+ count_ = 0;
25
+ memcpy(
26
+ reinterpret_cast<uint8_t *>(&count_),
27
+ reinterpret_cast<const uint8_t *>(data_ + HEADER_COUNT_OFFSET),
28
+ UINT16_SIZE);
29
+
30
+ // TODO T83483191: extract memcpy calls into an inline function to simplify
31
+ // the code
32
+ dataSize_ = 0;
33
+ memcpy(
34
+ reinterpret_cast<uint8_t *>(&dataSize_),
35
+ reinterpret_cast<const uint8_t *>(data_ + HEADER_BUFFER_SIZE_OFFSET),
36
+ INT_SIZE);
37
+
38
+ if (dataSize != dataSize_) {
39
+ LOG(ERROR) << "Error: Data size does not match, expected " << dataSize
40
+ << " found: " << dataSize_;
41
+ abort();
42
+ }
43
+ }
44
+
45
+ int32_t MapBuffer::getInt(Key key) const {
46
+ int32_t value = 0;
47
+ memcpy(
48
+ reinterpret_cast<uint8_t *>(&value),
49
+ reinterpret_cast<const uint8_t *>(data_ + getValueOffset(key)),
50
+ INT_SIZE);
51
+ return value;
52
+ }
53
+
54
+ bool MapBuffer::getBool(Key key) const {
55
+ return getInt(key) != 0;
56
+ }
57
+
58
+ double MapBuffer::getDouble(Key key) const {
59
+ // TODO T83483191: extract this code into a "template method" and reuse it for
60
+ // other types
61
+ double value = 0;
62
+ memcpy(
63
+ reinterpret_cast<uint8_t *>(&value),
64
+ reinterpret_cast<const uint8_t *>(data_ + getValueOffset(key)),
65
+ DOUBLE_SIZE);
66
+ return value;
67
+ }
68
+
69
+ int32_t MapBuffer::getDynamicDataOffset() const {
70
+ // The begininig of dynamic data can be calculated as the offset of the next
71
+ // key in the map
72
+ return getKeyOffset(count_);
73
+ }
14
74
 
15
- MapBuffer::~MapBuffer() {}
75
+ std::string MapBuffer::getString(Key key) const {
76
+ // TODO T83483191:Add checks to verify that offsets are under the boundaries
77
+ // of the map buffer
78
+ int32_t dynamicDataOffset = getDynamicDataOffset();
79
+ int32_t stringLength = 0;
80
+ int32_t offset = getInt(key);
81
+ memcpy(
82
+ reinterpret_cast<uint8_t *>(&stringLength),
83
+ reinterpret_cast<const uint8_t *>(data_ + dynamicDataOffset + offset),
84
+ INT_SIZE);
85
+
86
+ char *value = new char[stringLength];
87
+
88
+ memcpy(
89
+ reinterpret_cast<char *>(value),
90
+ reinterpret_cast<const char *>(
91
+ data_ + dynamicDataOffset + offset + INT_SIZE),
92
+ stringLength);
93
+
94
+ return std::string(value, 0, stringLength);
95
+ }
96
+
97
+ MapBuffer MapBuffer::getMapBuffer(Key key) const {
98
+ // TODO T83483191: Add checks to verify that offsets are under the boundaries
99
+ // of the map buffer
100
+ int32_t dynamicDataOffset = getDynamicDataOffset();
101
+
102
+ int32_t mapBufferLength = 0;
103
+ int32_t offset = getInt(key);
104
+ memcpy(
105
+ reinterpret_cast<uint8_t *>(&mapBufferLength),
106
+ reinterpret_cast<const uint8_t *>(data_ + dynamicDataOffset + offset),
107
+ INT_SIZE);
108
+
109
+ uint8_t *value = new Byte[mapBufferLength];
110
+
111
+ memcpy(
112
+ reinterpret_cast<uint8_t *>(value),
113
+ reinterpret_cast<const uint8_t *>(
114
+ data_ + dynamicDataOffset + offset + INT_SIZE),
115
+ mapBufferLength);
116
+
117
+ return MapBuffer(value, mapBufferLength);
118
+ }
119
+
120
+ bool MapBuffer::isNull(Key key) const {
121
+ return getInt(key) == NULL_VALUE;
122
+ }
123
+
124
+ int32_t MapBuffer::getBufferSize() const {
125
+ return dataSize_;
126
+ }
127
+
128
+ void MapBuffer::copy(uint8_t *output) const {
129
+ memcpy(output, data_, dataSize_);
130
+ }
131
+
132
+ uint16_t MapBuffer::getCount() const {
133
+ uint16_t size = 0;
134
+
135
+ memcpy(
136
+ reinterpret_cast<uint16_t *>(&size),
137
+ reinterpret_cast<const uint16_t *>(data_ + HEADER_COUNT_OFFSET),
138
+
139
+ UINT16_SIZE);
140
+
141
+ return size;
142
+ }
16
143
 
17
- int MapBuffer::getSize() {
18
- return 0;
144
+ MapBuffer::~MapBuffer() {
145
+ delete[] data_;
19
146
  }
20
147
 
21
148
  } // namespace react
@@ -7,7 +7,11 @@
7
7
 
8
8
  #pragma once
9
9
 
10
- #include <string>
10
+ #include <react/debug/react_native_assert.h>
11
+ #include <react/renderer/mapbuffer/primitives.h>
12
+
13
+ #include <stdlib.h>
14
+ #include <limits>
11
15
 
12
16
  namespace facebook {
13
17
  namespace react {
@@ -28,11 +32,43 @@ namespace react {
28
32
  * - have minimal APK size and build time impact.
29
33
  */
30
34
  class MapBuffer {
35
+ private:
36
+ // Buffer and its size
37
+ const uint8_t *data_ = nullptr;
38
+
39
+ // amount of bytes in the MapBuffer
40
+ int32_t dataSize_ = 0;
41
+
42
+ // amount of items in the MapBuffer
43
+ uint16_t count_ = 0;
44
+
45
+ // returns the relative offset of the first byte of dynamic data
46
+ int32_t getDynamicDataOffset() const;
47
+
31
48
  public:
32
- MapBuffer();
33
- virtual ~MapBuffer();
49
+ MapBuffer(uint8_t *const data, int32_t dataSize);
50
+
51
+ ~MapBuffer();
52
+
53
+ int32_t getInt(Key key) const;
54
+
55
+ bool getBool(Key key) const;
56
+
57
+ double getDouble(Key key) const;
58
+
59
+ std::string getString(Key key) const;
60
+
61
+ // TODO T83483191: review this declaration
62
+ MapBuffer getMapBuffer(Key key) const;
63
+
64
+ int32_t getBufferSize() const;
65
+
66
+ // TODO T83483191: review parameters of copy method
67
+ void copy(uint8_t *output) const;
68
+
69
+ bool isNull(Key key) const;
34
70
 
35
- int getSize();
71
+ uint16_t getCount() const;
36
72
  };
37
73
 
38
74
  } // namespace react
@@ -0,0 +1,226 @@
1
+ /*
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #include "MapBufferBuilder.h"
9
+
10
+ using namespace facebook::react;
11
+
12
+ namespace facebook {
13
+ namespace react {
14
+
15
+ // TODO T83483191: Add asserts to check overflowing on additions
16
+ MapBufferBuilder::MapBufferBuilder()
17
+ : MapBufferBuilder::MapBufferBuilder(INITIAL_KEY_VALUE_SIZE) {}
18
+
19
+ MapBuffer MapBufferBuilder::EMPTY() {
20
+ static auto emptyMap = MapBufferBuilder().build();
21
+ return emptyMap;
22
+ }
23
+
24
+ MapBufferBuilder::MapBufferBuilder(uint16_t initialSize) {
25
+ keyValuesSize_ = initialSize;
26
+ keyValues_ = new Byte[keyValuesSize_];
27
+ // First Key should be written right after the header.
28
+ keyValuesOffset_ = HEADER_SIZE;
29
+
30
+ dynamicDataSize_ = 0;
31
+ dynamicDataValues_ = nullptr;
32
+ dynamicDataOffset_ = 0;
33
+ }
34
+
35
+ void MapBufferBuilder::ensureKeyValueSpace() {
36
+ int32_t oldKeyValuesSize = keyValuesSize_;
37
+ react_native_assert(
38
+ (keyValuesSize_ < std::numeric_limits<uint16_t>::max() / 2) &&
39
+ "Error trying to assign a value beyond the capacity of uint16_t: ");
40
+ keyValuesSize_ *= 2;
41
+ uint8_t *newKeyValues = new Byte[keyValuesSize_];
42
+ uint8_t *oldKeyValues = keyValues_;
43
+ memcpy(newKeyValues, keyValues_, oldKeyValuesSize);
44
+ keyValues_ = newKeyValues;
45
+ delete[] oldKeyValues;
46
+ }
47
+
48
+ void MapBufferBuilder::storeKeyValue(
49
+ Key key,
50
+ uint8_t *value,
51
+ int32_t valueSize) {
52
+ if (key < minKeyToStore_) {
53
+ LOG(ERROR) << "Error: key out of order - key: " << key;
54
+ abort();
55
+ }
56
+ if (valueSize > MAX_VALUE_SIZE) {
57
+ LOG(ERROR) << "Error: size of value must be <= MAX_VALUE_SIZE. ValueSize: "
58
+ << valueSize;
59
+ abort();
60
+ }
61
+
62
+ // TODO T83483191: header.count points to the next index
63
+ // TODO T83483191: add test to verify storage of sparse keys
64
+ int32_t keyOffset = getKeyOffset(_header.count);
65
+ int32_t valueOffset = keyOffset + KEY_SIZE;
66
+
67
+ int32_t nextKeyValueOffset = keyOffset + BUCKET_SIZE;
68
+ if (nextKeyValueOffset >= keyValuesSize_) {
69
+ ensureKeyValueSpace();
70
+ }
71
+
72
+ memcpy(keyValues_ + keyOffset, &key, KEY_SIZE);
73
+ memcpy(keyValues_ + valueOffset, value, valueSize);
74
+
75
+ _header.count++;
76
+
77
+ minKeyToStore_ = key + 1;
78
+ // Move keyValuesOffset_ to the next available [key, value] position
79
+ keyValuesOffset_ = std::max(nextKeyValueOffset, keyValuesOffset_);
80
+ }
81
+
82
+ void MapBufferBuilder::putBool(Key key, bool value) {
83
+ putInt(key, (int)value);
84
+ }
85
+
86
+ void MapBufferBuilder::putDouble(Key key, double value) {
87
+ uint8_t *bytePointer = reinterpret_cast<uint8_t *>(&value);
88
+ storeKeyValue(key, bytePointer, DOUBLE_SIZE);
89
+ }
90
+
91
+ void MapBufferBuilder::putNull(Key key) {
92
+ putInt(key, NULL_VALUE);
93
+ }
94
+
95
+ void MapBufferBuilder::putInt(Key key, int32_t value) {
96
+ uint8_t *bytePointer = reinterpret_cast<uint8_t *>(&(value));
97
+ storeKeyValue(key, bytePointer, INT_SIZE);
98
+ }
99
+
100
+ void MapBufferBuilder::ensureDynamicDataSpace(int32_t size) {
101
+ if (dynamicDataValues_ == nullptr) {
102
+ dynamicDataSize_ = size;
103
+ dynamicDataValues_ = new Byte[dynamicDataSize_];
104
+ dynamicDataOffset_ = 0;
105
+ return;
106
+ }
107
+
108
+ if (dynamicDataOffset_ + size >= dynamicDataSize_) {
109
+ int32_t oldDynamicDataSize = dynamicDataSize_;
110
+ react_native_assert(
111
+ (dynamicDataSize_ < std::numeric_limits<int32_t>::max() / 2) &&
112
+ "Error: trying to assign a value beyond the capacity of int");
113
+ dynamicDataSize_ *= dynamicDataSize_;
114
+
115
+ react_native_assert(
116
+ (dynamicDataSize_ < std::numeric_limits<int32_t>::max() - size) &&
117
+ "Error: trying to assign a value beyond the capacity of int");
118
+
119
+ // sum size to ensure that the size always fit into newDynamicDataValues
120
+ dynamicDataSize_ += size;
121
+ uint8_t *newDynamicDataValues = new Byte[dynamicDataSize_];
122
+ uint8_t *oldDynamicDataValues = dynamicDataValues_;
123
+ memcpy(newDynamicDataValues, dynamicDataValues_, oldDynamicDataSize);
124
+ dynamicDataValues_ = newDynamicDataValues;
125
+ delete[] oldDynamicDataValues;
126
+ }
127
+ }
128
+
129
+ void MapBufferBuilder::putString(Key key, std::string value) {
130
+ int32_t strLength = static_cast<int32_t>(value.length());
131
+ const char *cstring = getCstring(&value);
132
+
133
+ // format [lenght of string (int)] + [Array of Characters in the string]
134
+ int32_t sizeOfLength = INT_SIZE;
135
+ // TODO T83483191: review if map.getBufferSize() should be an int32_t or long
136
+ // instead of an int16 (because strings can be longer than int16);
137
+
138
+ int32_t sizeOfDynamicData = sizeOfLength + strLength;
139
+ ensureDynamicDataSpace(sizeOfDynamicData);
140
+ memcpy(dynamicDataValues_ + dynamicDataOffset_, &strLength, sizeOfLength);
141
+ memcpy(
142
+ dynamicDataValues_ + dynamicDataOffset_ + sizeOfLength,
143
+ cstring,
144
+ strLength);
145
+
146
+ // Store Key and pointer to the string
147
+ putInt(key, dynamicDataOffset_);
148
+
149
+ dynamicDataOffset_ += sizeOfDynamicData;
150
+ }
151
+
152
+ void MapBufferBuilder::putMapBuffer(Key key, MapBuffer &map) {
153
+ int32_t mapBufferSize = map.getBufferSize();
154
+
155
+ // format [lenght of buffer (int)] + [bytes of MapBuffer]
156
+ int32_t sizeOfDynamicData = mapBufferSize + INT_SIZE;
157
+
158
+ // format [Array of bytes of the mapBuffer]
159
+ ensureDynamicDataSpace(sizeOfDynamicData);
160
+
161
+ memcpy(dynamicDataValues_ + dynamicDataOffset_, &mapBufferSize, INT_SIZE);
162
+ // Copy the content of the map into dynamicDataValues_
163
+ map.copy(dynamicDataValues_ + dynamicDataOffset_ + INT_SIZE);
164
+
165
+ // Store Key and pointer to the string
166
+ putInt(key, dynamicDataOffset_);
167
+
168
+ dynamicDataOffset_ += sizeOfDynamicData;
169
+ }
170
+
171
+ MapBuffer MapBufferBuilder::build() {
172
+ react_native_assert(
173
+ (keyValues_ != nullptr) &&
174
+ "Error when building mapbuffer with invalid datastructures.");
175
+
176
+ // Create buffer: [header] + [key, values] + [dynamic data]
177
+ int32_t bufferSize = keyValuesOffset_ + dynamicDataOffset_;
178
+
179
+ _header.bufferSize = bufferSize;
180
+
181
+ // Copy header at the beginning of "keyValues_"
182
+ memcpy(keyValues_, &_header, HEADER_SIZE);
183
+
184
+ uint8_t *buffer = new Byte[bufferSize];
185
+
186
+ memcpy(buffer, keyValues_, keyValuesOffset_);
187
+
188
+ if (dynamicDataValues_ != nullptr) {
189
+ memcpy(buffer + keyValuesOffset_, dynamicDataValues_, dynamicDataOffset_);
190
+ }
191
+
192
+ // TODO T83483191: should we use std::move here?
193
+ auto map = MapBuffer(buffer, bufferSize);
194
+
195
+ // TODO T83483191: we should invalidate the class once the build() method is
196
+ // called.
197
+
198
+ if (keyValues_ != nullptr) {
199
+ delete[] keyValues_;
200
+ }
201
+ keyValues_ = nullptr;
202
+ keyValuesSize_ = 0;
203
+ keyValuesOffset_ = 0;
204
+
205
+ if (dynamicDataValues_ != nullptr) {
206
+ delete[] dynamicDataValues_;
207
+ dynamicDataValues_ = nullptr;
208
+ }
209
+ dynamicDataSize_ = 0;
210
+ dynamicDataOffset_ = 0;
211
+ _header = {ALIGNMENT, 0, 0};
212
+
213
+ return map;
214
+ }
215
+
216
+ MapBufferBuilder::~MapBufferBuilder() {
217
+ if (keyValues_ != nullptr) {
218
+ delete[] keyValues_;
219
+ }
220
+ if (dynamicDataValues_ != nullptr) {
221
+ delete[] dynamicDataValues_;
222
+ }
223
+ }
224
+
225
+ } // namespace react
226
+ } // namespace facebook
@@ -0,0 +1,94 @@
1
+ /*
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/debug/react_native_assert.h>
11
+ #include <react/renderer/mapbuffer/MapBuffer.h>
12
+ #include <react/renderer/mapbuffer/primitives.h>
13
+ #include <stdlib.h>
14
+
15
+ namespace facebook {
16
+ namespace react {
17
+
18
+ // Default initial size for _keyValues array
19
+ // 108 = 10 entries = 10*10 + 8 sizeof(header)
20
+ constexpr uint16_t INITIAL_KEY_VALUE_SIZE = 108;
21
+
22
+ // Default initial size for _dynamicDataValues array
23
+ constexpr int32_t INITIAL_DYNAMIC_DATA_SIZE = 200;
24
+
25
+ /**
26
+ * MapBufferBuilder is a builder class for MapBuffer
27
+ */
28
+ class MapBufferBuilder {
29
+ private:
30
+ Header _header = {ALIGNMENT, 0, 0};
31
+
32
+ void ensureKeyValueSpace();
33
+
34
+ void ensureDynamicDataSpace(int32_t size);
35
+
36
+ void storeKeyValue(Key key, uint8_t *value, int32_t valueSize);
37
+
38
+ // Array of [key,value] map entries:
39
+ // - Key is represented in 2 bytes
40
+ // - Value is stored into 8 bytes. The 8 bytes of the value will contain the
41
+ // actual value for the key or a pointer to the actual value (based on the
42
+ // type)
43
+ uint8_t *keyValues_ = nullptr;
44
+
45
+ // Amount of bytes allocated on _keyValues
46
+ uint16_t keyValuesSize_ = 0;
47
+
48
+ // Relative offset on the _keyValues array.
49
+ // This represents the first byte that can be written in _keyValues array
50
+ int32_t keyValuesOffset_ = 0;
51
+
52
+ // This array contains data for dynamic values in the MapBuffer.
53
+ // A dynamic value is a String or another MapBuffer.
54
+ uint8_t *dynamicDataValues_ = nullptr;
55
+
56
+ // Amount of bytes allocated on _dynamicDataValues
57
+ int32_t dynamicDataSize_ = 0;
58
+
59
+ // Relative offset on the _dynamicDataValues array.
60
+ // This represents the first byte that can be written in _dynamicDataValues
61
+ // array
62
+ int32_t dynamicDataOffset_ = 0;
63
+
64
+ // Minimmum key to store in the MapBuffer (this is used to guarantee
65
+ // consistency)
66
+ uint16_t minKeyToStore_ = 0;
67
+
68
+ public:
69
+ MapBufferBuilder();
70
+
71
+ MapBufferBuilder(uint16_t initialSize);
72
+
73
+ ~MapBufferBuilder();
74
+
75
+ static MapBuffer EMPTY();
76
+
77
+ void putInt(Key key, int32_t value);
78
+
79
+ void putBool(Key key, bool value);
80
+
81
+ void putDouble(Key key, double value);
82
+
83
+ void putNull(Key key);
84
+
85
+ void putString(Key key, std::string value);
86
+
87
+ void putMapBuffer(Key key, MapBuffer &map);
88
+
89
+ // TODO T83483191: This should return MapBuffer!
90
+ MapBuffer build();
91
+ };
92
+
93
+ } // namespace react
94
+ } // namespace facebook
@@ -0,0 +1,91 @@
1
+ /*
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <glog/logging.h>
11
+
12
+ // TODO T83483191: Enable CHECK_CONSISTENCY only in debug mode or test
13
+ // environments (or just in demand) #define CHECK_CONSISTENCY 1
14
+
15
+ constexpr static int32_t NULL_VALUE = 0;
16
+
17
+ // Value used to verify if the data is serialized with LittleEndian order
18
+ constexpr static uint16_t ALIGNMENT = 0xFE;
19
+
20
+ using Key = uint16_t;
21
+
22
+ using Byte = uint8_t;
23
+
24
+ namespace facebook {
25
+ namespace react {
26
+
27
+ struct Header {
28
+ uint16_t alignment; // alignment of serialization
29
+ uint16_t count; // amount of items in the map
30
+ int32_t bufferSize; // Amount of bytes used to store the map in memory
31
+ };
32
+
33
+ constexpr static int32_t KEY_SIZE = sizeof(Key);
34
+ constexpr static int32_t HEADER_SIZE = sizeof(Header);
35
+ constexpr static int32_t INT_SIZE = sizeof(int32_t);
36
+ constexpr static int32_t DOUBLE_SIZE = sizeof(double);
37
+ constexpr static int32_t UINT8_SIZE = sizeof(uint8_t);
38
+ constexpr static int32_t UINT16_SIZE = sizeof(uint16_t);
39
+ constexpr static int32_t UINT64_SIZE = sizeof(uint64_t);
40
+ constexpr static int32_t HEADER_ALIGNMENT_OFFSET = 0;
41
+ constexpr static int32_t HEADER_COUNT_OFFSET = UINT16_SIZE;
42
+ constexpr static int32_t HEADER_BUFFER_SIZE_OFFSET = UINT16_SIZE * 2;
43
+
44
+ constexpr static int32_t MAX_VALUE_SIZE = UINT64_SIZE;
45
+
46
+ // 10 bytes : 2 key + 8 value
47
+ constexpr static int32_t BUCKET_SIZE = KEY_SIZE + UINT64_SIZE;
48
+
49
+ /**
50
+ * Returns the offset of the key received by parameter.
51
+ */
52
+ inline int32_t getKeyOffset(Key key) {
53
+ return HEADER_SIZE + BUCKET_SIZE * key;
54
+ }
55
+
56
+ /**
57
+ * Returns the offset of the value associated to the key received by parameter.
58
+ */
59
+ inline int32_t getValueOffset(Key key) {
60
+ return getKeyOffset(key) + KEY_SIZE;
61
+ }
62
+
63
+ static inline const char *getCstring(const std::string *str) {
64
+ return str ? str->c_str() : "";
65
+ }
66
+
67
+ inline void
68
+ checkKeyConsistency(const Header &header, const uint8_t *data, Key key) {
69
+ #ifdef CHECK_CONSISTENCY
70
+ if (key >= header.count) {
71
+ LOG(ERROR) << "Error: Key is higher than size of Map - key '" << key
72
+ << "' - size: '" << header.count << "'";
73
+ assert(false && "Error while reading key");
74
+ }
75
+
76
+ Key storedKey = 0;
77
+ memcpy(
78
+ reinterpret_cast<Key *>(&storedKey),
79
+ reinterpret_cast<const Key *>(data + getKeyOffset(key)),
80
+ KEY_SIZE);
81
+
82
+ if (storedKey != key) {
83
+ LOG(ERROR) << "Error while reading key, expecting '" << key << "' found: '"
84
+ << storedKey << "'";
85
+ assert(false && "Error while reading key");
86
+ }
87
+ #endif
88
+ }
89
+
90
+ } // namespace react
91
+ } // namespace facebook