react-native 0.0.0-16bb2ae4f → 0.0.0-18697adec

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 (616) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -1
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -0
  3. package/Libraries/Animated/AnimatedEvent.js +23 -4
  4. package/Libraries/Animated/NativeAnimatedHelper.js +3 -3
  5. package/Libraries/BatchedBridge/MessageQueue.js +10 -10
  6. package/Libraries/Blob/FileReader.js +1 -1
  7. package/Libraries/Blob/React-RCTBlob.podspec +1 -1
  8. package/Libraries/Blob/URL.js +1 -1
  9. package/Libraries/Components/Button.js +3 -0
  10. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +3 -6
  11. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -7
  12. package/Libraries/Components/ScrollView/ScrollView.js +14 -5
  13. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -0
  14. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +268 -252
  15. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +1 -0
  16. package/Libraries/Components/StatusBar/StatusBar.js +6 -14
  17. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +2 -3
  18. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +1 -0
  19. package/Libraries/Components/TextInput/TextInput.js +27 -1
  20. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  21. package/Libraries/Components/View/ViewAccessibility.js +1 -0
  22. package/Libraries/Core/ExceptionsManager.js +3 -1
  23. package/Libraries/Core/ReactNativeVersion.js +1 -1
  24. package/Libraries/Core/Timers/JSTimers.js +37 -28
  25. package/Libraries/Core/Timers/immediateShim.js +67 -0
  26. package/Libraries/Core/Timers/queueMicrotask.js +41 -0
  27. package/Libraries/Core/polyfillPromise.js +1 -1
  28. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  29. package/Libraries/Core/setUpGlobals.js +2 -0
  30. package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
  31. package/Libraries/Core/setUpTimers.js +65 -6
  32. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +1 -1
  33. package/Libraries/Image/Image.ios.js +6 -0
  34. package/Libraries/Image/ImageBackground.js +10 -8
  35. package/Libraries/Image/ImageProps.js +28 -0
  36. package/Libraries/Image/ImageSource.js +1 -1
  37. package/Libraries/Image/React-RCTImage.podspec +1 -1
  38. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
  39. package/Libraries/Lists/FlatList.js +43 -26
  40. package/Libraries/Lists/VirtualizedList.js +3 -1
  41. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +4 -4
  42. package/Libraries/LogBox/Data/LogBoxData.js +18 -18
  43. package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
  44. package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
  45. package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
  46. package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
  47. package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
  48. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
  49. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
  50. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +1 -2
  51. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +17 -11
  52. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
  53. package/Libraries/Network/React-RCTNetwork.podspec +1 -1
  54. package/Libraries/Network/XMLHttpRequest.js +3 -1
  55. package/Libraries/NewAppScreen/components/logo.png +0 -0
  56. package/Libraries/Performance/QuickPerformanceLogger.js +2 -1
  57. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -1
  58. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +2 -0
  59. package/Libraries/Pressability/Pressability.js +1 -0
  60. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -0
  61. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +0 -1
  62. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
  63. package/Libraries/ReactNative/AppRegistry.js +1 -1
  64. package/Libraries/ReactNative/PaperUIManager.js +1 -0
  65. package/Libraries/ReactNative/renderApplication.js +1 -1
  66. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
  67. package/Libraries/Reliability/UserFlow.js +7 -0
  68. package/Libraries/Renderer/REVISION +1 -1
  69. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +4485 -3842
  70. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +2060 -1709
  71. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +2148 -1796
  72. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +4264 -3695
  73. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +1303 -1063
  74. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +1374 -1139
  75. package/Libraries/Renderer/shims/ReactFabric.js +3 -1
  76. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
  77. package/Libraries/Renderer/shims/ReactNative.js +3 -1
  78. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
  79. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  80. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
  81. package/Libraries/Settings/React-RCTSettings.podspec +1 -1
  82. package/Libraries/StyleSheet/normalizeColor.js +2 -2
  83. package/Libraries/Text/Text.js +11 -0
  84. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +2 -12
  85. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
  86. package/Libraries/Text/TextProps.js +1 -7
  87. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
  88. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  89. package/Libraries/UTFSequence.js +1 -1
  90. package/Libraries/Utilities/Dimensions.js +9 -14
  91. package/Libraries/Utilities/FeatureDetection.js +31 -0
  92. package/Libraries/Utilities/HMRClient.js +10 -6
  93. package/Libraries/Utilities/MatrixMath.js +1 -1
  94. package/Libraries/Utilities/NativeDeviceInfo.js +1 -1
  95. package/Libraries/Utilities/deprecatedPropType.js +2 -2
  96. package/Libraries/Utilities/useWindowDimensions.js +7 -2
  97. package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
  98. package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
  99. package/React/Base/RCTBridge+Private.h +8 -0
  100. package/React/Base/RCTBridge.h +13 -0
  101. package/React/Base/RCTBridge.m +30 -7
  102. package/React/Base/RCTBridgeModule.h +3 -12
  103. package/React/Base/RCTBundleURLProvider.h +26 -1
  104. package/React/Base/RCTBundleURLProvider.mm +79 -15
  105. package/React/Base/RCTConstants.h +6 -7
  106. package/React/Base/RCTConstants.m +12 -12
  107. package/React/Base/RCTConvert.h +1 -1
  108. package/React/Base/RCTConvert.m +1 -1
  109. package/React/Base/RCTCxxConvert.h +1 -1
  110. package/React/Base/RCTDefines.h +12 -3
  111. package/React/Base/RCTEventDispatcherProtocol.h +2 -0
  112. package/React/Base/RCTJSThread.h +29 -0
  113. package/React/Base/RCTJSThread.m +19 -0
  114. package/React/Base/RCTMultipartStreamReader.m +0 -2
  115. package/React/Base/RCTRootView.h +15 -0
  116. package/React/Base/RCTRootView.m +15 -0
  117. package/React/Base/RCTTouchHandler.m +4 -9
  118. package/React/Base/RCTUtils.h +3 -0
  119. package/React/Base/RCTUtils.m +14 -7
  120. package/React/Base/RCTVersion.m +1 -1
  121. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +11 -0
  122. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +35 -1
  123. package/React/CoreModules/BUCK +3 -3
  124. package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
  125. package/React/CoreModules/RCTActionSheetManager.mm +14 -5
  126. package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
  127. package/React/CoreModules/RCTDevLoadingView.mm +5 -10
  128. package/React/CoreModules/RCTDevSettings.mm +12 -10
  129. package/React/CoreModules/RCTDevSplitBundleLoader.mm +1 -1
  130. package/React/CoreModules/RCTDeviceInfo.mm +4 -4
  131. package/React/CoreModules/RCTEventDispatcher.mm +5 -0
  132. package/React/CoreModules/RCTLogBox.mm +14 -10
  133. package/React/CoreModules/RCTPerfMonitor.mm +9 -4
  134. package/React/CoreModules/RCTRedBox.mm +1 -5
  135. package/React/CoreModules/React-CoreModules.podspec +1 -1
  136. package/React/CxxBridge/RCTCxxBridge.mm +18 -1
  137. package/React/DevSupport/RCTPackagerConnection.h +3 -0
  138. package/React/DevSupport/RCTPackagerConnection.mm +19 -8
  139. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +12 -4
  140. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +1 -2
  141. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +64 -62
  142. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +31 -11
  143. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
  144. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +108 -4
  145. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -0
  146. package/React/Fabric/Mounting/RCTMountingManager.h +3 -0
  147. package/React/Fabric/Mounting/RCTMountingManager.mm +22 -3
  148. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +2 -0
  149. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +12 -0
  150. package/React/Fabric/RCTConversions.h +3 -0
  151. package/React/Fabric/RCTScheduler.mm +12 -5
  152. package/React/Fabric/RCTSurfacePresenter.mm +6 -7
  153. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +1 -1
  154. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  155. package/React/Fabric/RCTSurfaceTouchHandler.mm +6 -20
  156. package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
  157. package/React/Modules/RCTI18nUtil.h +14 -6
  158. package/React/Modules/RCTI18nUtil.m +1 -47
  159. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  160. package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
  161. package/React/React-RCTFabric.podspec +1 -1
  162. package/React/Views/RCTFont.mm +54 -38
  163. package/React/Views/RCTModalHostView.h +1 -1
  164. package/React/Views/RCTModalHostView.m +16 -0
  165. package/React/Views/RCTModalHostViewManager.m +1 -0
  166. package/React/Views/RCTView.m +2 -7
  167. package/React/Views/RCTViewManager.m +4 -2
  168. package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
  169. package/React/Views/ScrollView/RCTScrollView.h +1 -0
  170. package/React/Views/ScrollView/RCTScrollView.m +111 -36
  171. package/React/Views/ScrollView/RCTScrollViewManager.m +1 -7
  172. package/React/Views/UIView+React.m +2 -11
  173. package/React-Core.podspec +1 -1
  174. package/ReactAndroid/Android-prebuilt.mk +8 -0
  175. package/ReactAndroid/README.md +1 -1
  176. package/ReactAndroid/build.gradle +12 -5
  177. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
  178. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
  179. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
  180. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
  181. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -1
  182. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
  183. package/ReactAndroid/src/androidTest/js/BUCK +26 -0
  184. package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -7
  185. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
  186. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
  187. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
  188. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
  189. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +1 -1
  190. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
  191. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +2 -0
  192. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
  193. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +89 -44
  194. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +28 -0
  195. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +13 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +5 -4
  197. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
  198. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -2
  199. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +4 -4
  200. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
  201. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
  202. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -0
  203. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +22 -0
  205. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +3 -6
  206. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +1 -1
  207. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
  208. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
  209. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
  210. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
  211. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
  212. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +2 -2
  213. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +1 -1
  214. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +32 -4
  215. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
  216. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
  218. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +14 -9
  219. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -72
  220. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
  221. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +10 -0
  222. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
  223. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +1 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +64 -31
  225. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +3 -3
  226. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +2 -1
  227. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +1 -1
  228. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +54 -10
  229. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +7 -1
  230. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +14 -6
  231. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +4 -4
  232. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +40 -11
  233. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
  234. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
  235. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +2 -2
  236. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
  237. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
  238. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
  239. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
  240. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
  241. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
  242. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
  243. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
  244. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
  245. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
  246. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +2 -2
  247. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
  248. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
  249. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +10 -6
  250. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
  251. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +1 -1
  252. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +7 -1
  253. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
  254. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
  255. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
  256. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
  257. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
  258. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
  259. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
  260. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
  261. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
  262. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
  263. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
  264. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  265. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
  266. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
  267. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
  268. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
  269. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -1
  270. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -5
  271. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +4 -2
  272. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +39 -11
  273. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +9 -2
  274. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
  275. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
  276. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +2 -2
  277. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
  278. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
  279. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +9 -9
  280. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -0
  281. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +6 -5
  282. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
  283. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +12 -20
  284. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +2 -2
  285. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +14 -13
  286. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +21 -5
  287. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +1 -1
  288. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +1 -1
  289. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
  290. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +1 -1
  291. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +7 -11
  292. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
  293. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
  294. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +9 -1
  295. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +24 -1
  296. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +2 -2
  297. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
  298. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +4 -7
  299. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
  300. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
  301. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
  302. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +23 -2
  303. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +8 -0
  304. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +20 -1
  305. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +31 -12
  306. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +31 -11
  307. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
  308. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +14 -4
  309. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
  310. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +114 -62
  311. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
  312. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
  313. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +24 -3
  314. package/ReactAndroid/src/main/jni/react/jni/Android.mk +5 -3
  315. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
  316. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +61 -0
  317. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +8 -0
  318. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
  319. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h +25 -0
  320. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
  321. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
  322. package/{ReactCommon/react/renderer/core/Constants.cpp → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +6 -8
  323. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
  324. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  325. package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +0 -1
  326. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
  327. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
  328. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
  329. package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
  330. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
  331. package/ReactCommon/React-Fabric.podspec +10 -1
  332. package/ReactCommon/ReactCommon.podspec +2 -1
  333. package/ReactCommon/callinvoker/BUCK +2 -2
  334. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  335. package/ReactCommon/cxxreact/Android.mk +2 -1
  336. package/ReactCommon/cxxreact/BUCK +1 -0
  337. package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
  338. package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
  339. package/ReactCommon/cxxreact/React-cxxreact.podspec +2 -1
  340. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  341. package/ReactCommon/hermes/React-hermes.podspec +1 -1
  342. package/ReactCommon/hermes/executor/Android.mk +4 -4
  343. package/ReactCommon/hermes/inspector/Android.mk +1 -2
  344. package/ReactCommon/hermes/inspector/tools/msggen/package.json +7 -4
  345. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +13 -10
  346. package/ReactCommon/jsi/Android.mk +1 -1
  347. package/ReactCommon/jsi/BUCK +0 -2
  348. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  349. package/ReactCommon/jsiexecutor/Android.mk +2 -2
  350. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
  351. package/ReactCommon/logger/Android.mk +23 -0
  352. package/ReactCommon/logger/BUCK +43 -0
  353. package/ReactCommon/logger/React-logger.podspec +40 -0
  354. package/ReactCommon/logger/react_native_log.cpp +52 -0
  355. package/ReactCommon/logger/react_native_log.h +33 -0
  356. package/ReactCommon/react/nativemodule/core/Android.mk +2 -2
  357. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
  358. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
  359. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
  360. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
  361. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +37 -1
  362. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +24 -22
  363. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -8
  364. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -5
  365. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +51 -29
  366. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +45 -34
  367. package/ReactCommon/react/nativemodule/samples/BUCK +2 -2
  368. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +1 -1
  369. package/ReactCommon/react/renderer/animations/BUCK +1 -0
  370. package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
  371. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +5 -27
  372. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -14
  373. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +920 -1136
  374. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +80 -245
  375. package/ReactCommon/react/renderer/animations/conversions.h +212 -0
  376. package/ReactCommon/react/renderer/animations/primitives.h +104 -0
  377. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +9 -6
  378. package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
  379. package/ReactCommon/react/renderer/animations/utils.h +80 -0
  380. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
  381. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
  382. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
  383. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
  384. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
  385. package/ReactCommon/react/renderer/attributedstring/conversions.h +162 -11
  386. package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
  387. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
  388. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
  389. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +10 -4
  390. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
  391. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -1
  392. package/ReactCommon/react/renderer/components/image/Android.mk +1 -1
  393. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
  394. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
  395. package/ReactCommon/react/renderer/components/image/conversions.h +9 -2
  396. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
  397. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +1 -1
  398. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -1
  399. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +2 -1
  400. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
  401. package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
  402. package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
  403. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -1
  404. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  405. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +8 -4
  406. package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
  407. package/ReactCommon/react/renderer/components/scrollview/Android.mk +1 -1
  408. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +45 -4
  409. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +5 -1
  410. package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
  411. package/ReactCommon/react/renderer/components/text/Android.mk +1 -1
  412. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
  413. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
  414. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +1 -16
  415. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +10 -4
  416. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
  417. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
  418. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
  419. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +0 -6
  420. package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
  421. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
  422. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +0 -6
  423. package/ReactCommon/react/renderer/components/textinput/Android.mk +1 -1
  424. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
  425. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
  426. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
  427. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
  428. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +15 -3
  429. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
  430. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
  431. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +1 -1
  432. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +4 -2
  433. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
  434. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
  435. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +21 -0
  436. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
  437. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +3 -0
  438. package/ReactCommon/react/renderer/components/view/Android.mk +3 -2
  439. package/ReactCommon/react/renderer/components/view/BUCK +1 -0
  440. package/ReactCommon/react/renderer/components/view/Touch.h +1 -32
  441. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
  442. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
  443. package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
  444. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +2 -10
  445. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -4
  446. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
  447. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +58 -33
  448. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +2 -8
  449. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  450. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
  451. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +62 -8
  452. package/ReactCommon/react/renderer/components/view/conversions.h +57 -14
  453. package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
  454. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +7 -2
  455. package/ReactCommon/react/renderer/core/Android.mk +1 -1
  456. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +5 -2
  457. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +19 -21
  458. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +4 -0
  459. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +12 -31
  460. package/ReactCommon/react/renderer/core/EventDispatcher.h +1 -4
  461. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +0 -6
  462. package/ReactCommon/react/renderer/core/Props.cpp +10 -2
  463. package/ReactCommon/react/renderer/core/Props.h +6 -1
  464. package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
  465. package/ReactCommon/react/renderer/core/RawProps.cpp +2 -1
  466. package/ReactCommon/react/renderer/core/RawProps.h +3 -1
  467. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +10 -2
  468. package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
  469. package/ReactCommon/react/renderer/core/ReactPrimitives.h +0 -2
  470. package/ReactCommon/react/renderer/core/ShadowNode.cpp +7 -10
  471. package/ReactCommon/react/renderer/core/ShadowNode.h +4 -0
  472. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +1 -0
  473. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +11 -1
  474. package/ReactCommon/react/renderer/core/propsConversions.h +18 -8
  475. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
  476. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +85 -20
  477. package/ReactCommon/react/renderer/core/tests/TestComponent.h +6 -2
  478. package/ReactCommon/react/renderer/graphics/Android.mk +5 -2
  479. package/ReactCommon/react/renderer/graphics/BUCK +12 -1
  480. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -1
  481. package/ReactCommon/react/renderer/graphics/Transform.cpp +1 -1
  482. package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
  483. package/ReactCommon/react/renderer/graphics/conversions.h +34 -19
  484. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
  485. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
  486. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +42 -1
  487. package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
  488. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
  489. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
  490. package/ReactCommon/react/renderer/imagemanager/BUCK +1 -1
  491. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  492. package/ReactCommon/react/renderer/mapbuffer/BUCK +2 -2
  493. package/ReactCommon/react/renderer/mounting/Android.mk +2 -1
  494. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  495. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -2
  496. package/ReactCommon/react/renderer/mounting/ShadowTree.h +3 -1
  497. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -0
  498. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +10 -1
  499. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +12 -1
  500. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +8 -1
  501. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +10 -3
  502. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +2 -1
  503. package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
  504. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +10 -4
  505. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +9 -2
  506. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +4 -2
  507. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +4 -2
  508. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
  509. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
  510. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +4 -2
  511. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +4 -2
  512. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +11 -5
  513. package/ReactCommon/react/renderer/runtimescheduler/Task.h +5 -3
  514. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +4 -2
  515. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +34 -0
  516. package/ReactCommon/react/renderer/{core/Constants.h → scheduler/InspectorData.h} +9 -8
  517. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +44 -29
  518. package/ReactCommon/react/renderer/scheduler/Scheduler.h +14 -0
  519. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +49 -29
  520. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +12 -4
  521. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +1 -0
  522. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
  523. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
  524. package/ReactCommon/react/renderer/timeline/BUCK +6 -6
  525. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +34 -30
  526. package/ReactCommon/react/renderer/uimanager/UIManager.h +6 -3
  527. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +1 -1
  528. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +101 -108
  529. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +4 -7
  530. package/ReactCommon/react/test_utils/BUCK +3 -0
  531. package/ReactCommon/react/test_utils/MockSurfaceHandler.h +25 -0
  532. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +18 -4
  533. package/ReactCommon/react/utils/Android.mk +3 -1
  534. package/ReactCommon/react/utils/BUCK +1 -0
  535. package/ReactCommon/react/utils/ContextContainer.h +0 -27
  536. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  537. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  538. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +12 -0
  539. package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar → 0.0.0-18697adec/react-native-0.0.0-18697adec.aar} +0 -0
  540. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.md5 +1 -0
  541. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha1 +1 -0
  542. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha256 +1 -0
  543. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha512 +1 -0
  544. package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module → 0.0.0-18697adec/react-native-0.0.0-18697adec.module} +30 -17
  545. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.md5 +1 -0
  546. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha1 +1 -0
  547. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha256 +1 -0
  548. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha512 +1 -0
  549. package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom → 0.0.0-18697adec/react-native-0.0.0-18697adec.pom} +8 -2
  550. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.md5 +1 -0
  551. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.sha1 +1 -0
  552. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.sha256 +1 -0
  553. package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.sha512 +1 -0
  554. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -4
  555. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  556. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  557. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -1
  558. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -1
  559. package/flow/HermesInternalType.js +114 -0
  560. package/flow/global.js +68 -0
  561. package/index.js +37 -24
  562. package/jest/renderer.js +3 -7
  563. package/jest/setup.js +2 -1
  564. package/package.json +55 -16
  565. package/react.gradle +19 -13
  566. package/scripts/generate-specs-cli.js +20 -2
  567. package/scripts/ios-configure-glog.sh +4 -0
  568. package/scripts/react-native-xcode.sh +1 -1
  569. package/scripts/react_native_pods.rb +195 -38
  570. package/template/_flowconfig +1 -1
  571. package/template/android/app/build.gradle +2 -2
  572. package/template/android/build.gradle +1 -2
  573. package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  574. package/template/android/gradle.properties +1 -1
  575. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  576. package/template/ios/Podfile +1 -0
  577. package/template/package.json +3 -4
  578. package/third-party-podspecs/RCT-Folly.podspec +6 -3
  579. package/Libraries/BUCK +0 -26
  580. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -87
  581. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  582. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  583. package/Libraries/Components/StaticContainer.react.js +0 -51
  584. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -38
  585. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -25
  586. package/Libraries/Interaction/InteractionMixin.js +0 -54
  587. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  588. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
  589. package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
  590. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
  591. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
  592. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -153
  593. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerMode.java +0 -15
  594. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
  595. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/BUCK +0 -20
  596. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/RuntimeSchedulerManager.java +0 -39
  597. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/Android.mk +0 -34
  598. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/BUCK +0 -35
  599. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/OnLoad.cpp +0 -15
  600. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.cpp +0 -46
  601. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.h +0 -40
  602. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.md5 +0 -1
  603. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha1 +0 -1
  604. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha256 +0 -1
  605. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha512 +0 -1
  606. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.md5 +0 -1
  607. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha1 +0 -1
  608. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha256 +0 -1
  609. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha512 +0 -1
  610. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.md5 +0 -1
  611. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha1 +0 -1
  612. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha256 +0 -1
  613. package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha512 +0 -1
  614. package/scripts/generate-specs.sh +0 -100
  615. package/template/_editorconfig +0 -3
  616. package/template/_gitattributes +0 -3
@@ -15,6 +15,7 @@
15
15
  #include <react/debug/react_native_assert.h>
16
16
  #include <react/renderer/components/view/primitives.h>
17
17
  #include <react/renderer/core/LayoutMetrics.h>
18
+ #include <react/renderer/core/PropsParserContext.h>
18
19
  #include <react/renderer/graphics/Geometry.h>
19
20
  #include <react/renderer/graphics/Transform.h>
20
21
  #include <stdlib.h>
@@ -165,7 +166,10 @@ inline YGDirection yogaDirectionFromLayoutDirection(LayoutDirection direction) {
165
166
  }
166
167
  }
167
168
 
168
- inline void fromRawValue(const RawValue &value, YGDirection &result) {
169
+ inline void fromRawValue(
170
+ const PropsParserContext &context,
171
+ const RawValue &value,
172
+ YGDirection &result) {
169
173
  react_native_assert(value.hasType<std::string>());
170
174
  auto stringValue = (std::string)value;
171
175
  if (stringValue == "inherit") {
@@ -184,7 +188,10 @@ inline void fromRawValue(const RawValue &value, YGDirection &result) {
184
188
  react_native_assert(false);
185
189
  }
186
190
 
187
- inline void fromRawValue(const RawValue &value, YGFlexDirection &result) {
191
+ inline void fromRawValue(
192
+ const PropsParserContext &context,
193
+ const RawValue &value,
194
+ YGFlexDirection &result) {
188
195
  react_native_assert(value.hasType<std::string>());
189
196
  auto stringValue = (std::string)value;
190
197
  if (stringValue == "row") {
@@ -207,7 +214,10 @@ inline void fromRawValue(const RawValue &value, YGFlexDirection &result) {
207
214
  react_native_assert(false);
208
215
  }
209
216
 
210
- inline void fromRawValue(const RawValue &value, YGJustify &result) {
217
+ inline void fromRawValue(
218
+ const PropsParserContext &context,
219
+ const RawValue &value,
220
+ YGJustify &result) {
211
221
  react_native_assert(value.hasType<std::string>());
212
222
  auto stringValue = (std::string)value;
213
223
  if (stringValue == "flex-start") {
@@ -238,7 +248,10 @@ inline void fromRawValue(const RawValue &value, YGJustify &result) {
238
248
  react_native_assert(false);
239
249
  }
240
250
 
241
- inline void fromRawValue(const RawValue &value, YGAlign &result) {
251
+ inline void fromRawValue(
252
+ const PropsParserContext &context,
253
+ const RawValue &value,
254
+ YGAlign &result) {
242
255
  react_native_assert(value.hasType<std::string>());
243
256
  auto stringValue = (std::string)value;
244
257
  if (stringValue == "auto") {
@@ -277,7 +290,10 @@ inline void fromRawValue(const RawValue &value, YGAlign &result) {
277
290
  react_native_assert(false);
278
291
  }
279
292
 
280
- inline void fromRawValue(const RawValue &value, YGPositionType &result) {
293
+ inline void fromRawValue(
294
+ const PropsParserContext &context,
295
+ const RawValue &value,
296
+ YGPositionType &result) {
281
297
  react_native_assert(value.hasType<std::string>());
282
298
  auto stringValue = (std::string)value;
283
299
  if (stringValue == "static") {
@@ -296,7 +312,10 @@ inline void fromRawValue(const RawValue &value, YGPositionType &result) {
296
312
  react_native_assert(false);
297
313
  }
298
314
 
299
- inline void fromRawValue(const RawValue &value, YGWrap &result) {
315
+ inline void fromRawValue(
316
+ const PropsParserContext &context,
317
+ const RawValue &value,
318
+ YGWrap &result) {
300
319
  react_native_assert(value.hasType<std::string>());
301
320
  auto stringValue = (std::string)value;
302
321
  if (stringValue == "nowrap") {
@@ -315,7 +334,10 @@ inline void fromRawValue(const RawValue &value, YGWrap &result) {
315
334
  react_native_assert(false);
316
335
  }
317
336
 
318
- inline void fromRawValue(const RawValue &value, YGOverflow &result) {
337
+ inline void fromRawValue(
338
+ const PropsParserContext &context,
339
+ const RawValue &value,
340
+ YGOverflow &result) {
319
341
  react_native_assert(value.hasType<std::string>());
320
342
  auto stringValue = (std::string)value;
321
343
  if (stringValue == "visible") {
@@ -334,7 +356,10 @@ inline void fromRawValue(const RawValue &value, YGOverflow &result) {
334
356
  react_native_assert(false);
335
357
  }
336
358
 
337
- inline void fromRawValue(const RawValue &value, YGDisplay &result) {
359
+ inline void fromRawValue(
360
+ const PropsParserContext &context,
361
+ const RawValue &value,
362
+ YGDisplay &result) {
338
363
  react_native_assert(value.hasType<std::string>());
339
364
  auto stringValue = (std::string)value;
340
365
  if (stringValue == "flex") {
@@ -349,7 +374,10 @@ inline void fromRawValue(const RawValue &value, YGDisplay &result) {
349
374
  react_native_assert(false);
350
375
  }
351
376
 
352
- inline void fromRawValue(const RawValue &value, YGStyle::ValueRepr &result) {
377
+ inline void fromRawValue(
378
+ const PropsParserContext &context,
379
+ const RawValue &value,
380
+ YGStyle::ValueRepr &result) {
353
381
  if (value.hasType<Float>()) {
354
382
  result = yogaStyleValueFromFloat((Float)value);
355
383
  return;
@@ -373,7 +401,10 @@ inline void fromRawValue(const RawValue &value, YGStyle::ValueRepr &result) {
373
401
  result = YGValueUndefined;
374
402
  }
375
403
 
376
- inline void fromRawValue(const RawValue &value, YGFloatOptional &result) {
404
+ inline void fromRawValue(
405
+ const PropsParserContext &context,
406
+ const RawValue &value,
407
+ YGFloatOptional &result) {
377
408
  if (value.hasType<float>()) {
378
409
  result = YGFloatOptional((float)value);
379
410
  return;
@@ -404,7 +435,10 @@ inline Float toRadians(const RawValue &value) {
404
435
  return static_cast<Float>(num); // assume suffix is "rad"
405
436
  }
406
437
 
407
- inline void fromRawValue(const RawValue &value, Transform &result) {
438
+ inline void fromRawValue(
439
+ const PropsParserContext &context,
440
+ const RawValue &value,
441
+ Transform &result) {
408
442
  react_native_assert(value.hasType<std::vector<RawValue>>());
409
443
  auto transformMatrix = Transform{};
410
444
  auto configurations = static_cast<std::vector<RawValue>>(value);
@@ -479,7 +513,10 @@ inline void fromRawValue(const RawValue &value, Transform &result) {
479
513
  result = transformMatrix;
480
514
  }
481
515
 
482
- inline void fromRawValue(const RawValue &value, PointerEventsMode &result) {
516
+ inline void fromRawValue(
517
+ const PropsParserContext &context,
518
+ const RawValue &value,
519
+ PointerEventsMode &result) {
483
520
  react_native_assert(value.hasType<std::string>());
484
521
  auto stringValue = (std::string)value;
485
522
  if (stringValue == "auto") {
@@ -502,7 +539,10 @@ inline void fromRawValue(const RawValue &value, PointerEventsMode &result) {
502
539
  react_native_assert(false);
503
540
  }
504
541
 
505
- inline void fromRawValue(const RawValue &value, BackfaceVisibility &result) {
542
+ inline void fromRawValue(
543
+ const PropsParserContext &context,
544
+ const RawValue &value,
545
+ BackfaceVisibility &result) {
506
546
  react_native_assert(value.hasType<std::string>());
507
547
  auto stringValue = (std::string)value;
508
548
  if (stringValue == "auto") {
@@ -521,7 +561,10 @@ inline void fromRawValue(const RawValue &value, BackfaceVisibility &result) {
521
561
  react_native_assert(false);
522
562
  }
523
563
 
524
- inline void fromRawValue(const RawValue &value, BorderStyle &result) {
564
+ inline void fromRawValue(
565
+ const PropsParserContext &context,
566
+ const RawValue &value,
567
+ BorderStyle &result) {
525
568
  react_native_assert(value.hasType<std::string>());
526
569
  auto stringValue = (std::string)value;
527
570
  if (stringValue == "solid") {
@@ -8,12 +8,14 @@
8
8
  #pragma once
9
9
 
10
10
  #include <react/renderer/components/view/conversions.h>
11
+ #include <react/renderer/core/PropsParserContext.h>
11
12
  #include <react/renderer/core/propsConversions.h>
12
13
 
13
14
  namespace facebook {
14
15
  namespace react {
15
16
 
16
17
  static inline YGStyle::Dimensions convertRawProp(
18
+ const PropsParserContext &context,
17
19
  RawProps const &rawProps,
18
20
  char const *widthName,
19
21
  char const *heightName,
@@ -21,11 +23,13 @@ static inline YGStyle::Dimensions convertRawProp(
21
23
  YGStyle::Dimensions const &defaultValue) {
22
24
  auto dimensions = defaultValue;
23
25
  dimensions[YGDimensionWidth] = convertRawProp(
26
+ context,
24
27
  rawProps,
25
28
  widthName,
26
29
  sourceValue[YGDimensionWidth],
27
30
  defaultValue[YGDimensionWidth]);
28
31
  dimensions[YGDimensionHeight] = convertRawProp(
32
+ context,
29
33
  rawProps,
30
34
  heightName,
31
35
  sourceValue[YGDimensionHeight],
@@ -34,6 +38,7 @@ static inline YGStyle::Dimensions convertRawProp(
34
38
  }
35
39
 
36
40
  static inline YGStyle::Edges convertRawProp(
41
+ const PropsParserContext &context,
37
42
  RawProps const &rawProps,
38
43
  char const *prefix,
39
44
  char const *suffix,
@@ -41,6 +46,7 @@ static inline YGStyle::Edges convertRawProp(
41
46
  YGStyle::Edges const &defaultValue) {
42
47
  auto result = defaultValue;
43
48
  result[YGEdgeLeft] = convertRawProp(
49
+ context,
44
50
  rawProps,
45
51
  "Left",
46
52
  sourceValue[YGEdgeLeft],
@@ -48,6 +54,7 @@ static inline YGStyle::Edges convertRawProp(
48
54
  prefix,
49
55
  suffix);
50
56
  result[YGEdgeTop] = convertRawProp(
57
+ context,
51
58
  rawProps,
52
59
  "Top",
53
60
  sourceValue[YGEdgeTop],
@@ -55,6 +62,7 @@ static inline YGStyle::Edges convertRawProp(
55
62
  prefix,
56
63
  suffix);
57
64
  result[YGEdgeRight] = convertRawProp(
65
+ context,
58
66
  rawProps,
59
67
  "Right",
60
68
  sourceValue[YGEdgeRight],
@@ -62,6 +70,7 @@ static inline YGStyle::Edges convertRawProp(
62
70
  prefix,
63
71
  suffix);
64
72
  result[YGEdgeBottom] = convertRawProp(
73
+ context,
65
74
  rawProps,
66
75
  "Bottom",
67
76
  sourceValue[YGEdgeBottom],
@@ -69,6 +78,7 @@ static inline YGStyle::Edges convertRawProp(
69
78
  prefix,
70
79
  suffix);
71
80
  result[YGEdgeStart] = convertRawProp(
81
+ context,
72
82
  rawProps,
73
83
  "Start",
74
84
  sourceValue[YGEdgeStart],
@@ -76,6 +86,7 @@ static inline YGStyle::Edges convertRawProp(
76
86
  prefix,
77
87
  suffix);
78
88
  result[YGEdgeEnd] = convertRawProp(
89
+ context,
79
90
  rawProps,
80
91
  "End",
81
92
  sourceValue[YGEdgeEnd],
@@ -83,6 +94,7 @@ static inline YGStyle::Edges convertRawProp(
83
94
  prefix,
84
95
  suffix);
85
96
  result[YGEdgeHorizontal] = convertRawProp(
97
+ context,
86
98
  rawProps,
87
99
  "Horizontal",
88
100
  sourceValue[YGEdgeHorizontal],
@@ -90,6 +102,7 @@ static inline YGStyle::Edges convertRawProp(
90
102
  prefix,
91
103
  suffix);
92
104
  result[YGEdgeVertical] = convertRawProp(
105
+ context,
93
106
  rawProps,
94
107
  "Vertical",
95
108
  sourceValue[YGEdgeVertical],
@@ -97,6 +110,7 @@ static inline YGStyle::Edges convertRawProp(
97
110
  prefix,
98
111
  suffix);
99
112
  result[YGEdgeAll] = convertRawProp(
113
+ context,
100
114
  rawProps,
101
115
  "",
102
116
  sourceValue[YGEdgeAll],
@@ -107,99 +121,177 @@ static inline YGStyle::Edges convertRawProp(
107
121
  }
108
122
 
109
123
  static inline YGStyle::Edges convertRawProp(
124
+ const PropsParserContext &context,
110
125
  RawProps const &rawProps,
111
126
  YGStyle::Edges const &sourceValue,
112
127
  YGStyle::Edges const &defaultValue) {
113
128
  auto result = defaultValue;
114
129
  result[YGEdgeLeft] = convertRawProp(
115
- rawProps, "left", sourceValue[YGEdgeLeft], defaultValue[YGEdgeLeft]);
130
+ context,
131
+ rawProps,
132
+ "left",
133
+ sourceValue[YGEdgeLeft],
134
+ defaultValue[YGEdgeLeft]);
116
135
  result[YGEdgeTop] = convertRawProp(
117
- rawProps, "top", sourceValue[YGEdgeTop], defaultValue[YGEdgeTop]);
136
+ context,
137
+ rawProps,
138
+ "top",
139
+ sourceValue[YGEdgeTop],
140
+ defaultValue[YGEdgeTop]);
118
141
  result[YGEdgeRight] = convertRawProp(
119
- rawProps, "right", sourceValue[YGEdgeRight], defaultValue[YGEdgeRight]);
142
+ context,
143
+ rawProps,
144
+ "right",
145
+ sourceValue[YGEdgeRight],
146
+ defaultValue[YGEdgeRight]);
120
147
  result[YGEdgeBottom] = convertRawProp(
148
+ context,
121
149
  rawProps,
122
150
  "bottom",
123
151
  sourceValue[YGEdgeBottom],
124
152
  defaultValue[YGEdgeBottom]);
125
153
  result[YGEdgeStart] = convertRawProp(
126
- rawProps, "start", sourceValue[YGEdgeStart], defaultValue[YGEdgeStart]);
154
+ context,
155
+ rawProps,
156
+ "start",
157
+ sourceValue[YGEdgeStart],
158
+ defaultValue[YGEdgeStart]);
127
159
  result[YGEdgeEnd] = convertRawProp(
128
- rawProps, "end", sourceValue[YGEdgeEnd], defaultValue[YGEdgeEnd]);
160
+ context,
161
+ rawProps,
162
+ "end",
163
+ sourceValue[YGEdgeEnd],
164
+ defaultValue[YGEdgeEnd]);
129
165
  return result;
130
166
  }
131
167
 
132
168
  static inline YGStyle convertRawProp(
169
+ const PropsParserContext &context,
133
170
  RawProps const &rawProps,
134
171
  YGStyle const &sourceValue) {
135
172
  auto yogaStyle = YGStyle{};
136
173
  yogaStyle.direction() = convertRawProp(
137
- rawProps, "direction", sourceValue.direction(), yogaStyle.direction());
174
+ context,
175
+ rawProps,
176
+ "direction",
177
+ sourceValue.direction(),
178
+ yogaStyle.direction());
138
179
  yogaStyle.flexDirection() = convertRawProp(
180
+ context,
139
181
  rawProps,
140
182
  "flexDirection",
141
183
  sourceValue.flexDirection(),
142
184
  yogaStyle.flexDirection());
143
185
  yogaStyle.justifyContent() = convertRawProp(
186
+ context,
144
187
  rawProps,
145
188
  "justifyContent",
146
189
  sourceValue.justifyContent(),
147
190
  yogaStyle.justifyContent());
148
191
  yogaStyle.alignContent() = convertRawProp(
192
+ context,
149
193
  rawProps,
150
194
  "alignContent",
151
195
  sourceValue.alignContent(),
152
196
  yogaStyle.alignContent());
153
197
  yogaStyle.alignItems() = convertRawProp(
154
- rawProps, "alignItems", sourceValue.alignItems(), yogaStyle.alignItems());
198
+ context,
199
+ rawProps,
200
+ "alignItems",
201
+ sourceValue.alignItems(),
202
+ yogaStyle.alignItems());
155
203
  yogaStyle.alignSelf() = convertRawProp(
156
- rawProps, "alignSelf", sourceValue.alignSelf(), yogaStyle.alignSelf());
204
+ context,
205
+ rawProps,
206
+ "alignSelf",
207
+ sourceValue.alignSelf(),
208
+ yogaStyle.alignSelf());
157
209
  yogaStyle.positionType() = convertRawProp(
210
+ context,
158
211
  rawProps,
159
212
  "position",
160
213
  sourceValue.positionType(),
161
214
  yogaStyle.positionType());
162
215
  yogaStyle.flexWrap() = convertRawProp(
163
- rawProps, "flexWrap", sourceValue.flexWrap(), yogaStyle.flexWrap());
216
+ context,
217
+ rawProps,
218
+ "flexWrap",
219
+ sourceValue.flexWrap(),
220
+ yogaStyle.flexWrap());
164
221
  yogaStyle.overflow() = convertRawProp(
165
- rawProps, "overflow", sourceValue.overflow(), yogaStyle.overflow());
222
+ context,
223
+ rawProps,
224
+ "overflow",
225
+ sourceValue.overflow(),
226
+ yogaStyle.overflow());
166
227
  yogaStyle.display() = convertRawProp(
167
- rawProps, "display", sourceValue.display(), yogaStyle.display());
168
- yogaStyle.flex() =
169
- convertRawProp(rawProps, "flex", sourceValue.flex(), yogaStyle.flex());
228
+ context, rawProps, "display", sourceValue.display(), yogaStyle.display());
229
+ yogaStyle.flex() = convertRawProp(
230
+ context, rawProps, "flex", sourceValue.flex(), yogaStyle.flex());
170
231
  yogaStyle.flexGrow() = convertRawProp(
171
- rawProps, "flexGrow", sourceValue.flexGrow(), yogaStyle.flexGrow());
232
+ context,
233
+ rawProps,
234
+ "flexGrow",
235
+ sourceValue.flexGrow(),
236
+ yogaStyle.flexGrow());
172
237
  yogaStyle.flexShrink() = convertRawProp(
173
- rawProps, "flexShrink", sourceValue.flexShrink(), yogaStyle.flexShrink());
238
+ context,
239
+ rawProps,
240
+ "flexShrink",
241
+ sourceValue.flexShrink(),
242
+ yogaStyle.flexShrink());
174
243
  yogaStyle.flexBasis() = convertRawProp(
175
- rawProps, "flexBasis", sourceValue.flexBasis(), yogaStyle.flexBasis());
244
+ context,
245
+ rawProps,
246
+ "flexBasis",
247
+ sourceValue.flexBasis(),
248
+ yogaStyle.flexBasis());
176
249
  yogaStyle.margin() = convertRawProp(
177
- rawProps, "margin", "", sourceValue.margin(), yogaStyle.margin());
178
- yogaStyle.position() =
179
- convertRawProp(rawProps, sourceValue.position(), yogaStyle.position());
250
+ context,
251
+ rawProps,
252
+ "margin",
253
+ "",
254
+ sourceValue.margin(),
255
+ yogaStyle.margin());
256
+ yogaStyle.position() = convertRawProp(
257
+ context, rawProps, sourceValue.position(), yogaStyle.position());
180
258
  yogaStyle.padding() = convertRawProp(
181
- rawProps, "padding", "", sourceValue.padding(), yogaStyle.padding());
259
+ context,
260
+ rawProps,
261
+ "padding",
262
+ "",
263
+ sourceValue.padding(),
264
+ yogaStyle.padding());
182
265
  yogaStyle.border() = convertRawProp(
183
- rawProps, "border", "Width", sourceValue.border(), yogaStyle.border());
266
+ context,
267
+ rawProps,
268
+ "border",
269
+ "Width",
270
+ sourceValue.border(),
271
+ yogaStyle.border());
184
272
  yogaStyle.dimensions() = convertRawProp(
273
+ context,
185
274
  rawProps,
186
275
  "width",
187
276
  "height",
188
277
  sourceValue.dimensions(),
189
278
  yogaStyle.dimensions());
190
279
  yogaStyle.minDimensions() = convertRawProp(
280
+ context,
191
281
  rawProps,
192
282
  "minWidth",
193
283
  "minHeight",
194
284
  sourceValue.minDimensions(),
195
285
  yogaStyle.minDimensions());
196
286
  yogaStyle.maxDimensions() = convertRawProp(
287
+ context,
197
288
  rawProps,
198
289
  "maxWidth",
199
290
  "maxHeight",
200
291
  sourceValue.maxDimensions(),
201
292
  yogaStyle.maxDimensions());
202
293
  yogaStyle.aspectRatio() = convertRawProp(
294
+ context,
203
295
  rawProps,
204
296
  "aspectRatio",
205
297
  sourceValue.aspectRatio(),
@@ -209,6 +301,7 @@ static inline YGStyle convertRawProp(
209
301
 
210
302
  template <typename T>
211
303
  static inline CascadedRectangleCorners<T> convertRawProp(
304
+ const PropsParserContext &context,
212
305
  RawProps const &rawProps,
213
306
  char const *prefix,
214
307
  char const *suffix,
@@ -217,6 +310,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
217
310
  CascadedRectangleCorners<T> result;
218
311
 
219
312
  result.topLeft = convertRawProp(
313
+ context,
220
314
  rawProps,
221
315
  "TopLeft",
222
316
  sourceValue.topLeft,
@@ -224,6 +318,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
224
318
  prefix,
225
319
  suffix);
226
320
  result.topRight = convertRawProp(
321
+ context,
227
322
  rawProps,
228
323
  "TopRight",
229
324
  sourceValue.topRight,
@@ -231,6 +326,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
231
326
  prefix,
232
327
  suffix);
233
328
  result.bottomLeft = convertRawProp(
329
+ context,
234
330
  rawProps,
235
331
  "BottomLeft",
236
332
  sourceValue.bottomLeft,
@@ -238,6 +334,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
238
334
  prefix,
239
335
  suffix);
240
336
  result.bottomRight = convertRawProp(
337
+ context,
241
338
  rawProps,
242
339
  "BottomRight",
243
340
  sourceValue.bottomRight,
@@ -246,6 +343,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
246
343
  suffix);
247
344
 
248
345
  result.topStart = convertRawProp(
346
+ context,
249
347
  rawProps,
250
348
  "TopStart",
251
349
  sourceValue.topStart,
@@ -253,6 +351,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
253
351
  prefix,
254
352
  suffix);
255
353
  result.topEnd = convertRawProp(
354
+ context,
256
355
  rawProps,
257
356
  "TopEnd",
258
357
  sourceValue.topEnd,
@@ -260,6 +359,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
260
359
  prefix,
261
360
  suffix);
262
361
  result.bottomStart = convertRawProp(
362
+ context,
263
363
  rawProps,
264
364
  "BottomStart",
265
365
  sourceValue.bottomStart,
@@ -267,6 +367,7 @@ static inline CascadedRectangleCorners<T> convertRawProp(
267
367
  prefix,
268
368
  suffix);
269
369
  result.bottomEnd = convertRawProp(
370
+ context,
270
371
  rawProps,
271
372
  "BottomEnd",
272
373
  sourceValue.bottomEnd,
@@ -275,13 +376,14 @@ static inline CascadedRectangleCorners<T> convertRawProp(
275
376
  suffix);
276
377
 
277
378
  result.all = convertRawProp(
278
- rawProps, "", sourceValue.all, defaultValue.all, prefix, suffix);
379
+ context, rawProps, "", sourceValue.all, defaultValue.all, prefix, suffix);
279
380
 
280
381
  return result;
281
382
  }
282
383
 
283
384
  template <typename T>
284
385
  static inline CascadedRectangleEdges<T> convertRawProp(
386
+ const PropsParserContext &context,
285
387
  RawProps const &rawProps,
286
388
  char const *prefix,
287
389
  char const *suffix,
@@ -290,12 +392,31 @@ static inline CascadedRectangleEdges<T> convertRawProp(
290
392
  CascadedRectangleEdges<T> result;
291
393
 
292
394
  result.left = convertRawProp(
293
- rawProps, "Left", sourceValue.left, defaultValue.left, prefix, suffix);
395
+ context,
396
+ rawProps,
397
+ "Left",
398
+ sourceValue.left,
399
+ defaultValue.left,
400
+ prefix,
401
+ suffix);
294
402
  result.right = convertRawProp(
295
- rawProps, "Right", sourceValue.right, defaultValue.right, prefix, suffix);
403
+ context,
404
+ rawProps,
405
+ "Right",
406
+ sourceValue.right,
407
+ defaultValue.right,
408
+ prefix,
409
+ suffix);
296
410
  result.top = convertRawProp(
297
- rawProps, "Top", sourceValue.top, defaultValue.top, prefix, suffix);
411
+ context,
412
+ rawProps,
413
+ "Top",
414
+ sourceValue.top,
415
+ defaultValue.top,
416
+ prefix,
417
+ suffix);
298
418
  result.bottom = convertRawProp(
419
+ context,
299
420
  rawProps,
300
421
  "Bottom",
301
422
  sourceValue.bottom,
@@ -304,10 +425,23 @@ static inline CascadedRectangleEdges<T> convertRawProp(
304
425
  suffix);
305
426
 
306
427
  result.start = convertRawProp(
307
- rawProps, "Start", sourceValue.start, defaultValue.start, prefix, suffix);
428
+ context,
429
+ rawProps,
430
+ "Start",
431
+ sourceValue.start,
432
+ defaultValue.start,
433
+ prefix,
434
+ suffix);
308
435
  result.end = convertRawProp(
309
- rawProps, "End", sourceValue.end, defaultValue.end, prefix, suffix);
436
+ context,
437
+ rawProps,
438
+ "End",
439
+ sourceValue.end,
440
+ defaultValue.end,
441
+ prefix,
442
+ suffix);
310
443
  result.horizontal = convertRawProp(
444
+ context,
311
445
  rawProps,
312
446
  "Horizontal",
313
447
  sourceValue.horizontal,
@@ -315,6 +449,7 @@ static inline CascadedRectangleEdges<T> convertRawProp(
315
449
  prefix,
316
450
  suffix);
317
451
  result.vertical = convertRawProp(
452
+ context,
318
453
  rawProps,
319
454
  "Vertical",
320
455
  sourceValue.vertical,
@@ -323,7 +458,7 @@ static inline CascadedRectangleEdges<T> convertRawProp(
323
458
  suffix);
324
459
 
325
460
  result.all = convertRawProp(
326
- rawProps, "", sourceValue.all, defaultValue.all, prefix, suffix);
461
+ context, rawProps, "", sourceValue.all, defaultValue.all, prefix, suffix);
327
462
 
328
463
  return result;
329
464
  }
@@ -14,7 +14,9 @@
14
14
  #include <react/renderer/components/root/RootComponentDescriptor.h>
15
15
  #include <react/renderer/components/scrollview/ScrollViewComponentDescriptor.h>
16
16
  #include <react/renderer/components/view/ViewComponentDescriptor.h>
17
+ #include <react/renderer/core/PropsParserContext.h>
17
18
  #include <react/renderer/element/ComponentBuilder.h>
19
+
18
20
  #include <react/renderer/element/Element.h>
19
21
  #include <react/renderer/element/testUtils.h>
20
22
 
@@ -85,14 +87,17 @@ class YogaDirtyFlagTest : public ::testing::Test {
85
87
  };
86
88
 
87
89
  TEST_F(YogaDirtyFlagTest, cloningPropsWithoutChangingThem) {
90
+ ContextContainer contextContainer{};
91
+ PropsParserContext parserContext{-1, contextContainer};
92
+
88
93
  /*
89
94
  * Cloning props without changing them must *not* dirty a Yoga node.
90
95
  */
91
96
  auto newRootShadowNode = rootShadowNode_->cloneTree(
92
- innerShadowNode_->getFamily(), [](ShadowNode const &oldShadowNode) {
97
+ innerShadowNode_->getFamily(), [&](ShadowNode const &oldShadowNode) {
93
98
  auto &componentDescriptor = oldShadowNode.getComponentDescriptor();
94
99
  auto props = componentDescriptor.cloneProps(
95
- oldShadowNode.getProps(), RawProps());
100
+ parserContext, oldShadowNode.getProps(), RawProps());
96
101
  return oldShadowNode.clone(ShadowNodeFragment{props});
97
102
  });
98
103
 
@@ -15,7 +15,7 @@ LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp)
15
15
 
16
16
  LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../
17
17
 
18
- LOCAL_SHARED_LIBRARIES := libfolly_json libjsi libfolly_futures libreact_utils libreact_debug libreact_render_debug libreact_render_graphics
18
+ LOCAL_SHARED_LIBRARIES := libfolly_json libjsi libfolly_futures libreact_utils libreact_debug libreact_render_debug libreact_render_graphics libglog
19
19
 
20
20
  LOCAL_CFLAGS := \
21
21
  -DLOG_TAG=\"Fabric\"