react-native-tvos 0.82.1-0 → 0.83.0-0

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 (1432) hide show
  1. package/Libraries/Animated/components/AnimatedFlatList.js +5 -3
  2. package/Libraries/Animated/components/AnimatedImage.js +4 -3
  3. package/Libraries/Animated/components/AnimatedSectionList.js +2 -2
  4. package/Libraries/Animated/components/AnimatedText.js +7 -3
  5. package/Libraries/Animated/components/AnimatedView.js +3 -2
  6. package/Libraries/Animated/createAnimatedComponent.js +24 -12
  7. package/Libraries/Animated/nodes/AnimatedColor.js +26 -10
  8. package/Libraries/AppDelegate/RCTAppDelegate.h +0 -2
  9. package/Libraries/AppDelegate/RCTAppDelegate.mm +1 -0
  10. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +16 -4
  11. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +5 -3
  12. package/Libraries/AppDelegate/RCTReactNativeFactory.h +3 -0
  13. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +36 -1
  14. package/Libraries/AppDelegate/RCTRootViewFactory.h +13 -1
  15. package/Libraries/AppDelegate/RCTRootViewFactory.mm +33 -6
  16. package/Libraries/Blob/RCTBlobCollector.mm +1 -1
  17. package/Libraries/Blob/RCTFileReaderModule.mm +6 -9
  18. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +43 -15
  19. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +2 -2
  20. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +2 -2
  21. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +2 -2
  22. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +3 -3
  23. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +2 -2
  24. package/Libraries/Components/ScrollView/ScrollView.js +1 -0
  25. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +6 -6
  26. package/Libraries/Components/Switch/Switch.d.ts +2 -2
  27. package/Libraries/Components/TextInput/TextInput.d.ts +2 -5
  28. package/Libraries/Components/TextInput/TextInput.js +6 -0
  29. package/Libraries/Components/Touchable/TouchableBounce.js +7 -7
  30. package/Libraries/Components/View/ReactNativeStyleAttributes.js +19 -1
  31. package/Libraries/Components/View/View.d.ts +2 -2
  32. package/Libraries/Components/View/ViewNativeComponent.js +14 -0
  33. package/Libraries/Core/ReactNativeVersion.js +2 -2
  34. package/Libraries/Core/setUpPerformance.js +2 -0
  35. package/Libraries/Debugging/DebuggingOverlay.js +14 -14
  36. package/Libraries/Debugging/DebuggingOverlayRegistry.js +8 -2
  37. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +5 -2
  38. package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +39 -23
  39. package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +25 -15
  40. package/Libraries/Image/Image.d.ts +3 -3
  41. package/Libraries/Image/ImageInjection.js +3 -6
  42. package/Libraries/Image/ImageTypes.flow.js +3 -7
  43. package/Libraries/Image/RCTBundleAssetImageLoader.mm +2 -2
  44. package/Libraries/Image/RCTGIFImageDecoder.mm +2 -2
  45. package/Libraries/Image/RCTImageBlurUtils.mm +6 -5
  46. package/Libraries/Image/RCTImageEditingManager.mm +3 -5
  47. package/Libraries/Image/RCTImageLoader.mm +26 -37
  48. package/Libraries/Image/RCTImageShadowView.h +1 -1
  49. package/Libraries/Image/RCTImageShadowView.mm +1 -1
  50. package/Libraries/Image/RCTImageStoreManager.mm +13 -15
  51. package/Libraries/Image/RCTImageUtils.mm +41 -30
  52. package/Libraries/Image/RCTImageView.h +2 -2
  53. package/Libraries/Image/RCTImageView.mm +2 -2
  54. package/Libraries/Image/RCTImageViewManager.h +2 -2
  55. package/Libraries/Image/RCTImageViewManager.mm +13 -18
  56. package/Libraries/Image/RCTLocalAssetImageLoader.mm +2 -2
  57. package/Libraries/LinkingIOS/RCTLinkingManager.mm +8 -14
  58. package/Libraries/Lists/FlatList.js +8 -8
  59. package/Libraries/Lists/SectionList.d.ts +5 -1
  60. package/Libraries/Lists/ViewabilityHelper.js +1 -1
  61. package/Libraries/Lists/VirtualizedList.js +1 -0
  62. package/Libraries/LogBox/UI/AnsiHighlight.js +4 -1
  63. package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.mm +1 -1
  64. package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.mm +9 -9
  65. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +3 -3
  66. package/Libraries/NativeAnimation/Nodes/RCTObjectAnimatedNode.mm +1 -1
  67. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.mm +3 -3
  68. package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.mm +1 -1
  69. package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.mm +1 -1
  70. package/Libraries/NativeAnimation/RCTAnimationUtils.mm +8 -2
  71. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +9 -13
  72. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +9 -9
  73. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +9 -13
  74. package/Libraries/NativeComponent/BaseViewConfig.android.js +11 -2
  75. package/Libraries/NativeComponent/NativeComponentRegistry.d.ts +98 -0
  76. package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -0
  77. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +3 -1
  78. package/Libraries/Network/RCTDataRequestHandler.mm +4 -4
  79. package/Libraries/Network/RCTHTTPRequestHandler.h +1 -1
  80. package/Libraries/Network/RCTHTTPRequestHandler.mm +4 -4
  81. package/Libraries/Network/RCTInspectorNetworkReporter.h +8 -8
  82. package/Libraries/Network/RCTInspectorNetworkReporter.mm +20 -22
  83. package/Libraries/Network/RCTNetworkTask.h +5 -1
  84. package/Libraries/Network/RCTNetworkTask.mm +13 -0
  85. package/Libraries/Network/RCTNetworking+Internal.h +21 -0
  86. package/Libraries/Network/RCTNetworking.android.js +3 -1
  87. package/Libraries/Network/RCTNetworking.h +3 -0
  88. package/Libraries/Network/RCTNetworking.ios.js +3 -0
  89. package/Libraries/Network/RCTNetworking.mm +84 -37
  90. package/Libraries/Network/React-RCTNetwork.podspec +1 -0
  91. package/Libraries/Network/XMLHttpRequest.js +1 -41
  92. package/Libraries/Pressability/usePressability.js +14 -3
  93. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +5 -7
  94. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +20 -82
  95. package/Libraries/ReactNative/getNativeComponentAttributes.js +12 -0
  96. package/Libraries/Renderer/implementations/ReactFabric-dev.js +6759 -4478
  97. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3169 -3119
  98. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4732 -3535
  99. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +6646 -4070
  100. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3136 -2825
  101. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4761 -3312
  102. package/Libraries/Renderer/shims/ReactNative.js +3 -1
  103. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -1
  104. package/Libraries/Required/RCTRequired.h +14 -10
  105. package/Libraries/Settings/RCTSettingsManager.mm +2 -2
  106. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  107. package/Libraries/StyleSheet/StyleSheetTypes.js +44 -0
  108. package/Libraries/StyleSheet/processBackgroundPosition.js +284 -0
  109. package/Libraries/StyleSheet/processBackgroundRepeat.js +105 -0
  110. package/Libraries/StyleSheet/processBackgroundSize.js +104 -0
  111. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +2 -2
  112. package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +2 -2
  113. package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +2 -2
  114. package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +2 -2
  115. package/Libraries/Text/RCTTextAttributes.h +2 -2
  116. package/Libraries/Text/RCTTextAttributes.mm +2 -2
  117. package/Libraries/Text/RawText/RCTRawTextShadowView.h +2 -2
  118. package/Libraries/Text/RawText/RCTRawTextShadowView.mm +2 -2
  119. package/Libraries/Text/RawText/RCTRawTextViewManager.h +2 -2
  120. package/Libraries/Text/RawText/RCTRawTextViewManager.mm +2 -2
  121. package/Libraries/Text/Text/RCTTextShadowView.h +2 -2
  122. package/Libraries/Text/Text/RCTTextShadowView.mm +6 -7
  123. package/Libraries/Text/Text/RCTTextView.h +2 -2
  124. package/Libraries/Text/Text/RCTTextView.mm +2 -2
  125. package/Libraries/Text/Text/RCTTextViewManager.h +2 -2
  126. package/Libraries/Text/Text/RCTTextViewManager.mm +2 -2
  127. package/Libraries/Text/Text.d.ts +2 -2
  128. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +2 -2
  129. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +2 -2
  130. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +2 -2
  131. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +2 -2
  132. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +2 -2
  133. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +6 -7
  134. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +2 -2
  135. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +2 -2
  136. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +2 -2
  137. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +6 -9
  138. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +2 -2
  139. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +2 -2
  140. package/Libraries/Text/TextInput/RCTInputAccessoryView.h +2 -2
  141. package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +2 -2
  142. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +2 -2
  143. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +2 -2
  144. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +2 -2
  145. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +2 -2
  146. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +2 -2
  147. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +2 -2
  148. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +2 -2
  149. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +2 -2
  150. package/Libraries/Text/TextNativeComponent.js +10 -0
  151. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +2 -2
  152. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +2 -2
  153. package/Libraries/Text/VirtualText/RCTVirtualTextView.h +2 -2
  154. package/Libraries/Text/VirtualText/RCTVirtualTextView.mm +2 -2
  155. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +2 -2
  156. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +2 -2
  157. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -9
  158. package/Libraries/TypeSafety/RCTConvertHelpers.h +1 -1
  159. package/Libraries/TypeSafety/RCTTypedModuleConstants.mm +3 -5
  160. package/Libraries/Utilities/DevLoadingView.js +14 -6
  161. package/Libraries/Utilities/HMRClient.js +13 -5
  162. package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +2 -2
  163. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +2 -2
  164. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +2 -2
  165. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +2 -2
  166. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +2 -2
  167. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +2 -2
  168. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +2 -2
  169. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +2 -2
  170. package/Libraries/Wrapper/RCTWrapper.h +2 -2
  171. package/Libraries/Wrapper/RCTWrapperShadowView.h +2 -2
  172. package/Libraries/Wrapper/RCTWrapperShadowView.m +2 -2
  173. package/Libraries/Wrapper/RCTWrapperView.h +2 -2
  174. package/Libraries/Wrapper/RCTWrapperView.m +2 -2
  175. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +2 -2
  176. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +2 -2
  177. package/Libraries/Wrapper/RCTWrapperViewManager.h +2 -2
  178. package/Libraries/Wrapper/RCTWrapperViewManager.m +2 -2
  179. package/README-core.md +5 -2
  180. package/React/Base/RCTAssert.h +7 -42
  181. package/React/Base/RCTAssert.m +1 -113
  182. package/React/Base/RCTBridge+Private.h +4 -4
  183. package/React/Base/RCTBridge.mm +5 -6
  184. package/React/Base/RCTBridgeDelegate.h +2 -2
  185. package/React/Base/RCTBridgeModule.h +24 -10
  186. package/React/Base/RCTBridgeProxy.mm +8 -8
  187. package/React/Base/RCTBundleManager.h +2 -2
  188. package/React/Base/RCTBundleManager.m +10 -10
  189. package/React/Base/RCTBundleURLProvider.mm +4 -4
  190. package/React/Base/RCTCallableJSModules.m +6 -6
  191. package/React/Base/RCTConvert.h +8 -3
  192. package/React/Base/RCTConvert.mm +2 -2
  193. package/React/Base/RCTDefines.h +0 -10
  194. package/React/Base/RCTJavaScriptExecutor.h +2 -2
  195. package/React/Base/RCTLog.h +6 -4
  196. package/React/Base/RCTMockDef.h +3 -6
  197. package/React/Base/RCTModuleData.mm +3 -3
  198. package/React/Base/RCTModuleMethod.mm +13 -11
  199. package/React/Base/RCTModuleRegistry.m +8 -8
  200. package/React/Base/RCTRootContentView.h +2 -2
  201. package/React/Base/RCTRootContentView.m +2 -2
  202. package/React/Base/RCTRootView.m +3 -3
  203. package/React/Base/RCTRootViewInternal.h +2 -2
  204. package/React/Base/RCTUtils.mm +5 -5
  205. package/React/Base/RCTVersion.m +2 -2
  206. package/React/Base/RCTViewRegistry.m +8 -8
  207. package/React/Base/Surface/RCTSurface.mm +3 -4
  208. package/React/Base/Surface/RCTSurfaceRootShadowView.m +3 -3
  209. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceSizeMeasureMode.mm +4 -4
  210. package/React/CoreModules/RCTAccessibilityManager.mm +25 -30
  211. package/React/CoreModules/RCTActionSheetManager.mm +38 -20
  212. package/React/CoreModules/RCTAlertController.mm +2 -2
  213. package/React/CoreModules/RCTAlertManager.mm +2 -2
  214. package/React/CoreModules/RCTAppearance.h +1 -1
  215. package/React/CoreModules/RCTDevLoadingView.mm +6 -14
  216. package/React/CoreModules/RCTDevMenu.h +30 -1
  217. package/React/CoreModules/RCTDevMenu.mm +99 -19
  218. package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +23 -0
  219. package/React/CoreModules/RCTDevMenuConfigurationDecorator.mm +52 -0
  220. package/React/CoreModules/RCTDevSettings.h +5 -0
  221. package/React/CoreModules/RCTDevSettings.mm +8 -1
  222. package/React/CoreModules/RCTDevToolsRuntimeSettingsModule.mm +2 -2
  223. package/React/CoreModules/RCTDeviceInfo.h +2 -0
  224. package/React/CoreModules/RCTDeviceInfo.mm +21 -4
  225. package/React/CoreModules/RCTEventDispatcher.mm +10 -8
  226. package/React/CoreModules/RCTExceptionsManager.mm +13 -15
  227. package/React/CoreModules/RCTFPSGraph.mm +3 -3
  228. package/React/CoreModules/RCTLogBox.mm +8 -8
  229. package/React/CoreModules/RCTLogBoxView.h +2 -2
  230. package/React/CoreModules/RCTLogBoxView.mm +7 -9
  231. package/React/CoreModules/RCTPerfMonitor.mm +19 -19
  232. package/React/CoreModules/RCTTiming.mm +3 -5
  233. package/React/CoreModules/RCTWebSocketModule.mm +3 -5
  234. package/React/CoreModules/React-CoreModules.podspec +1 -0
  235. package/React/CxxBridge/RCTCxxBridge.mm +9 -28
  236. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +3 -4
  237. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +2 -2
  238. package/React/CxxBridge/RCTMessageThread.h +6 -7
  239. package/React/CxxBridge/RCTMessageThread.mm +1 -1
  240. package/React/CxxBridge/RCTObjcExecutor.h +4 -7
  241. package/React/CxxBridge/RCTObjcExecutor.mm +5 -5
  242. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.h +1 -1
  243. package/React/CxxModule/DispatchMessageQueueThread.h +2 -2
  244. package/React/CxxModule/RCTCxxMethod.mm +1 -1
  245. package/React/CxxModule/RCTCxxUtils.h +2 -2
  246. package/React/CxxModule/RCTCxxUtils.mm +8 -7
  247. package/React/CxxModule/RCTNativeModule.h +8 -12
  248. package/React/CxxModule/RCTNativeModule.mm +7 -7
  249. package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -4
  250. package/React/DevSupport/RCTInspectorNetworkHelper.mm +2 -2
  251. package/React/DevSupport/RCTPackagerConnection.h +1 -1
  252. package/React/DevSupport/RCTPackagerConnection.mm +1 -0
  253. package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +1 -1
  254. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +6 -0
  255. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +3709 -5764
  256. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +8 -2
  257. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +1 -0
  258. package/React/Fabric/AppleEventBeat.h +3 -4
  259. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +2 -2
  260. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +6 -2
  261. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +2 -1
  262. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +311 -51
  263. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +3 -11
  264. package/React/Fabric/Mounting/RCTMountingManager.mm +1 -1
  265. package/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.h +7 -10
  266. package/React/Fabric/RCTSurfacePointerHandler.mm +1 -1
  267. package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -1
  268. package/React/Fabric/Utils/PlatformRunLoopObserver.h +5 -11
  269. package/React/Fabric/Utils/PlatformRunLoopObserver.mm +1 -1
  270. package/React/Fabric/Utils/RCTBackgroundImageUtils.h +28 -0
  271. package/React/Fabric/Utils/RCTBackgroundImageUtils.mm +209 -0
  272. package/React/Fabric/Utils/RCTBoxShadow.mm +1 -1
  273. package/React/Fabric/Utils/RCTGradientUtils.mm +4 -0
  274. package/React/Fabric/Utils/RCTIdentifierPool.h +6 -3
  275. package/React/Fabric/Utils/RCTLinearGradient.mm +1 -0
  276. package/React/Fabric/Utils/RCTRadialGradient.mm +11 -9
  277. package/React/Inspector/RCTCxxInspectorPackagerConnectionDelegate.h +5 -8
  278. package/React/Inspector/RCTCxxInspectorPackagerConnectionDelegate.mm +1 -1
  279. package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +2 -2
  280. package/React/Modules/RCTUIManager.mm +36 -55
  281. package/React/Profiler/RCTProfile.h +6 -6
  282. package/React/Profiler/RCTProfile.m +47 -44
  283. package/React/React-RCTFabric.podspec +2 -1
  284. package/React/Runtime/React-RCTRuntime.podspec +1 -0
  285. package/React/Views/RCTActivityIndicatorView.h +2 -2
  286. package/React/Views/RCTActivityIndicatorView.m +2 -2
  287. package/React/Views/RCTActivityIndicatorViewManager.h +3 -3
  288. package/React/Views/RCTActivityIndicatorViewManager.m +2 -2
  289. package/React/Views/RCTBorderDrawing.h +1 -1
  290. package/React/Views/RCTBorderDrawing.m +37 -35
  291. package/React/Views/RCTComponentData.mm +19 -19
  292. package/React/Views/RCTConvert+CoreLocation.m +2 -2
  293. package/React/Views/RCTDebuggingOverlayManager.h +2 -2
  294. package/React/Views/RCTDebuggingOverlayManager.m +2 -2
  295. package/React/Views/RCTFont+Private.h +16 -0
  296. package/React/Views/RCTFont.h +3 -1
  297. package/React/Views/RCTFont.mm +13 -2
  298. package/React/Views/RCTLayout.m +21 -25
  299. package/React/Views/RCTModalHostView.h +2 -2
  300. package/React/Views/RCTModalHostView.m +2 -2
  301. package/React/Views/RCTModalHostViewController.h +2 -2
  302. package/React/Views/RCTModalHostViewController.m +2 -2
  303. package/React/Views/RCTModalHostViewManager.h +2 -2
  304. package/React/Views/RCTModalHostViewManager.m +2 -2
  305. package/React/Views/RCTModalManager.h +2 -2
  306. package/React/Views/RCTModalManager.m +2 -2
  307. package/React/Views/RCTRootShadowView.m +3 -3
  308. package/React/Views/RCTShadowView+Layout.m +12 -15
  309. package/React/Views/RCTShadowView.m +5 -6
  310. package/React/Views/RCTSwitch.h +2 -2
  311. package/React/Views/RCTSwitch.m +2 -2
  312. package/React/Views/RCTSwitchManager.h +2 -2
  313. package/React/Views/RCTSwitchManager.m +2 -2
  314. package/React/Views/RCTViewManager.m +2 -2
  315. package/React/Views/RefreshControl/RCTRefreshControl.h +2 -2
  316. package/React/Views/RefreshControl/RCTRefreshControl.m +2 -2
  317. package/React/Views/RefreshControl/RCTRefreshControlManager.h +2 -2
  318. package/React/Views/RefreshControl/RCTRefreshControlManager.m +2 -2
  319. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.h +2 -2
  320. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +2 -2
  321. package/React/Views/SafeAreaView/RCTSafeAreaView.h +2 -2
  322. package/React/Views/SafeAreaView/RCTSafeAreaView.m +2 -2
  323. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.h +2 -2
  324. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.m +2 -2
  325. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.h +2 -2
  326. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +2 -2
  327. package/React/Views/ScrollView/RCTScrollContentShadowView.h +2 -2
  328. package/React/Views/ScrollView/RCTScrollContentShadowView.m +2 -2
  329. package/React/Views/ScrollView/RCTScrollContentView.h +2 -2
  330. package/React/Views/ScrollView/RCTScrollContentView.m +2 -2
  331. package/React/Views/ScrollView/RCTScrollContentViewManager.h +2 -2
  332. package/React/Views/ScrollView/RCTScrollContentViewManager.m +2 -2
  333. package/React/Views/ScrollView/RCTScrollView.h +2 -2
  334. package/React/Views/ScrollView/RCTScrollView.m +6 -7
  335. package/React/Views/ScrollView/RCTScrollViewManager.h +3 -3
  336. package/React/Views/ScrollView/RCTScrollViewManager.m +4 -7
  337. package/ReactAndroid/api/ReactAndroid.api +92 -10
  338. package/ReactAndroid/build.gradle.kts +8 -5
  339. package/ReactAndroid/external-artifacts/build.gradle.kts +2 -47
  340. package/ReactAndroid/gradle.properties +1 -1
  341. package/ReactAndroid/hermes-engine/build.gradle.kts +4 -11
  342. package/ReactAndroid/proguard-rules.pro +5 -0
  343. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +25 -1
  344. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +5 -1
  345. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +21 -0
  346. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +0 -11
  347. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +2 -2
  348. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +1 -1
  349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.kt +1 -1
  350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +37 -9
  351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +87 -50
  352. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +1 -7
  353. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +1 -1
  354. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +1 -0
  355. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +13 -3
  356. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevMenuConfiguration.kt +20 -0
  357. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +5 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +134 -31
  359. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +13 -1
  360. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +7 -0
  361. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +2 -0
  362. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +16 -0
  363. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorDevHelper.kt +4 -0
  364. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +13 -2
  365. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +108 -0
  366. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +219 -0
  367. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +4 -9
  368. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +41 -56
  369. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +47 -32
  370. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +13 -26
  371. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +143 -5
  372. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DestroyUnmountedViewMountItem.kt +3 -3
  373. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +2 -4
  374. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PrefetchResourcesMountItem.kt +35 -0
  375. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +6 -6
  376. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SynchronousMountItem.kt +38 -0
  377. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +101 -11
  378. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +170 -20
  379. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +35 -5
  380. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +40 -10
  381. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +188 -23
  382. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +2 -2
  383. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -1
  384. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +3 -9
  385. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +35 -5
  386. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -3
  387. package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +109 -0
  388. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +3 -3
  389. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +12 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +9 -2
  391. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +3 -1
  392. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +2 -2
  393. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/InspectorNetworkReporter.kt +11 -11
  394. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +20 -11
  395. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +126 -11
  396. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.kt +20 -0
  397. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +3 -3
  398. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.kt +1 -10
  399. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  400. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +20 -4
  401. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +13 -2
  402. package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSTimerExecutor.kt +9 -4
  403. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +127 -91
  404. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +1 -1
  405. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +15 -12
  406. package/ReactAndroid/src/main/java/com/facebook/react/runtime/{BridgelessReactStateTracker.kt → ReactHostStateTracker.kt} +6 -7
  407. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +1 -5
  408. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.kt +9 -11
  409. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +0 -8
  410. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +261 -147
  411. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +14 -1
  412. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.kt +11 -1
  413. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverBinding.kt +12 -0
  414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +6 -1
  415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +16 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FloatUtil.kt +33 -0
  417. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +7 -9
  418. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +3 -5
  419. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.kt +66 -0
  420. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +1 -3
  421. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +2 -1
  422. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -6
  423. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -2
  424. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +3 -2
  425. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +3 -0
  426. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +0 -48
  427. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +415 -0
  428. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +15 -18
  429. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +22 -174
  430. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +1 -3
  431. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundPosition.kt +59 -0
  432. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundRepeat.kt +46 -0
  433. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundSize.kt +103 -0
  434. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +5 -5
  435. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BoxShadow.kt +1 -1
  436. package/ReactAndroid/src/main/java/com/facebook/react/views/image/MultiPostprocessor.kt +1 -1
  437. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +107 -14
  438. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +6 -0
  439. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +101 -16
  440. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +63 -18
  441. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +6 -0
  442. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +5 -1
  443. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +50 -51
  444. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateClassic.kt +92 -0
  445. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +526 -0
  446. package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.kt +4 -0
  447. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.kt +3 -5
  448. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +2 -0
  449. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.kt +7 -0
  450. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +4 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +16 -7
  452. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +22 -0
  453. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +78 -1
  454. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +16 -5
  455. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +61 -3
  456. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimentalManager.kt +2 -2
  457. package/ReactAndroid/src/main/jni/CMakeLists.txt +15 -0
  458. package/ReactAndroid/src/main/jni/first-party/fbgloginit/fb/glog_init.h +1 -1
  459. package/ReactAndroid/src/main/jni/first-party/fbgloginit/glog_init.cpp +1 -1
  460. package/ReactAndroid/src/main/jni/first-party/jni-hack/real/jni.h +656 -643
  461. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/jni_lib_merge.h +57 -59
  462. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +3 -2
  463. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +8 -1
  464. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnection.h +10 -12
  465. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionDelegateImpl.h +6 -14
  466. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.h +2 -4
  467. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocketDelegate.h +4 -8
  468. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +3 -4
  469. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorNetworkReporter.cpp +26 -23
  470. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorNetworkReporter.h +13 -21
  471. package/ReactAndroid/src/main/jni/react/fabric/AndroidEventBeat.h +4 -5
  472. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.h +2 -3
  473. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +53 -47
  474. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.h +3 -2
  475. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.h +4 -6
  476. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +5 -7
  477. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +87 -58
  478. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +12 -23
  479. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +22 -46
  480. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +6 -4
  481. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.h +7 -7
  482. package/ReactAndroid/src/main/jni/react/fabric/JFabricUIManager.h +2 -3
  483. package/ReactAndroid/src/main/jni/react/fabric/MountItem.h +11 -19
  484. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +3 -5
  485. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +5 -9
  486. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +236 -26
  487. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +51 -6
  488. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesMemoryDumper.h +13 -14
  489. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.h +4 -7
  490. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +2 -1
  491. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +5 -5
  492. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +23 -40
  493. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +7 -8
  494. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +6 -9
  495. package/ReactAndroid/src/main/jni/react/jni/InspectorNetworkRequestListener.h +5 -11
  496. package/ReactAndroid/src/main/jni/react/jni/JCallback.h +6 -6
  497. package/ReactAndroid/src/main/jni/react/jni/JDynamicNative.cpp +7 -4
  498. package/ReactAndroid/src/main/jni/react/jni/JDynamicNative.h +3 -3
  499. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.h +3 -4
  500. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h +1 -2
  501. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +8 -22
  502. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +3 -7
  503. package/ReactAndroid/src/main/jni/react/jni/JRuntimeExecutor.h +1 -2
  504. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +1 -2
  505. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  506. package/ReactAndroid/src/main/jni/react/jni/JSLoader.h +2 -5
  507. package/ReactAndroid/src/main/jni/react/jni/JSLogging.h +1 -1
  508. package/ReactAndroid/src/main/jni/react/jni/JWeakRefUtils.h +2 -2
  509. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +1 -1
  510. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +19 -28
  511. package/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h +6 -8
  512. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +1 -1
  513. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h +10 -17
  514. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +1 -1
  515. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h +11 -13
  516. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +10 -8
  517. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +6 -11
  518. package/ReactAndroid/src/main/jni/react/jni/NativeArray.h +7 -7
  519. package/ReactAndroid/src/main/jni/react/jni/NativeCommon.h +5 -6
  520. package/ReactAndroid/src/main/jni/react/jni/NativeMap.h +6 -6
  521. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +1 -1
  522. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +16 -28
  523. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.h +6 -8
  524. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.h +4 -9
  525. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.h +20 -12
  526. package/ReactAndroid/src/main/jni/react/jni/TransformHelper.h +1 -2
  527. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +6 -9
  528. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +7 -10
  529. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JReadableMapBuffer.h +3 -5
  530. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.h +1 -2
  531. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +7 -6
  532. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +5 -11
  533. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.h +12 -21
  534. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +4 -8
  535. package/ReactAndroid/src/main/jni/react/reactperflogger/reactperflogger/JNativeModulePerfLogger.h +2 -4
  536. package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/ReactCommon/CxxReactPackage.h +3 -4
  537. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.h +5 -11
  538. package/ReactAndroid/src/main/jni/react/runtime/jni/JBindingsInstaller.h +2 -4
  539. package/ReactAndroid/src/main/jni/react/runtime/jni/JJSRuntimeFactory.h +2 -4
  540. package/ReactAndroid/src/main/jni/react/runtime/jni/JJSTimerExecutor.cpp +6 -0
  541. package/ReactAndroid/src/main/jni/react/runtime/jni/JJSTimerExecutor.h +6 -5
  542. package/ReactAndroid/src/main/jni/react/runtime/jni/JJavaTimerManager.h +1 -2
  543. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +3 -7
  544. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +15 -12
  545. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +44 -58
  546. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -10
  547. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.h +14 -36
  548. package/ReactAndroid/src/main/jni/react/runtime/jni/JavaTimerRegistry.h +1 -2
  549. package/ReactAndroid/src/main/jni/react/tracing/OnLoad.cpp +16 -0
  550. package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.cpp +241 -0
  551. package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.h +63 -0
  552. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.h +7 -14
  553. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.h +3 -3
  554. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.h +5 -7
  555. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +9 -19
  556. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManagerDelegate.h +6 -8
  557. package/ReactAndroid/src/main/jni/react/uimanager/ComponentNameResolverBinding.h +2 -4
  558. package/ReactAndroid/src/main/jni/react/uimanager/UIConstantsProviderBinding.h +19 -30
  559. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -0
  560. package/ReactAndroid/src/main/res/views/uimanager/values-bn/strings.xml +1 -1
  561. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.h +26 -0
  562. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +94 -0
  563. package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +39 -0
  564. package/ReactApple/RCTSwiftUI/RCTSwiftUIContainerView.swift +132 -0
  565. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIContainerViewWrapper.h +29 -0
  566. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIContainerViewWrapper.m +81 -0
  567. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +38 -0
  568. package/ReactCommon/React-Fabric.podspec +17 -0
  569. package/ReactCommon/callinvoker/ReactCommon/CallInvoker.h +13 -16
  570. package/ReactCommon/callinvoker/ReactCommon/tests/TestCallInvoker.h +10 -7
  571. package/ReactCommon/cxxreact/CxxModule.h +58 -87
  572. package/ReactCommon/cxxreact/CxxNativeModule.cpp +2 -2
  573. package/ReactCommon/cxxreact/CxxNativeModule.h +10 -19
  574. package/ReactCommon/cxxreact/ErrorUtils.h +4 -6
  575. package/ReactCommon/cxxreact/Instance.cpp +2 -2
  576. package/ReactCommon/cxxreact/Instance.h +24 -41
  577. package/ReactCommon/cxxreact/JSBigString.cpp +1 -1
  578. package/ReactCommon/cxxreact/JSBigString.h +28 -20
  579. package/ReactCommon/cxxreact/JSBundleType.h +5 -4
  580. package/ReactCommon/cxxreact/JSExecutor.cpp +2 -2
  581. package/ReactCommon/cxxreact/JSExecutor.h +22 -40
  582. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +2 -2
  583. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +13 -20
  584. package/ReactCommon/cxxreact/JSModulesUnbundle.h +7 -7
  585. package/ReactCommon/cxxreact/JsArgumentHelpers-inl.h +33 -41
  586. package/ReactCommon/cxxreact/JsArgumentHelpers.h +17 -26
  587. package/ReactCommon/cxxreact/MessageQueueThread.h +2 -2
  588. package/ReactCommon/cxxreact/MethodCall.cpp +2 -2
  589. package/ReactCommon/cxxreact/MethodCall.h +8 -10
  590. package/ReactCommon/cxxreact/ModuleRegistry.cpp +3 -3
  591. package/ReactCommon/cxxreact/ModuleRegistry.h +10 -23
  592. package/ReactCommon/cxxreact/MoveWrapper.h +17 -11
  593. package/ReactCommon/cxxreact/NativeModule.h +9 -15
  594. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -4
  595. package/ReactCommon/cxxreact/NativeToJsBridge.h +11 -17
  596. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +4 -4
  597. package/ReactCommon/cxxreact/RAMBundleRegistry.h +8 -11
  598. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -0
  599. package/ReactCommon/cxxreact/ReactMarker.h +15 -23
  600. package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
  601. package/ReactCommon/cxxreact/RecoverableError.h +6 -5
  602. package/ReactCommon/cxxreact/SystraceSection.h +4 -4
  603. package/ReactCommon/cxxreact/TraceSection.h +25 -35
  604. package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.h +9 -12
  605. package/ReactCommon/hermes/executor/HermesExecutorFactory.h +9 -14
  606. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +3 -2
  607. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +7 -14
  608. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.cpp +26 -25
  609. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.h +8 -11
  610. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.h +4 -3
  611. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +54 -0
  612. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.h +9 -15
  613. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +1 -3
  614. package/ReactCommon/jsc/JSCRuntime.cpp +85 -62
  615. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -1
  616. package/ReactCommon/jserrorhandler/JsErrorHandler.h +7 -21
  617. package/ReactCommon/jserrorhandler/StackTraceParser.h +1 -3
  618. package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +599 -233
  619. package/ReactCommon/jsi/jsi/decorator.h +112 -108
  620. package/ReactCommon/jsi/jsi/hermes.h +189 -0
  621. package/ReactCommon/jsi/jsi/instrumentation.h +3 -0
  622. package/ReactCommon/jsi/jsi/jsi.cpp +4 -0
  623. package/ReactCommon/jsi/jsi/test/testlib.cpp +86 -67
  624. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -0
  625. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +13 -8
  626. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +32 -43
  627. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +2 -2
  628. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.h +5 -8
  629. package/ReactCommon/jsinspector-modern/Base64.h +11 -10
  630. package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -0
  631. package/ReactCommon/jsinspector-modern/ConsoleMessage.h +13 -18
  632. package/ReactCommon/jsinspector-modern/EnumArray.h +46 -0
  633. package/ReactCommon/jsinspector-modern/ExecutionContext.h +14 -22
  634. package/ReactCommon/jsinspector-modern/FallbackRuntimeAgentDelegate.cpp +10 -9
  635. package/ReactCommon/jsinspector-modern/FallbackRuntimeAgentDelegate.h +2 -2
  636. package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.cpp +6 -0
  637. package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.h +7 -9
  638. package/ReactCommon/jsinspector-modern/HostAgent.cpp +124 -40
  639. package/ReactCommon/jsinspector-modern/HostAgent.h +30 -14
  640. package/ReactCommon/jsinspector-modern/HostTarget.cpp +75 -34
  641. package/ReactCommon/jsinspector-modern/HostTarget.h +73 -51
  642. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +7 -7
  643. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +9 -5
  644. package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -7
  645. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +42 -0
  646. package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +22 -16
  647. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +9 -7
  648. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.h +2 -4
  649. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +18 -29
  650. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +17 -15
  651. package/ReactCommon/jsinspector-modern/InstanceAgent.h +7 -10
  652. package/ReactCommon/jsinspector-modern/InstanceTarget.h +15 -22
  653. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +84 -68
  654. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +30 -34
  655. package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +6 -68
  656. package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +7 -28
  657. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
  658. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +52 -34
  659. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +10 -29
  660. package/ReactCommon/jsinspector-modern/RuntimeAgentDelegate.h +3 -2
  661. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +95 -18
  662. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +93 -44
  663. package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +43 -45
  664. package/ReactCommon/jsinspector-modern/RuntimeTargetNetwork.cpp +98 -0
  665. package/ReactCommon/jsinspector-modern/ScopedExecutor.h +43 -18
  666. package/ReactCommon/jsinspector-modern/SessionState.h +2 -2
  667. package/ReactCommon/jsinspector-modern/StackTrace.h +6 -5
  668. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +40 -26
  669. package/ReactCommon/jsinspector-modern/TracingAgent.h +10 -11
  670. package/ReactCommon/jsinspector-modern/UniqueMonostate.h +14 -9
  671. package/ReactCommon/jsinspector-modern/Utf8.h +4 -5
  672. package/ReactCommon/jsinspector-modern/WeakList.h +9 -5
  673. package/ReactCommon/jsinspector-modern/WebSocketInterfaces.h +1 -3
  674. package/ReactCommon/jsinspector-modern/cdp/CdpJson.cpp +2 -2
  675. package/ReactCommon/jsinspector-modern/cdp/CdpJson.h +6 -15
  676. package/ReactCommon/jsinspector-modern/network/BoundedRequestBuffer.cpp +2 -2
  677. package/ReactCommon/jsinspector-modern/network/BoundedRequestBuffer.h +3 -7
  678. package/ReactCommon/jsinspector-modern/network/CMakeLists.txt +1 -3
  679. package/ReactCommon/jsinspector-modern/network/CdpNetwork.cpp +9 -20
  680. package/ReactCommon/jsinspector-modern/network/CdpNetwork.h +7 -14
  681. package/ReactCommon/jsinspector-modern/network/HttpUtils.cpp +2 -1
  682. package/ReactCommon/jsinspector-modern/network/HttpUtils.h +4 -3
  683. package/ReactCommon/jsinspector-modern/network/NetworkHandler.cpp +246 -0
  684. package/ReactCommon/jsinspector-modern/network/NetworkHandler.h +147 -0
  685. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +0 -3
  686. package/ReactCommon/jsinspector-modern/tests/ConsoleApiTest.cpp +24 -14
  687. package/ReactCommon/jsinspector-modern/tests/DebuggerSessionObserverTest.cpp +195 -0
  688. package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.h +16 -22
  689. package/ReactCommon/jsinspector-modern/tests/GmockHelpers.h +25 -0
  690. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +8 -5
  691. package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +55 -57
  692. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +163 -124
  693. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +120 -24
  694. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.h +107 -43
  695. package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +825 -0
  696. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +15 -28
  697. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +9 -12
  698. package/ReactCommon/jsinspector-modern/tests/ReactNativeMocks.h +5 -4
  699. package/ReactCommon/jsinspector-modern/tests/UniquePtrFactory.h +21 -20
  700. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +0 -5
  701. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.h +4 -4
  702. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +6 -5
  703. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.h +4 -4
  704. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +12 -0
  705. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +6 -7
  706. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +2 -0
  707. package/ReactCommon/jsinspector-modern/tracing/ConsoleTimeStamp.cpp +22 -0
  708. package/ReactCommon/jsinspector-modern/tracing/ConsoleTimeStamp.h +8 -3
  709. package/ReactCommon/jsinspector-modern/tracing/EventLoopReporter.h +4 -4
  710. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +369 -123
  711. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +144 -30
  712. package/ReactCommon/jsinspector-modern/tracing/ProfileTreeNode.h +22 -20
  713. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +6 -0
  714. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +22 -18
  715. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +8 -9
  716. package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +3 -2
  717. package/ReactCommon/jsinspector-modern/tracing/Timing.h +8 -12
  718. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +8 -2
  719. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +3 -0
  720. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.h +6 -10
  721. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.h +4 -4
  722. package/ReactCommon/jsinspector-modern/tracing/tests/ProfileTreeNodeTest.cpp +12 -4
  723. package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -0
  724. package/ReactCommon/jsitooling/react/runtime/JSRuntimeFactory.h +7 -9
  725. package/ReactCommon/jsitooling/react/runtime/JSRuntimeFactoryCAPI.h +1 -1
  726. package/ReactCommon/logger/react_native_log.h +7 -7
  727. package/ReactCommon/react/bridging/AString.h +8 -6
  728. package/ReactCommon/react/bridging/Array.h +32 -49
  729. package/ReactCommon/react/bridging/Base.h +27 -76
  730. package/ReactCommon/react/bridging/Bool.h +4 -2
  731. package/ReactCommon/react/bridging/CallbackWrapper.h +19 -18
  732. package/ReactCommon/react/bridging/Class.h +25 -48
  733. package/ReactCommon/react/bridging/Convert.h +38 -31
  734. package/ReactCommon/react/bridging/Dynamic.h +4 -2
  735. package/ReactCommon/react/bridging/Error.h +11 -6
  736. package/ReactCommon/react/bridging/EventEmitter.h +47 -45
  737. package/ReactCommon/react/bridging/Function.h +69 -89
  738. package/ReactCommon/react/bridging/HighResTimeStamp.h +8 -8
  739. package/ReactCommon/react/bridging/LongLivedObject.h +6 -6
  740. package/ReactCommon/react/bridging/Number.h +16 -8
  741. package/ReactCommon/react/bridging/Object.h +17 -24
  742. package/ReactCommon/react/bridging/Promise.h +17 -17
  743. package/ReactCommon/react/bridging/Value.h +20 -29
  744. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +16 -13
  745. package/ReactCommon/react/bridging/tests/BridgingTest.h +24 -16
  746. package/ReactCommon/react/bridging/tests/ClassTest.cpp +6 -5
  747. package/ReactCommon/react/debug/react_native_assert.h +2 -7
  748. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +69 -9
  749. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +85 -10
  750. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +361 -91
  751. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +36 -6
  752. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +70 -10
  753. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +151 -16
  754. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +2 -2
  755. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +5 -1
  756. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +11 -7
  757. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +18 -3
  758. package/ReactCommon/react/nativemodule/core/ReactCommon/CxxTurboModuleUtils.h +2 -6
  759. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +7 -16
  760. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +24 -36
  761. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +0 -1
  762. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +8 -10
  763. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModulePerfLogger.h +38 -67
  764. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +5 -8
  765. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.h +2 -4
  766. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +5 -7
  767. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +2 -1
  768. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -13
  769. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +8 -7
  770. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +15 -15
  771. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +7 -0
  772. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +38 -12
  773. package/ReactCommon/react/nativemodule/core/tests/TurboModuleTestFixture.h +57 -37
  774. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +17 -14
  775. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.h +2 -2
  776. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
  777. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
  778. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.h +2 -2
  779. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +7 -2
  780. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/DevToolsRuntimeSettingsModule.h +3 -6
  781. package/ReactCommon/react/nativemodule/dom/NativeDOM.h +28 -66
  782. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.h +4 -7
  783. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/internal/FantomForcedCloneCommitHook.cpp +4 -3
  784. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/internal/FantomForcedCloneCommitHook.h +5 -7
  785. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +86 -11
  786. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +36 -6
  787. package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.h +6 -10
  788. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +2 -0
  789. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +43 -48
  790. package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +66 -0
  791. package/ReactCommon/react/nativemodule/microtasks/NativeMicrotasks.h +1 -1
  792. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +8 -7
  793. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +20 -31
  794. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleJSIBindings.h +4 -6
  795. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +3 -3
  796. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.mm +10 -16
  797. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +6 -8
  798. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +3 -0
  799. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +40 -58
  800. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +2 -0
  801. package/ReactCommon/react/networking/CMakeLists.txt +30 -0
  802. package/ReactCommon/react/networking/NetworkReporter.cpp +251 -0
  803. package/ReactCommon/react/networking/NetworkReporter.h +148 -0
  804. package/ReactCommon/{jsinspector-modern/network → react/networking}/NetworkTypes.h +2 -2
  805. package/ReactCommon/react/networking/React-networking.podspec +52 -0
  806. package/ReactCommon/react/performance/cdpmetrics/CdpInteractionTypes.cpp +1 -1
  807. package/ReactCommon/react/performance/cdpmetrics/CdpInteractionTypes.h +3 -4
  808. package/ReactCommon/react/performance/cdpmetrics/CdpMetricsReporter.cpp +1 -24
  809. package/ReactCommon/react/performance/cdpmetrics/CdpMetricsReporter.h +5 -6
  810. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.cpp +60 -0
  811. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +37 -0
  812. package/ReactCommon/react/performance/timeline/CircularBuffer.h +24 -19
  813. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +10 -9
  814. package/ReactCommon/react/performance/timeline/PerformanceEntryBuffer.h +4 -6
  815. package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.h +4 -6
  816. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.h +5 -7
  817. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +33 -26
  818. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +42 -51
  819. package/ReactCommon/react/performance/timeline/PerformanceEntryReporterListeners.h +10 -4
  820. package/ReactCommon/react/performance/timeline/PerformanceObserver.h +16 -19
  821. package/ReactCommon/react/performance/timeline/PerformanceObserverRegistry.h +2 -5
  822. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +6 -2
  823. package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +17 -14
  824. package/ReactCommon/react/renderer/animated/AnimatedModule.h +31 -40
  825. package/ReactCommon/react/renderer/animated/CMakeLists.txt +2 -0
  826. package/ReactCommon/react/renderer/animated/EventEmitterListener.h +10 -11
  827. package/ReactCommon/react/renderer/animated/MergedValueDispatcher.h +4 -7
  828. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +250 -30
  829. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +55 -51
  830. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +52 -25
  831. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.h +18 -21
  832. package/ReactCommon/react/renderer/animated/drivers/AnimationDriver.h +16 -12
  833. package/ReactCommon/react/renderer/animated/drivers/AnimationDriverUtils.h +3 -3
  834. package/ReactCommon/react/renderer/animated/drivers/DecayAnimationDriver.h +1 -1
  835. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.h +1 -1
  836. package/ReactCommon/react/renderer/animated/drivers/SpringAnimationDriver.h +2 -3
  837. package/ReactCommon/react/renderer/animated/event_drivers/EventAnimationDriver.h +9 -10
  838. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +6 -5
  839. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.h +4 -6
  840. package/ReactCommon/react/renderer/animated/internal/NativeAnimatedAllowlist.h +2 -1
  841. package/ReactCommon/react/renderer/animated/nodes/AdditionAnimatedNode.h +4 -5
  842. package/ReactCommon/react/renderer/animated/nodes/AnimatedNode.cpp +2 -0
  843. package/ReactCommon/react/renderer/animated/nodes/AnimatedNode.h +20 -17
  844. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.h +1 -4
  845. package/ReactCommon/react/renderer/animated/nodes/DiffClampAnimatedNode.h +1 -4
  846. package/ReactCommon/react/renderer/animated/nodes/DivisionAnimatedNode.h +4 -5
  847. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +1 -4
  848. package/ReactCommon/react/renderer/animated/nodes/ModulusAnimatedNode.h +1 -4
  849. package/ReactCommon/react/renderer/animated/nodes/MultiplicationAnimatedNode.h +4 -5
  850. package/ReactCommon/react/renderer/animated/nodes/ObjectAnimatedNode.cpp +121 -0
  851. package/ReactCommon/react/renderer/animated/nodes/ObjectAnimatedNode.h +33 -0
  852. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +7 -0
  853. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +5 -6
  854. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.h +1 -4
  855. package/ReactCommon/react/renderer/animated/nodes/StyleAnimatedNode.cpp +7 -0
  856. package/ReactCommon/react/renderer/animated/nodes/StyleAnimatedNode.h +4 -6
  857. package/ReactCommon/react/renderer/animated/nodes/SubtractionAnimatedNode.h +4 -5
  858. package/ReactCommon/react/renderer/animated/nodes/TrackingAnimatedNode.h +1 -4
  859. package/ReactCommon/react/renderer/animated/nodes/TransformAnimatedNode.h +2 -5
  860. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.h +5 -10
  861. package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +51 -0
  862. package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +9 -5
  863. package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +40 -0
  864. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +52 -0
  865. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +176 -0
  866. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +59 -0
  867. package/ReactCommon/react/renderer/animationbackend/CMakeLists.txt +28 -0
  868. package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +6 -3
  869. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +3 -2
  870. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +7 -10
  871. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +52 -42
  872. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +35 -47
  873. package/ReactCommon/react/renderer/animations/conversions.h +36 -45
  874. package/ReactCommon/react/renderer/animations/primitives.h +2 -9
  875. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +50 -35
  876. package/ReactCommon/react/renderer/animations/utils.h +24 -38
  877. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +6 -5
  878. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +17 -18
  879. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +2 -2
  880. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +12 -14
  881. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +4 -4
  882. package/ReactCommon/react/renderer/attributedstring/PlaceholderAttributedString.h +3 -5
  883. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +6 -6
  884. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -3
  885. package/ReactCommon/react/renderer/attributedstring/conversions.h +145 -208
  886. package/ReactCommon/react/renderer/attributedstring/primitives.h +1 -6
  887. package/ReactCommon/react/renderer/bridging/bridging.h +7 -12
  888. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorFactory.h +3 -4
  889. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProvider.h +6 -6
  890. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +7 -12
  891. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +3 -3
  892. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +11 -18
  893. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.h +2 -5
  894. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +2 -1
  895. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +3 -5
  896. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.h +2 -2
  897. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +2 -2
  898. package/ReactCommon/react/renderer/components/image/ImageProps.h +4 -10
  899. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +18 -0
  900. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +9 -10
  901. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -10
  902. package/ReactCommon/react/renderer/components/image/conversions.h +16 -25
  903. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryComponentDescriptor.h +6 -12
  904. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryShadowNode.h +2 -1
  905. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryState.h +2 -2
  906. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +2 -3
  907. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +3 -3
  908. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +3 -3
  909. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.h +5 -5
  910. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +2 -3
  911. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +6 -7
  912. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +9 -18
  913. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.h +2 -1
  914. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +5 -7
  915. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +10 -14
  916. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.h +5 -7
  917. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.cpp +1 -0
  918. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +4 -6
  919. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/conversions.h +2 -1
  920. package/ReactCommon/react/renderer/components/root/RootProps.cpp +1 -1
  921. package/ReactCommon/react/renderer/components/root/RootProps.h +5 -8
  922. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +7 -8
  923. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewComponentDescriptor.h +5 -8
  924. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewShadowNode.h +2 -5
  925. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewState.h +8 -9
  926. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.h +7 -12
  927. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +8 -8
  928. package/ReactCommon/react/renderer/components/scrollview/ScrollViewComponentDescriptor.h +1 -2
  929. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +7 -8
  930. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.h +5 -8
  931. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +7 -12
  932. package/ReactCommon/react/renderer/components/scrollview/conversions.h +26 -34
  933. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h +5 -1
  934. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +52 -4
  935. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.h +10 -10
  936. package/ReactCommon/react/renderer/components/scrollview/primitives.h +5 -8
  937. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +9 -11
  938. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.h +4 -3
  939. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +6 -10
  940. package/ReactCommon/react/renderer/components/switch/iosswitch/react/renderer/components/switch/AppleSwitchComponentDescriptor.h +6 -5
  941. package/ReactCommon/react/renderer/components/switch/iosswitch/react/renderer/components/switch/AppleSwitchShadowNode.h +5 -8
  942. package/ReactCommon/react/renderer/components/text/BaseParagraphProps.h +6 -9
  943. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +1 -1
  944. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +4 -12
  945. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +3 -2
  946. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.h +5 -5
  947. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +8 -9
  948. package/ReactCommon/react/renderer/components/text/ParagraphEventEmitter.h +1 -1
  949. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +19 -16
  950. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +19 -29
  951. package/ReactCommon/react/renderer/components/text/RawTextComponentDescriptor.h +1 -2
  952. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +1 -1
  953. package/ReactCommon/react/renderer/components/text/RawTextProps.h +2 -5
  954. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.cpp +1 -0
  955. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +1 -4
  956. package/ReactCommon/react/renderer/components/text/TextProps.cpp +1 -1
  957. package/ReactCommon/react/renderer/components/text/TextProps.h +4 -10
  958. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +8 -17
  959. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +1 -1
  960. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.h +6 -9
  961. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +8 -9
  962. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/conversions.h +4 -5
  963. package/ReactCommon/react/renderer/components/text/stateConversions.h +2 -1
  964. package/ReactCommon/react/renderer/components/text/tests/BaseTextShadowNodeTest.cpp +26 -24
  965. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +6 -9
  966. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +56 -78
  967. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.h +12 -14
  968. package/ReactCommon/react/renderer/components/textinput/TextInputState.h +3 -1
  969. package/ReactCommon/react/renderer/components/textinput/baseConversions.h +4 -5
  970. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +31 -49
  971. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +16 -19
  972. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +6 -5
  973. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +10 -16
  974. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +8 -12
  975. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h +8 -7
  976. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +1 -1
  977. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +1 -4
  978. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +2 -5
  979. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +11 -20
  980. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/primitives.h +2 -4
  981. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/propsConversions.h +37 -115
  982. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +3 -6
  983. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -1
  984. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewShadowNode.h +1 -3
  985. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +25 -95
  986. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +7 -12
  987. package/ReactCommon/react/renderer/components/view/BackgroundImagePropsConversions.cpp +619 -0
  988. package/ReactCommon/react/renderer/components/view/BackgroundImagePropsConversions.h +44 -0
  989. package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -10
  990. package/ReactCommon/react/renderer/components/view/BaseViewEventEmitter.h +3 -4
  991. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +36 -0
  992. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +23 -17
  993. package/ReactCommon/react/renderer/components/view/BoxShadowPropsConversions.h +27 -40
  994. package/ReactCommon/react/renderer/components/view/CSSConversions.h +12 -11
  995. package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +27 -34
  996. package/ReactCommon/react/renderer/components/view/FilterPropsConversions.h +46 -70
  997. package/ReactCommon/react/renderer/components/view/LayoutConformanceComponentDescriptor.h +1 -2
  998. package/ReactCommon/react/renderer/components/view/LayoutConformanceProps.h +6 -9
  999. package/ReactCommon/react/renderer/components/view/LayoutConformanceShadowNode.h +6 -7
  1000. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +40 -21
  1001. package/ReactCommon/react/renderer/components/view/PointerEvent.h +3 -3
  1002. package/ReactCommon/react/renderer/components/view/TouchEvent.cpp +6 -4
  1003. package/ReactCommon/react/renderer/components/view/TouchEvent.h +2 -2
  1004. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -8
  1005. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +5 -4
  1006. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +14 -20
  1007. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +1 -1
  1008. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +7 -15
  1009. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +11 -9
  1010. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +20 -40
  1011. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +10 -14
  1012. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +85 -42
  1013. package/ReactCommon/react/renderer/components/view/conversions.h +375 -430
  1014. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +97 -40
  1015. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +14 -12
  1016. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +9 -9
  1017. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +15 -21
  1018. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +6 -3
  1019. package/ReactCommon/react/renderer/components/view/primitives.h +32 -34
  1020. package/ReactCommon/react/renderer/components/view/propsConversions.h +135 -522
  1021. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +11 -8
  1022. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +1 -1
  1023. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +13 -13
  1024. package/ReactCommon/react/renderer/components/virtualview/VirtualViewComponentDescriptor.h +1 -2
  1025. package/ReactCommon/react/renderer/components/virtualview/VirtualViewShadowNode.h +4 -5
  1026. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalComponentDescriptor.h +1 -2
  1027. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalShadowNode.h +7 -8
  1028. package/ReactCommon/react/renderer/consistency/ScopedShadowTreeRevisionLock.h +10 -11
  1029. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +15 -23
  1030. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +49 -63
  1031. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +34 -35
  1032. package/ReactCommon/react/renderer/core/ConcreteState.h +23 -23
  1033. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +3 -3
  1034. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +3 -4
  1035. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +4 -8
  1036. package/ReactCommon/react/renderer/core/EventBeat.h +6 -9
  1037. package/ReactCommon/react/renderer/core/EventDispatcher.h +5 -8
  1038. package/ReactCommon/react/renderer/core/EventEmitter.h +11 -16
  1039. package/ReactCommon/react/renderer/core/EventListener.h +3 -3
  1040. package/ReactCommon/react/renderer/core/EventPayload.h +7 -7
  1041. package/ReactCommon/react/renderer/core/EventPipe.h +5 -5
  1042. package/ReactCommon/react/renderer/core/EventQueue.h +6 -10
  1043. package/ReactCommon/react/renderer/core/EventQueueProcessor.h +2 -2
  1044. package/ReactCommon/react/renderer/core/EventTarget.h +4 -6
  1045. package/ReactCommon/react/renderer/core/InstanceHandle.h +2 -5
  1046. package/ReactCommon/react/renderer/core/LayoutConstraints.cpp +4 -2
  1047. package/ReactCommon/react/renderer/core/LayoutConstraints.h +10 -17
  1048. package/ReactCommon/react/renderer/core/LayoutContext.h +5 -3
  1049. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +14 -14
  1050. package/ReactCommon/react/renderer/core/LayoutMetrics.h +30 -25
  1051. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +16 -12
  1052. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +14 -26
  1053. package/ReactCommon/react/renderer/core/Props.h +16 -19
  1054. package/ReactCommon/react/renderer/core/PropsMacros.h +50 -79
  1055. package/ReactCommon/react/renderer/core/PropsParserContext.h +7 -7
  1056. package/ReactCommon/react/renderer/core/RawProps.cpp +2 -1
  1057. package/ReactCommon/react/renderer/core/RawProps.h +11 -14
  1058. package/ReactCommon/react/renderer/core/RawPropsKey.h +6 -6
  1059. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +4 -8
  1060. package/ReactCommon/react/renderer/core/RawPropsParser.h +7 -10
  1061. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +2 -5
  1062. package/ReactCommon/react/renderer/core/RawValue.h +145 -183
  1063. package/ReactCommon/react/renderer/core/ReactEventPriority.h +3 -4
  1064. package/ReactCommon/react/renderer/core/ReactPrimitives.h +1 -1
  1065. package/ReactCommon/react/renderer/core/Sealable.cpp +1 -1
  1066. package/ReactCommon/react/renderer/core/Sealable.h +6 -5
  1067. package/ReactCommon/react/renderer/core/ShadowNode.cpp +1 -1
  1068. package/ReactCommon/react/renderer/core/ShadowNode.h +44 -70
  1069. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +15 -21
  1070. package/ReactCommon/react/renderer/core/ShadowNodeFragment.h +6 -6
  1071. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +8 -4
  1072. package/ReactCommon/react/renderer/core/State.cpp +1 -1
  1073. package/ReactCommon/react/renderer/core/State.h +4 -3
  1074. package/ReactCommon/react/renderer/core/StateData.h +1 -1
  1075. package/ReactCommon/react/renderer/core/StatePipe.h +1 -1
  1076. package/ReactCommon/react/renderer/core/StateUpdate.h +1 -2
  1077. package/ReactCommon/react/renderer/core/ValueFactory.h +1 -1
  1078. package/ReactCommon/react/renderer/core/ValueFactoryEventPayload.h +1 -1
  1079. package/ReactCommon/react/renderer/core/conversions.h +13 -10
  1080. package/ReactCommon/react/renderer/core/graphicsConversions.h +49 -62
  1081. package/ReactCommon/react/renderer/core/propsConversions.h +62 -42
  1082. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +47 -36
  1083. package/ReactCommon/react/renderer/core/tests/ConcreteShadowNodeTest.cpp +4 -1
  1084. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +53 -50
  1085. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +95 -95
  1086. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +12 -9
  1087. package/ReactCommon/react/renderer/core/tests/ShadowNodeFamilyTest.cpp +4 -1
  1088. package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +81 -67
  1089. package/ReactCommon/react/renderer/core/tests/TestComponent.h +14 -17
  1090. package/ReactCommon/react/renderer/core/tests/benchmarks/RawPropsBenchmark.cpp +4 -2
  1091. package/ReactCommon/react/renderer/css/CSSAngle.h +3 -3
  1092. package/ReactCommon/react/renderer/css/CSSAngleUnit.h +4 -2
  1093. package/ReactCommon/react/renderer/css/CSSBackgroundImage.h +864 -0
  1094. package/ReactCommon/react/renderer/css/CSSColor.h +9 -8
  1095. package/ReactCommon/react/renderer/css/CSSColorFunction.h +65 -102
  1096. package/ReactCommon/react/renderer/css/CSSCompoundDataType.h +14 -46
  1097. package/ReactCommon/react/renderer/css/CSSDataType.h +10 -15
  1098. package/ReactCommon/react/renderer/css/CSSFilter.h +38 -58
  1099. package/ReactCommon/react/renderer/css/CSSFontVariant.h +1 -2
  1100. package/ReactCommon/react/renderer/css/CSSHexColor.h +10 -9
  1101. package/ReactCommon/react/renderer/css/CSSKeyword.h +6 -6
  1102. package/ReactCommon/react/renderer/css/CSSLength.h +5 -5
  1103. package/ReactCommon/react/renderer/css/CSSLengthUnit.h +2 -2
  1104. package/ReactCommon/react/renderer/css/CSSList.h +7 -12
  1105. package/ReactCommon/react/renderer/css/CSSNamedColor.h +2 -1
  1106. package/ReactCommon/react/renderer/css/CSSNumber.h +3 -3
  1107. package/ReactCommon/react/renderer/css/CSSPercentage.h +3 -3
  1108. package/ReactCommon/react/renderer/css/CSSRatio.h +10 -13
  1109. package/ReactCommon/react/renderer/css/CSSShadow.h +15 -32
  1110. package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +66 -73
  1111. package/ReactCommon/react/renderer/css/CSSToken.h +18 -14
  1112. package/ReactCommon/react/renderer/css/CSSTokenizer.h +41 -32
  1113. package/ReactCommon/react/renderer/css/CSSTransform.h +70 -107
  1114. package/ReactCommon/react/renderer/css/CSSTransformOrigin.h +28 -49
  1115. package/ReactCommon/react/renderer/css/CSSValueParser.h +46 -76
  1116. package/ReactCommon/react/renderer/css/CSSZero.h +3 -3
  1117. package/ReactCommon/react/renderer/css/tests/CSSBackgroundImageTest.cpp +560 -0
  1118. package/ReactCommon/react/renderer/css/tests/CSSColorTest.cpp +6 -4
  1119. package/ReactCommon/react/renderer/css/tests/CSSFilterTest.cpp +5 -5
  1120. package/ReactCommon/react/renderer/css/tests/CSSFontVariantTest.cpp +3 -2
  1121. package/ReactCommon/react/renderer/css/tests/CSSListTest.cpp +12 -8
  1122. package/ReactCommon/react/renderer/css/tests/CSSShadowTest.cpp +6 -6
  1123. package/ReactCommon/react/renderer/css/tests/CSSSyntaxParserTest.cpp +11 -9
  1124. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +78 -92
  1125. package/ReactCommon/react/renderer/debug/DebugStringConvertibleItem.h +1 -1
  1126. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +18 -26
  1127. package/ReactCommon/react/renderer/dom/DOM.cpp +3 -1
  1128. package/ReactCommon/react/renderer/dom/DOM.h +24 -42
  1129. package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +12 -9
  1130. package/ReactCommon/react/renderer/element/ComponentBuilder.h +8 -9
  1131. package/ReactCommon/react/renderer/element/Element.h +37 -35
  1132. package/ReactCommon/react/renderer/element/ElementFragment.h +3 -5
  1133. package/ReactCommon/react/renderer/element/testUtils.h +12 -20
  1134. package/ReactCommon/react/renderer/graphics/BackgroundImage.cpp +23 -0
  1135. package/ReactCommon/react/renderer/graphics/BackgroundImage.h +28 -2
  1136. package/ReactCommon/react/renderer/graphics/BackgroundPosition.h +27 -0
  1137. package/ReactCommon/react/renderer/graphics/BackgroundRepeat.h +29 -0
  1138. package/ReactCommon/react/renderer/graphics/BackgroundSize.h +39 -0
  1139. package/ReactCommon/react/renderer/graphics/BlendMode.h +4 -3
  1140. package/ReactCommon/react/renderer/graphics/BoxShadow.h +5 -3
  1141. package/ReactCommon/react/renderer/graphics/Color.cpp +22 -3
  1142. package/ReactCommon/react/renderer/graphics/Color.h +20 -10
  1143. package/ReactCommon/react/renderer/graphics/ColorStop.cpp +21 -0
  1144. package/ReactCommon/react/renderer/graphics/ColorStop.h +20 -2
  1145. package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +38 -0
  1146. package/ReactCommon/react/renderer/graphics/DoubleConversions.h +16 -0
  1147. package/ReactCommon/react/renderer/graphics/Filter.h +13 -8
  1148. package/ReactCommon/react/renderer/graphics/Isolation.h +2 -2
  1149. package/ReactCommon/react/renderer/graphics/LinearGradient.cpp +92 -0
  1150. package/ReactCommon/react/renderer/graphics/LinearGradient.h +19 -15
  1151. package/ReactCommon/react/renderer/graphics/Point.h +16 -9
  1152. package/ReactCommon/react/renderer/graphics/RadialGradient.cpp +138 -0
  1153. package/ReactCommon/react/renderer/graphics/RadialGradient.h +47 -29
  1154. package/ReactCommon/react/renderer/graphics/Rect.h +39 -33
  1155. package/ReactCommon/react/renderer/graphics/RectangleCorners.h +11 -17
  1156. package/ReactCommon/react/renderer/graphics/RectangleEdges.h +27 -31
  1157. package/ReactCommon/react/renderer/graphics/Size.h +10 -5
  1158. package/ReactCommon/react/renderer/graphics/Transform.cpp +91 -64
  1159. package/ReactCommon/react/renderer/graphics/Transform.h +39 -49
  1160. package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +41 -0
  1161. package/ReactCommon/react/renderer/graphics/ValueUnit.h +24 -4
  1162. package/ReactCommon/react/renderer/graphics/fromRawValueShared.h +7 -7
  1163. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/HostPlatformColor.h +19 -14
  1164. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +56 -36
  1165. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/configurePlatformColorCacheInvalidationHook.cpp +27 -0
  1166. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/configurePlatformColorCacheInvalidationHook.h +12 -0
  1167. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/HostPlatformColor.h +21 -14
  1168. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +7 -11
  1169. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +37 -26
  1170. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +14 -14
  1171. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.h +5 -11
  1172. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.mm +10 -9
  1173. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.h +3 -5
  1174. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +3 -3
  1175. package/ReactCommon/react/renderer/graphics/rounding.h +28 -18
  1176. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +5 -7
  1177. package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +8 -9
  1178. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserver.h +3 -4
  1179. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +3 -5
  1180. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +7 -12
  1181. package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.h +2 -1
  1182. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +19 -41
  1183. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +14 -23
  1184. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +7 -4
  1185. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +21 -39
  1186. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +4 -2
  1187. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +4 -2
  1188. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +2 -2
  1189. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
  1190. package/ReactCommon/react/renderer/imagemanager/primitives.h +25 -31
  1191. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -2
  1192. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.h +1 -1
  1193. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +6 -7
  1194. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +4 -10
  1195. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +3 -2
  1196. package/ReactCommon/react/renderer/mounting/Differentiator.h +2 -2
  1197. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +6 -9
  1198. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  1199. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +8 -10
  1200. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +22 -13
  1201. package/ReactCommon/react/renderer/mounting/ShadowTree.h +12 -23
  1202. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +4 -4
  1203. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.h +4 -9
  1204. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +11 -8
  1205. package/ReactCommon/react/renderer/mounting/ShadowView.h +11 -10
  1206. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +14 -30
  1207. package/ReactCommon/react/renderer/mounting/TelemetryController.h +9 -11
  1208. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +14 -0
  1209. package/ReactCommon/react/renderer/mounting/internal/CullingContext.h +2 -3
  1210. package/ReactCommon/react/renderer/mounting/internal/ShadowViewNodePair.h +9 -6
  1211. package/ReactCommon/react/renderer/mounting/internal/TinyMap.h +18 -14
  1212. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +5 -3
  1213. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.h +4 -4
  1214. package/ReactCommon/react/renderer/mounting/stubs/StubView.h +7 -9
  1215. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +14 -16
  1216. package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +13 -10
  1217. package/ReactCommon/react/renderer/mounting/stubs/stubs.h +2 -4
  1218. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +2 -1
  1219. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +40 -22
  1220. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +3 -2
  1221. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +6 -0
  1222. package/ReactCommon/react/renderer/mounting/updateMountedFlag.h +2 -2
  1223. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +3 -1
  1224. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.h +6 -10
  1225. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +175 -56
  1226. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +34 -19
  1227. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +15 -6
  1228. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.h +18 -30
  1229. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.h +4 -9
  1230. package/ReactCommon/react/renderer/observers/mutation/MutationObserver.cpp +6 -5
  1231. package/ReactCommon/react/renderer/observers/mutation/MutationObserver.h +20 -24
  1232. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +14 -17
  1233. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +36 -62
  1234. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +1 -1
  1235. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +4 -5
  1236. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +3 -4
  1237. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerEventTimingDelegate.h +1 -2
  1238. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerIntersectionObserverDelegate.h +1 -2
  1239. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +23 -43
  1240. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +31 -56
  1241. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +7 -7
  1242. package/ReactCommon/react/renderer/runtimescheduler/Task.h +6 -13
  1243. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +4 -6
  1244. package/ReactCommon/react/renderer/runtimescheduler/tests/StubClock.h +8 -4
  1245. package/ReactCommon/react/renderer/runtimescheduler/tests/StubErrorUtils.h +9 -12
  1246. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +16 -13
  1247. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +12 -36
  1248. package/ReactCommon/react/renderer/scheduler/Scheduler.h +26 -33
  1249. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +11 -22
  1250. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +3 -3
  1251. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +15 -22
  1252. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +5 -5
  1253. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +13 -17
  1254. package/ReactCommon/react/renderer/telemetry/SurfaceTelemetry.h +1 -3
  1255. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.h +1 -1
  1256. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutContext.h +1 -1
  1257. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +27 -34
  1258. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +68 -106
  1259. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/JPreparedLayout.h +1 -2
  1260. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +9 -7
  1261. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +23 -28
  1262. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.cpp +9 -4
  1263. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.h +9 -10
  1264. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +1 -1
  1265. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +10 -10
  1266. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.h +10 -2
  1267. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +71 -40
  1268. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +6 -7
  1269. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +12 -13
  1270. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -2
  1271. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.h +7 -7
  1272. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.cpp +5 -3
  1273. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.h +28 -37
  1274. package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.h +7 -14
  1275. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +1 -2
  1276. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +17 -5
  1277. package/ReactCommon/react/renderer/uimanager/UIManager.h +68 -77
  1278. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +24 -0
  1279. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +5 -6
  1280. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +3 -3
  1281. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +13 -15
  1282. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +12 -23
  1283. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +14 -21
  1284. package/ReactCommon/react/renderer/uimanager/UIManagerMountHook.h +3 -4
  1285. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +1 -2
  1286. package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.h +6 -11
  1287. package/ReactCommon/react/renderer/uimanager/primitives.h +37 -51
  1288. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +4 -2
  1289. package/ReactCommon/react/runtime/BindingsInstaller.h +2 -1
  1290. package/ReactCommon/react/runtime/BridgelessNativeMethodCallInvoker.h +3 -7
  1291. package/ReactCommon/react/runtime/BufferedRuntimeExecutor.h +4 -3
  1292. package/ReactCommon/react/runtime/ReactInstance.cpp +14 -1
  1293. package/ReactCommon/react/runtime/ReactInstance.h +14 -20
  1294. package/ReactCommon/react/runtime/TimerManager.h +17 -25
  1295. package/ReactCommon/react/runtime/nativeviewconfig/LegacyUIManagerConstantsProviderBinding.h +4 -7
  1296. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.h +14 -15
  1297. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.mm +3 -15
  1298. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +10 -1
  1299. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +22 -2
  1300. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +10 -0
  1301. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +31 -1
  1302. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.h +2 -3
  1303. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTLegacyUIManagerConstantsProvider.h +1 -1
  1304. package/ReactCommon/react/test_utils/Entropy.h +24 -18
  1305. package/ReactCommon/react/test_utils/MockClock.h +5 -4
  1306. package/ReactCommon/react/test_utils/MockSurfaceHandler.h +1 -1
  1307. package/ReactCommon/react/test_utils/ios/RCTSwizzleHelpers.h +1 -4
  1308. package/ReactCommon/react/test_utils/ios/Shims/ShimRCTInstance.mm +9 -6
  1309. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +70 -91
  1310. package/ReactCommon/react/timing/primitives.h +127 -115
  1311. package/ReactCommon/react/utils/CMakeLists.txt +1 -1
  1312. package/ReactCommon/react/utils/ContextContainer.h +16 -13
  1313. package/ReactCommon/react/utils/FloatComparison.h +3 -4
  1314. package/ReactCommon/react/utils/OnScopeExit.h +7 -7
  1315. package/ReactCommon/react/utils/PackTraits.h +5 -4
  1316. package/ReactCommon/react/utils/React-utils.podspec +3 -1
  1317. package/ReactCommon/react/utils/RunLoopObserver.h +4 -7
  1318. package/ReactCommon/react/utils/SharedFunction.h +10 -9
  1319. package/ReactCommon/react/utils/SimpleThreadSafeCache.h +10 -11
  1320. package/ReactCommon/react/utils/Telemetry.h +19 -27
  1321. package/ReactCommon/react/utils/TemplateStringLiteral.h +4 -2
  1322. package/ReactCommon/react/utils/Uuid.cpp +69 -0
  1323. package/ReactCommon/react/utils/Uuid.h +20 -0
  1324. package/ReactCommon/react/utils/fnv1a.h +8 -6
  1325. package/ReactCommon/react/utils/hash_combine.h +5 -3
  1326. package/ReactCommon/react/utils/iequals.h +2 -1
  1327. package/ReactCommon/react/utils/jsi-utils.h +1 -4
  1328. package/ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.cpp +1 -1
  1329. package/ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.h +1 -1
  1330. package/ReactCommon/react/utils/platform/cxx/react/utils/LowPriorityExecutor.h +2 -1
  1331. package/ReactCommon/react/utils/platform/ios/react/utils/FollyConvert.mm +2 -2
  1332. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.h +1 -1
  1333. package/ReactCommon/react/utils/tests/UuidTest.cpp +28 -0
  1334. package/ReactCommon/react/utils/tests/hash_combineTests.cpp +2 -2
  1335. package/ReactCommon/react/utils/toLower.h +2 -1
  1336. package/ReactCommon/react/utils/to_underlying.h +2 -1
  1337. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +24 -16
  1338. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +7 -11
  1339. package/ReactCommon/reactperflogger/reactperflogger/BridgeNativeModulePerfLogger.h +38 -67
  1340. package/ReactCommon/reactperflogger/reactperflogger/FuseboxPerfettoDataSource.h +9 -11
  1341. package/ReactCommon/reactperflogger/reactperflogger/HermesPerfettoDataSource.h +9 -11
  1342. package/ReactCommon/reactperflogger/reactperflogger/NativeModulePerfLogger.h +38 -84
  1343. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.h +2 -2
  1344. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoCategories.h +1 -2
  1345. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.h +6 -6
  1346. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +1 -2
  1347. package/ReactCommon/runtimeexecutor/platform/cxx/ReactCommon/RuntimeExecutorSyncUIThreadUtils.h +6 -6
  1348. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.h +6 -6
  1349. package/ReactCommon/yoga/cmake/yoga-config.cmake.in +1 -1
  1350. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +14 -11
  1351. package/flow/bom.js.flow +1 -0
  1352. package/index.js +6 -0
  1353. package/index.js.flow +4 -0
  1354. package/jest/mockComponent.js +6 -6
  1355. package/jest/setup.js +15 -10
  1356. package/package.json +15 -17
  1357. package/scripts/cocoapods/rncore.rb +261 -36
  1358. package/scripts/cocoapods/rndependencies.rb +56 -19
  1359. package/scripts/cocoapods/utils.rb +5 -0
  1360. package/scripts/codegen/codegen-utils.js +2 -2
  1361. package/scripts/codegen/generate-artifacts-executor/generatePackageSwift.js +44 -0
  1362. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +12 -3
  1363. package/scripts/codegen/generate-artifacts-executor/index.js +75 -29
  1364. package/scripts/codegen/generate-artifacts-executor/utils.js +44 -6
  1365. package/scripts/codegen/templates/Package.swift.template +59 -0
  1366. package/scripts/hermes/hermes-utils.js +52 -304
  1367. package/scripts/react_native_pods.rb +13 -2
  1368. package/scripts/react_native_pods_utils/script_phases.sh +1 -3
  1369. package/sdks/.hermesv1version +1 -0
  1370. package/sdks/.hermesversion +1 -1
  1371. package/sdks/hermes-engine/hermes-engine.podspec +5 -9
  1372. package/sdks/hermes-engine/hermes-utils.rb +24 -27
  1373. package/sdks/hermes-engine/version.properties +2 -1
  1374. package/src/private/components/virtualview/VirtualView.js +22 -27
  1375. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +6 -0
  1376. package/src/private/featureflags/ReactNativeFeatureFlags.js +100 -19
  1377. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +18 -3
  1378. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
  1379. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -0
  1380. package/src/private/webapis/dom/nodes/ReactNativeElement.js +12 -2
  1381. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +76 -15
  1382. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +1 -0
  1383. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  1384. package/src/private/webapis/performance/ResourceTiming.js +31 -4
  1385. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +4 -1
  1386. package/src/private/webapis/performance/specs/NativePerformance.js +3 -0
  1387. package/types/index.d.ts +1 -0
  1388. package/types/public/ReactNativeTypes.d.ts +115 -2
  1389. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +0 -152
  1390. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +0 -3371
  1391. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.kt +0 -207
  1392. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerfMonitorOverlayViewManager.kt +0 -278
  1393. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PerfMonitorOverlayManager.kt +0 -20
  1394. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +0 -36
  1395. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +0 -34
  1396. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.java +0 -76
  1397. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +0 -34
  1398. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +0 -1474
  1399. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +0 -137
  1400. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +0 -42
  1401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +0 -96
  1402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.kt +0 -43
  1403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +0 -46
  1404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +0 -33
  1405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +0 -37
  1406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +0 -42
  1407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +0 -66
  1408. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +0 -77
  1409. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +0 -98
  1410. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +0 -62
  1411. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +0 -54
  1412. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +0 -38
  1413. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +0 -34
  1414. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +0 -54
  1415. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +0 -316
  1416. package/ReactCommon/jsinspector-modern/network/NetworkReporter.h +0 -211
  1417. package/ReactCommon/jsinspector-modern/tests/RuntimeTargetDebuggerSessionObserverTest.cpp +0 -214
  1418. package/scripts/hermes/prepare-hermes-for-build.js +0 -49
  1419. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1420. package/sdks/hermesc/osx-bin/hermes +0 -0
  1421. package/sdks/hermesc/osx-bin/hermes-lit +0 -15
  1422. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1423. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1424. package/sdks/hermesc/win64-bin/icudt64.dll +0 -0
  1425. package/sdks/hermesc/win64-bin/icuin64.dll +0 -0
  1426. package/sdks/hermesc/win64-bin/icuio64.dll +0 -0
  1427. package/sdks/hermesc/win64-bin/icutest64.dll +0 -0
  1428. package/sdks/hermesc/win64-bin/icutu64.dll +0 -0
  1429. package/sdks/hermesc/win64-bin/icuuc64.dll +0 -0
  1430. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1431. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1432. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
@@ -18,7 +18,10 @@
18
18
  #include <react/renderer/css/CSSNumber.h>
19
19
  #include <react/renderer/css/CSSPercentage.h>
20
20
  #include <react/renderer/css/CSSValueParser.h>
21
- #include <react/renderer/graphics/BackgroundImage.h>
21
+ #include <react/renderer/debug/flags.h>
22
+ #include <react/renderer/graphics/BackgroundPosition.h>
23
+ #include <react/renderer/graphics/BackgroundRepeat.h>
24
+ #include <react/renderer/graphics/BackgroundSize.h>
22
25
  #include <react/renderer/graphics/BlendMode.h>
23
26
  #include <react/renderer/graphics/Isolation.h>
24
27
  #include <react/renderer/graphics/LinearGradient.h>
@@ -44,10 +47,9 @@ namespace facebook::react {
44
47
  * values have special "no limit" meaning in Yoga, therefore ` YGUndefined`
45
48
  * usually corresponds to `Infinity` value.
46
49
  */
47
- inline Float floatFromYogaFloat(float value) {
48
- static_assert(
49
- YGUndefined != YGUndefined,
50
- "The code of this function assumes that YGUndefined is NaN.");
50
+ inline Float floatFromYogaFloat(float value)
51
+ {
52
+ static_assert(YGUndefined != YGUndefined, "The code of this function assumes that YGUndefined is NaN.");
51
53
  if (std::isnan(value) /* means: `value == YGUndefined` */) {
52
54
  return std::numeric_limits<Float>::infinity();
53
55
  }
@@ -55,7 +57,8 @@ inline Float floatFromYogaFloat(float value) {
55
57
  return (Float)value;
56
58
  }
57
59
 
58
- inline float yogaFloatFromFloat(Float value) {
60
+ inline float yogaFloatFromFloat(Float value)
61
+ {
59
62
  if (!std::isfinite(value)) {
60
63
  return YGUndefined;
61
64
  }
@@ -73,7 +76,8 @@ inline float yogaFloatFromFloat(Float value) {
73
76
  * which usually has some special corresponding representation for an empty
74
77
  * value.
75
78
  */
76
- inline Float floatFromYogaOptionalFloat(yoga::FloatOptional value) {
79
+ inline Float floatFromYogaOptionalFloat(yoga::FloatOptional value)
80
+ {
77
81
  if (value.isUndefined()) {
78
82
  return std::numeric_limits<Float>::quiet_NaN();
79
83
  }
@@ -81,7 +85,8 @@ inline Float floatFromYogaOptionalFloat(yoga::FloatOptional value) {
81
85
  return floatFromYogaFloat(value.unwrap());
82
86
  }
83
87
 
84
- inline yoga::FloatOptional yogaOptionalFloatFromFloat(Float value) {
88
+ inline yoga::FloatOptional yogaOptionalFloatFromFloat(Float value)
89
+ {
85
90
  if (std::isnan(value)) {
86
91
  return yoga::FloatOptional();
87
92
  }
@@ -90,22 +95,21 @@ inline yoga::FloatOptional yogaOptionalFloatFromFloat(Float value) {
90
95
  }
91
96
 
92
97
  inline std::optional<Float> optionalFloatFromYogaValue(
93
- const yoga::Style::Length& length,
94
- std::optional<Float> base = {}) {
98
+ const yoga::Style::Length &length,
99
+ std::optional<Float> base = {})
100
+ {
95
101
  if (length.isPoints()) {
96
102
  return floatFromYogaOptionalFloat(length.value());
97
103
  } else if (length.isPercent()) {
98
- return base.has_value()
99
- ? std::optional<Float>(
100
- base.value() * floatFromYogaOptionalFloat(length.value()))
101
- : std::optional<Float>();
104
+ return base.has_value() ? std::optional<Float>(base.value() * floatFromYogaOptionalFloat(length.value()))
105
+ : std::optional<Float>();
102
106
  } else {
103
107
  return {};
104
108
  }
105
109
  }
106
110
 
107
- static inline PositionType positionTypeFromYogaPositionType(
108
- yoga::PositionType positionType) {
111
+ static inline PositionType positionTypeFromYogaPositionType(yoga::PositionType positionType)
112
+ {
109
113
  switch (positionType) {
110
114
  case yoga::PositionType::Static:
111
115
  return PositionType::Static;
@@ -116,7 +120,8 @@ static inline PositionType positionTypeFromYogaPositionType(
116
120
  }
117
121
  }
118
122
 
119
- inline DisplayType displayTypeFromYGDisplay(YGDisplay display) {
123
+ inline DisplayType displayTypeFromYGDisplay(YGDisplay display)
124
+ {
120
125
  switch (display) {
121
126
  case YGDisplayNone:
122
127
  return DisplayType::None;
@@ -127,16 +132,18 @@ inline DisplayType displayTypeFromYGDisplay(YGDisplay display) {
127
132
  }
128
133
  }
129
134
 
130
- inline LayoutMetrics layoutMetricsFromYogaNode(yoga::Node& yogaNode) {
135
+ inline LayoutMetrics layoutMetricsFromYogaNode(yoga::Node &yogaNode)
136
+ {
131
137
  auto layoutMetrics = LayoutMetrics{};
132
138
 
133
139
  layoutMetrics.frame = Rect{
134
- Point{
135
- floatFromYogaFloat(YGNodeLayoutGetLeft(&yogaNode)),
136
- floatFromYogaFloat(YGNodeLayoutGetTop(&yogaNode))},
137
- Size{
138
- floatFromYogaFloat(YGNodeLayoutGetWidth(&yogaNode)),
139
- floatFromYogaFloat(YGNodeLayoutGetHeight(&yogaNode))}};
140
+ .origin =
141
+ Point{
142
+ .x = floatFromYogaFloat(YGNodeLayoutGetLeft(&yogaNode)),
143
+ .y = floatFromYogaFloat(YGNodeLayoutGetTop(&yogaNode))},
144
+ .size = Size{
145
+ .width = floatFromYogaFloat(YGNodeLayoutGetWidth(&yogaNode)),
146
+ .height = floatFromYogaFloat(YGNodeLayoutGetHeight(&yogaNode))}};
140
147
 
141
148
  layoutMetrics.borderWidth = EdgeInsets{
142
149
  floatFromYogaFloat(YGNodeLayoutGetBorder(&yogaNode, YGEdgeLeft)),
@@ -145,30 +152,23 @@ inline LayoutMetrics layoutMetricsFromYogaNode(yoga::Node& yogaNode) {
145
152
  floatFromYogaFloat(YGNodeLayoutGetBorder(&yogaNode, YGEdgeBottom))};
146
153
 
147
154
  layoutMetrics.contentInsets = EdgeInsets{
148
- layoutMetrics.borderWidth.left +
149
- floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeLeft)),
150
- layoutMetrics.borderWidth.top +
151
- floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeTop)),
152
- layoutMetrics.borderWidth.right +
153
- floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeRight)),
154
- layoutMetrics.borderWidth.bottom +
155
- floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeBottom))};
156
-
157
- layoutMetrics.displayType =
158
- displayTypeFromYGDisplay(YGNodeStyleGetDisplay(&yogaNode));
159
-
160
- layoutMetrics.positionType =
161
- positionTypeFromYogaPositionType(yogaNode.style().positionType());
162
-
163
- layoutMetrics.layoutDirection =
164
- YGNodeLayoutGetDirection(&yogaNode) == YGDirectionRTL
165
- ? LayoutDirection::RightToLeft
166
- : LayoutDirection::LeftToRight;
155
+ layoutMetrics.borderWidth.left + floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeLeft)),
156
+ layoutMetrics.borderWidth.top + floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeTop)),
157
+ layoutMetrics.borderWidth.right + floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeRight)),
158
+ layoutMetrics.borderWidth.bottom + floatFromYogaFloat(YGNodeLayoutGetPadding(&yogaNode, YGEdgeBottom))};
159
+
160
+ layoutMetrics.displayType = displayTypeFromYGDisplay(YGNodeStyleGetDisplay(&yogaNode));
161
+
162
+ layoutMetrics.positionType = positionTypeFromYogaPositionType(yogaNode.style().positionType());
163
+
164
+ layoutMetrics.layoutDirection = YGNodeLayoutGetDirection(&yogaNode) == YGDirectionRTL ? LayoutDirection::RightToLeft
165
+ : LayoutDirection::LeftToRight;
167
166
 
168
167
  return layoutMetrics;
169
168
  }
170
169
 
171
- inline YGDirection yogaDirectionFromLayoutDirection(LayoutDirection direction) {
170
+ inline YGDirection yogaDirectionFromLayoutDirection(LayoutDirection direction)
171
+ {
172
172
  switch (direction) {
173
173
  case LayoutDirection::Undefined:
174
174
  return YGDirectionInherit;
@@ -179,10 +179,8 @@ inline YGDirection yogaDirectionFromLayoutDirection(LayoutDirection direction) {
179
179
  }
180
180
  }
181
181
 
182
- inline void fromRawValue(
183
- const PropsParserContext& context,
184
- const RawValue& value,
185
- yoga::Direction& result) {
182
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Direction &result)
183
+ {
186
184
  result = yoga::Direction::Inherit;
187
185
  react_native_expect(value.hasType<std::string>());
188
186
  if (!value.hasType<std::string>()) {
@@ -204,10 +202,8 @@ inline void fromRawValue(
204
202
  LOG(ERROR) << "Could not parse yoga::Direction: " << stringValue;
205
203
  }
206
204
 
207
- inline void fromRawValue(
208
- const PropsParserContext& context,
209
- const RawValue& value,
210
- yoga::FlexDirection& result) {
205
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::FlexDirection &result)
206
+ {
211
207
  result = yoga::FlexDirection::Column;
212
208
  react_native_expect(value.hasType<std::string>());
213
209
  if (!value.hasType<std::string>()) {
@@ -233,10 +229,8 @@ inline void fromRawValue(
233
229
  LOG(ERROR) << "Could not parse yoga::FlexDirection: " << stringValue;
234
230
  }
235
231
 
236
- inline void fromRawValue(
237
- const PropsParserContext& /*context*/,
238
- const RawValue& value,
239
- yoga::BoxSizing& result) {
232
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, yoga::BoxSizing &result)
233
+ {
240
234
  result = yoga::BoxSizing::BorderBox;
241
235
  react_native_expect(value.hasType<std::string>());
242
236
  if (!value.hasType<std::string>()) {
@@ -255,10 +249,8 @@ inline void fromRawValue(
255
249
  LOG(ERROR) << "Could not parse yoga::BoxSizing: " << stringValue;
256
250
  }
257
251
 
258
- inline void fromRawValue(
259
- const PropsParserContext& context,
260
- const RawValue& value,
261
- yoga::Justify& result) {
252
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Justify &result)
253
+ {
262
254
  result = yoga::Justify::FlexStart;
263
255
  react_native_expect(value.hasType<std::string>());
264
256
  if (!value.hasType<std::string>()) {
@@ -292,10 +284,8 @@ inline void fromRawValue(
292
284
  LOG(ERROR) << "Could not parse yoga::Justify: " << stringValue;
293
285
  }
294
286
 
295
- inline void fromRawValue(
296
- const PropsParserContext& context,
297
- const RawValue& value,
298
- yoga::Align& result) {
287
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Align &result)
288
+ {
299
289
  result = yoga::Align::Stretch;
300
290
  react_native_expect(value.hasType<std::string>());
301
291
  if (!value.hasType<std::string>()) {
@@ -342,10 +332,8 @@ inline void fromRawValue(
342
332
  react_native_expect(false);
343
333
  }
344
334
 
345
- inline void fromRawValue(
346
- const PropsParserContext& context,
347
- const RawValue& value,
348
- yoga::PositionType& result) {
335
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::PositionType &result)
336
+ {
349
337
  result = yoga::PositionType::Relative;
350
338
  react_native_expect(value.hasType<std::string>());
351
339
  if (!value.hasType<std::string>()) {
@@ -367,10 +355,8 @@ inline void fromRawValue(
367
355
  LOG(ERROR) << "Could not parse yoga::PositionType: " << stringValue;
368
356
  }
369
357
 
370
- inline void fromRawValue(
371
- const PropsParserContext& context,
372
- const RawValue& value,
373
- yoga::Wrap& result) {
358
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Wrap &result)
359
+ {
374
360
  result = yoga::Wrap::NoWrap;
375
361
  react_native_expect(value.hasType<std::string>());
376
362
  if (!value.hasType<std::string>()) {
@@ -392,10 +378,8 @@ inline void fromRawValue(
392
378
  LOG(ERROR) << "Could not parse yoga::Wrap: " << stringValue;
393
379
  }
394
380
 
395
- inline void fromRawValue(
396
- const PropsParserContext& context,
397
- const RawValue& value,
398
- yoga::Overflow& result) {
381
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Overflow &result)
382
+ {
399
383
  result = yoga::Overflow::Visible;
400
384
  react_native_expect(value.hasType<std::string>());
401
385
  if (!value.hasType<std::string>()) {
@@ -418,10 +402,8 @@ inline void fromRawValue(
418
402
  react_native_expect(false);
419
403
  }
420
404
 
421
- inline void fromRawValue(
422
- const PropsParserContext& context,
423
- const RawValue& value,
424
- yoga::Display& result) {
405
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Display &result)
406
+ {
425
407
  result = yoga::Display::Flex;
426
408
  react_native_expect(value.hasType<std::string>());
427
409
  if (!value.hasType<std::string>()) {
@@ -443,10 +425,8 @@ inline void fromRawValue(
443
425
  LOG(ERROR) << "Could not parse yoga::Display: " << stringValue;
444
426
  }
445
427
 
446
- inline void fromRawValue(
447
- const PropsParserContext& /*context*/,
448
- const RawValue& value,
449
- yoga::Style::SizeLength& result) {
428
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, yoga::Style::SizeLength &result)
429
+ {
450
430
  if (value.hasType<Float>()) {
451
431
  result = yoga::StyleSizeLength::points((float)value);
452
432
  return;
@@ -467,12 +447,10 @@ inline void fromRawValue(
467
447
  } else {
468
448
  auto parsed = parseCSSProperty<CSSNumber, CSSPercentage>(stringValue);
469
449
  if (std::holds_alternative<CSSPercentage>(parsed)) {
470
- result = yoga::StyleSizeLength::percent(
471
- std::get<CSSPercentage>(parsed).value);
450
+ result = yoga::StyleSizeLength::percent(std::get<CSSPercentage>(parsed).value);
472
451
  return;
473
452
  } else if (std::holds_alternative<CSSNumber>(parsed)) {
474
- result =
475
- yoga::StyleSizeLength::points(std::get<CSSNumber>(parsed).value);
453
+ result = yoga::StyleSizeLength::points(std::get<CSSNumber>(parsed).value);
476
454
  return;
477
455
  }
478
456
  }
@@ -480,10 +458,8 @@ inline void fromRawValue(
480
458
  result = yoga::StyleSizeLength::undefined();
481
459
  }
482
460
 
483
- inline void fromRawValue(
484
- const PropsParserContext& context,
485
- const RawValue& value,
486
- yoga::Style::Length& result) {
461
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::Style::Length &result)
462
+ {
487
463
  if (value.hasType<Float>()) {
488
464
  result = yoga::StyleLength::points((float)value);
489
465
  return;
@@ -495,8 +471,7 @@ inline void fromRawValue(
495
471
  } else {
496
472
  auto parsed = parseCSSProperty<CSSNumber, CSSPercentage>(stringValue);
497
473
  if (std::holds_alternative<CSSPercentage>(parsed)) {
498
- result =
499
- yoga::StyleLength::percent(std::get<CSSPercentage>(parsed).value);
474
+ result = yoga::StyleLength::percent(std::get<CSSPercentage>(parsed).value);
500
475
  return;
501
476
  } else if (std::holds_alternative<CSSNumber>(parsed)) {
502
477
  result = yoga::StyleLength::points(std::get<CSSNumber>(parsed).value);
@@ -507,24 +482,20 @@ inline void fromRawValue(
507
482
  result = yoga::StyleLength::undefined();
508
483
  }
509
484
 
510
- inline void fromRawValue(
511
- const PropsParserContext& context,
512
- const RawValue& value,
513
- YGValue& result) {
485
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, YGValue &result)
486
+ {
514
487
  yoga::Style::Length length{};
515
488
  fromRawValue(context, value, length);
516
489
  result = (YGValue)length;
517
490
  }
518
491
 
519
- inline void fromRawValue(
520
- const PropsParserContext& context,
521
- const RawValue& value,
522
- yoga::FloatOptional& result) {
523
- result = value.hasType<float>() ? yoga::FloatOptional((float)value)
524
- : yoga::FloatOptional();
492
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, yoga::FloatOptional &result)
493
+ {
494
+ result = value.hasType<float>() ? yoga::FloatOptional((float)value) : yoga::FloatOptional();
525
495
  }
526
496
 
527
- inline std::optional<Float> toRadians(const RawValue& value) {
497
+ inline std::optional<Float> toRadians(const RawValue &value)
498
+ {
528
499
  if (value.hasType<Float>()) {
529
500
  return (Float)value;
530
501
  }
@@ -534,13 +505,14 @@ inline std::optional<Float> toRadians(const RawValue& value) {
534
505
 
535
506
  auto angle = parseCSSProperty<CSSAngle>((std::string)value);
536
507
  if (std::holds_alternative<CSSAngle>(angle)) {
537
- return std::get<CSSAngle>(angle).degrees * M_PI / 180.0f;
508
+ return static_cast<float>(std::get<CSSAngle>(angle).degrees * M_PI / 180.0f);
538
509
  }
539
510
 
540
511
  return {};
541
512
  }
542
513
 
543
- inline ValueUnit toValueUnit(const RawValue& value) {
514
+ inline ValueUnit toValueUnit(const RawValue &value)
515
+ {
544
516
  if (value.hasType<Float>()) {
545
517
  return ValueUnit((Float)value, UnitType::Point);
546
518
  }
@@ -556,17 +528,13 @@ inline ValueUnit toValueUnit(const RawValue& value) {
556
528
  return {};
557
529
  }
558
530
 
559
- inline void fromRawValue(
560
- const PropsParserContext& /*context*/,
561
- const RawValue& value,
562
- ValueUnit& result) {
531
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, ValueUnit &result)
532
+ {
563
533
  result = toValueUnit(value);
564
534
  }
565
535
 
566
- inline void fromRawValue(
567
- const PropsParserContext& context,
568
- const RawValue& value,
569
- Transform& result) {
536
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, Transform &result)
537
+ {
570
538
  auto transformMatrix = Transform{};
571
539
  react_native_expect(value.hasType<std::vector<RawValue>>());
572
540
  if (!value.hasType<std::vector<RawValue>>()) {
@@ -575,14 +543,13 @@ inline void fromRawValue(
575
543
  }
576
544
 
577
545
  auto configurations = static_cast<std::vector<RawValue>>(value);
578
- for (const auto& configuration : configurations) {
546
+ for (const auto &configuration : configurations) {
579
547
  if (!configuration.hasType<std::unordered_map<std::string, RawValue>>()) {
580
548
  result = {};
581
549
  return;
582
550
  }
583
551
 
584
- auto configurationPair =
585
- static_cast<std::unordered_map<std::string, RawValue>>(configuration);
552
+ auto configurationPair = static_cast<std::unordered_map<std::string, RawValue>>(configuration);
586
553
  if (configurationPair.size() != 1) {
587
554
  result = {};
588
555
  return;
@@ -590,7 +557,7 @@ inline void fromRawValue(
590
557
 
591
558
  auto pair = configurationPair.begin();
592
559
  auto operation = pair->first;
593
- auto& parameters = pair->second;
560
+ auto &parameters = pair->second;
594
561
  auto Zero = ValueUnit(0, UnitType::Point);
595
562
  auto One = ValueUnit(1, UnitType::Point);
596
563
 
@@ -613,23 +580,51 @@ inline void fromRawValue(
613
580
  return;
614
581
  }
615
582
 
616
- size_t i = 0;
617
- for (auto number : numbers) {
618
- transformMatrix.matrix[i++] = number;
583
+ if (numbers.size() == 16) {
584
+ size_t i = 0;
585
+
586
+ for (auto number : numbers) {
587
+ transformMatrix.matrix[i++] = number;
588
+ }
589
+ } else if (numbers.size() == 9) {
590
+ // We need to convert the 2d transform matrix into a 3d one as such:
591
+ // [
592
+ // x00, x01, 0, x02
593
+ // x10, x11, 0, x12
594
+ // 0, 0, 1, 0
595
+ // x20, x21, 0, x22
596
+ // ]
597
+ transformMatrix.matrix[0] = numbers[0];
598
+ transformMatrix.matrix[1] = numbers[1];
599
+ transformMatrix.matrix[2] = 0;
600
+ transformMatrix.matrix[3] = numbers[2];
601
+ transformMatrix.matrix[4] = numbers[3];
602
+ transformMatrix.matrix[5] = numbers[4];
603
+ transformMatrix.matrix[6] = 0;
604
+ transformMatrix.matrix[7] = numbers[5];
605
+ transformMatrix.matrix[8] = 0;
606
+ transformMatrix.matrix[9] = 0;
607
+ transformMatrix.matrix[10] = 1;
608
+ transformMatrix.matrix[11] = 0;
609
+ transformMatrix.matrix[12] = numbers[6];
610
+ transformMatrix.matrix[13] = numbers[7];
611
+ transformMatrix.matrix[14] = 0;
612
+ transformMatrix.matrix[15] = numbers[8];
619
613
  }
620
- transformMatrix.operations.push_back(TransformOperation{
621
- TransformOperationType::Arbitrary, Zero, Zero, Zero});
614
+ transformMatrix.operations.push_back(
615
+ TransformOperation{.type = TransformOperationType::Arbitrary, .x = Zero, .y = Zero, .z = Zero});
622
616
  } else if (operation == "perspective") {
623
617
  if (!parameters.hasType<Float>()) {
624
618
  result = {};
625
619
  return;
626
620
  }
627
621
 
628
- transformMatrix.operations.push_back(TransformOperation{
629
- TransformOperationType::Perspective,
630
- ValueUnit((Float)parameters, UnitType::Point),
631
- Zero,
632
- Zero});
622
+ transformMatrix.operations.push_back(
623
+ TransformOperation{
624
+ .type = TransformOperationType::Perspective,
625
+ .x = ValueUnit((Float)parameters, UnitType::Point),
626
+ .y = Zero,
627
+ .z = Zero});
633
628
  } else if (operation == "rotateX") {
634
629
  auto radians = toRadians(parameters);
635
630
  if (!radians.has_value()) {
@@ -637,11 +632,9 @@ inline void fromRawValue(
637
632
  return;
638
633
  }
639
634
 
640
- transformMatrix.operations.push_back(TransformOperation{
641
- TransformOperationType::Rotate,
642
- ValueUnit(*radians, UnitType::Point),
643
- Zero,
644
- Zero});
635
+ transformMatrix.operations.push_back(
636
+ TransformOperation{
637
+ .type = TransformOperationType::Rotate, .x = ValueUnit(*radians, UnitType::Point), .y = Zero, .z = Zero});
645
638
  } else if (operation == "rotateY") {
646
639
  auto radians = toRadians(parameters);
647
640
  if (!radians.has_value()) {
@@ -649,11 +642,9 @@ inline void fromRawValue(
649
642
  return;
650
643
  }
651
644
 
652
- transformMatrix.operations.push_back(TransformOperation{
653
- TransformOperationType::Rotate,
654
- Zero,
655
- ValueUnit(*radians, UnitType::Point),
656
- Zero});
645
+ transformMatrix.operations.push_back(
646
+ TransformOperation{
647
+ .type = TransformOperationType::Rotate, .x = Zero, .y = ValueUnit(*radians, UnitType::Point), .z = Zero});
657
648
  } else if (operation == "rotateZ" || operation == "rotate") {
658
649
  auto radians = toRadians(parameters);
659
650
  if (!radians.has_value()) {
@@ -661,11 +652,9 @@ inline void fromRawValue(
661
652
  return;
662
653
  }
663
654
 
664
- transformMatrix.operations.push_back(TransformOperation{
665
- TransformOperationType::Rotate,
666
- Zero,
667
- Zero,
668
- ValueUnit(*radians, UnitType::Point)});
655
+ transformMatrix.operations.push_back(
656
+ TransformOperation{
657
+ .type = TransformOperationType::Rotate, .x = Zero, .y = Zero, .z = ValueUnit(*radians, UnitType::Point)});
669
658
  } else if (operation == "scale") {
670
659
  if (!parameters.hasType<Float>()) {
671
660
  result = {};
@@ -673,41 +662,44 @@ inline void fromRawValue(
673
662
  }
674
663
 
675
664
  auto number = ValueUnit((Float)parameters, UnitType::Point);
676
- transformMatrix.operations.push_back(TransformOperation{
677
- TransformOperationType::Scale, number, number, number});
665
+ transformMatrix.operations.push_back(
666
+ TransformOperation{.type = TransformOperationType::Scale, .x = number, .y = number, .z = number});
678
667
  } else if (operation == "scaleX") {
679
668
  if (!parameters.hasType<Float>()) {
680
669
  result = {};
681
670
  return;
682
671
  }
683
672
 
684
- transformMatrix.operations.push_back(TransformOperation{
685
- TransformOperationType::Scale,
686
- ValueUnit((Float)parameters, UnitType::Point),
687
- One,
688
- One});
673
+ transformMatrix.operations.push_back(
674
+ TransformOperation{
675
+ .type = TransformOperationType::Scale,
676
+ .x = ValueUnit((Float)parameters, UnitType::Point),
677
+ .y = One,
678
+ .z = One});
689
679
  } else if (operation == "scaleY") {
690
680
  if (!parameters.hasType<Float>()) {
691
681
  result = {};
692
682
  return;
693
683
  }
694
684
 
695
- transformMatrix.operations.push_back(TransformOperation{
696
- TransformOperationType::Scale,
697
- One,
698
- ValueUnit((Float)parameters, UnitType::Point),
699
- One});
685
+ transformMatrix.operations.push_back(
686
+ TransformOperation{
687
+ .type = TransformOperationType::Scale,
688
+ .x = One,
689
+ .y = ValueUnit((Float)parameters, UnitType::Point),
690
+ .z = One});
700
691
  } else if (operation == "scaleZ") {
701
692
  if (!parameters.hasType<Float>()) {
702
693
  result = {};
703
694
  return;
704
695
  }
705
696
 
706
- transformMatrix.operations.push_back(TransformOperation{
707
- TransformOperationType::Scale,
708
- One,
709
- One,
710
- ValueUnit((Float)parameters, UnitType::Point)});
697
+ transformMatrix.operations.push_back(
698
+ TransformOperation{
699
+ .type = TransformOperationType::Scale,
700
+ .x = One,
701
+ .y = One,
702
+ .z = ValueUnit((Float)parameters, UnitType::Point)});
711
703
  } else if (operation == "translate") {
712
704
  if (!parameters.hasType<std::vector<RawValue>>()) {
713
705
  result = {};
@@ -732,8 +724,8 @@ inline void fromRawValue(
732
724
  return;
733
725
  }
734
726
 
735
- transformMatrix.operations.push_back(TransformOperation{
736
- TransformOperationType::Translate, valueX, valueY, Zero});
727
+ transformMatrix.operations.push_back(
728
+ TransformOperation{.type = TransformOperationType::Translate, .x = valueX, .y = valueY, .z = Zero});
737
729
  } else if (operation == "translateX") {
738
730
  auto valueX = toValueUnit(parameters);
739
731
  if (!valueX) {
@@ -741,8 +733,8 @@ inline void fromRawValue(
741
733
  return;
742
734
  }
743
735
 
744
- transformMatrix.operations.push_back(TransformOperation{
745
- TransformOperationType::Translate, valueX, Zero, Zero});
736
+ transformMatrix.operations.push_back(
737
+ TransformOperation{.type = TransformOperationType::Translate, .x = valueX, .y = Zero, .z = Zero});
746
738
  } else if (operation == "translateY") {
747
739
  auto valueY = toValueUnit(parameters);
748
740
  if (!valueY) {
@@ -750,8 +742,8 @@ inline void fromRawValue(
750
742
  return;
751
743
  }
752
744
 
753
- transformMatrix.operations.push_back(TransformOperation{
754
- TransformOperationType::Translate, Zero, valueY, Zero});
745
+ transformMatrix.operations.push_back(
746
+ TransformOperation{.type = TransformOperationType::Translate, .x = Zero, .y = valueY, .z = Zero});
755
747
  } else if (operation == "skewX") {
756
748
  auto radians = toRadians(parameters);
757
749
  if (!radians.has_value()) {
@@ -759,11 +751,9 @@ inline void fromRawValue(
759
751
  return;
760
752
  }
761
753
 
762
- transformMatrix.operations.push_back(TransformOperation{
763
- TransformOperationType::Skew,
764
- ValueUnit(*radians, UnitType::Point),
765
- Zero,
766
- Zero});
754
+ transformMatrix.operations.push_back(
755
+ TransformOperation{
756
+ .type = TransformOperationType::Skew, .x = ValueUnit(*radians, UnitType::Point), .y = Zero, .z = Zero});
767
757
  } else if (operation == "skewY") {
768
758
  auto radians = toRadians(parameters);
769
759
  if (!radians.has_value()) {
@@ -771,21 +761,17 @@ inline void fromRawValue(
771
761
  return;
772
762
  }
773
763
 
774
- transformMatrix.operations.push_back(TransformOperation{
775
- TransformOperationType::Skew,
776
- Zero,
777
- ValueUnit(*radians, UnitType::Point),
778
- Zero});
764
+ transformMatrix.operations.push_back(
765
+ TransformOperation{
766
+ .type = TransformOperationType::Skew, .x = Zero, .y = ValueUnit(*radians, UnitType::Point), .z = Zero});
779
767
  }
780
768
  }
781
769
 
782
770
  result = transformMatrix;
783
771
  }
784
772
 
785
- inline void fromRawValue(
786
- const PropsParserContext& context,
787
- const RawValue& value,
788
- TransformOrigin& result) {
773
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, TransformOrigin &result)
774
+ {
789
775
  if (!value.hasType<std::vector<RawValue>>()) {
790
776
  result = {};
791
777
  return;
@@ -818,10 +804,8 @@ inline void fromRawValue(
818
804
  result = transformOrigin;
819
805
  }
820
806
 
821
- inline void fromRawValue(
822
- const PropsParserContext& context,
823
- const RawValue& value,
824
- PointerEventsMode& result) {
807
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, PointerEventsMode &result)
808
+ {
825
809
  result = PointerEventsMode::Auto;
826
810
  react_native_expect(value.hasType<std::string>());
827
811
  if (!value.hasType<std::string>()) {
@@ -848,7 +832,8 @@ inline void fromRawValue(
848
832
  react_native_expect(false);
849
833
  }
850
834
 
851
- inline std::string toString(const PointerEventsMode& value) {
835
+ inline std::string toString(PointerEventsMode value)
836
+ {
852
837
  switch (value) {
853
838
  case PointerEventsMode::Auto:
854
839
  return "auto";
@@ -861,10 +846,8 @@ inline std::string toString(const PointerEventsMode& value) {
861
846
  }
862
847
  }
863
848
 
864
- inline void fromRawValue(
865
- const PropsParserContext& context,
866
- const RawValue& value,
867
- BackfaceVisibility& result) {
849
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, BackfaceVisibility &result)
850
+ {
868
851
  result = BackfaceVisibility::Auto;
869
852
  react_native_expect(value.hasType<std::string>());
870
853
  if (!value.hasType<std::string>()) {
@@ -887,10 +870,8 @@ inline void fromRawValue(
887
870
  react_native_expect(false);
888
871
  }
889
872
 
890
- inline void fromRawValue(
891
- const PropsParserContext& context,
892
- const RawValue& value,
893
- BorderCurve& result) {
873
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, BorderCurve &result)
874
+ {
894
875
  result = BorderCurve::Circular;
895
876
  react_native_expect(value.hasType<std::string>());
896
877
  if (!value.hasType<std::string>()) {
@@ -909,10 +890,8 @@ inline void fromRawValue(
909
890
  react_native_expect(false);
910
891
  }
911
892
 
912
- inline void fromRawValue(
913
- const PropsParserContext& context,
914
- const RawValue& value,
915
- BorderStyle& result) {
893
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, BorderStyle &result)
894
+ {
916
895
  result = BorderStyle::Solid;
917
896
  react_native_expect(value.hasType<std::string>());
918
897
  if (!value.hasType<std::string>()) {
@@ -935,10 +914,8 @@ inline void fromRawValue(
935
914
  react_native_expect(false);
936
915
  }
937
916
 
938
- inline void fromRawValue(
939
- const PropsParserContext& context,
940
- const RawValue& value,
941
- OutlineStyle& result) {
917
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, OutlineStyle &result)
918
+ {
942
919
  result = OutlineStyle::Solid;
943
920
  react_native_expect(value.hasType<std::string>());
944
921
  if (!value.hasType<std::string>()) {
@@ -961,10 +938,8 @@ inline void fromRawValue(
961
938
  react_native_expect(false);
962
939
  }
963
940
 
964
- inline void fromRawValue(
965
- const PropsParserContext& context,
966
- const RawValue& value,
967
- Cursor& result) {
941
+ inline void fromRawValue(const PropsParserContext &context, const RawValue &value, Cursor &result)
942
+ {
968
943
  result = Cursor::Auto;
969
944
  react_native_expect(value.hasType<std::string>());
970
945
  if (!value.hasType<std::string>()) {
@@ -1119,10 +1094,8 @@ inline void fromRawValue(
1119
1094
  react_native_expect(false);
1120
1095
  }
1121
1096
 
1122
- inline void fromRawValue(
1123
- const PropsParserContext& /*context*/,
1124
- const RawValue& value,
1125
- LayoutConformance& result) {
1097
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, LayoutConformance &result)
1098
+ {
1126
1099
  react_native_expect(value.hasType<std::string>());
1127
1100
  result = LayoutConformance::Strict;
1128
1101
  if (!value.hasType<std::string>()) {
@@ -1140,10 +1113,8 @@ inline void fromRawValue(
1140
1113
  }
1141
1114
  }
1142
1115
 
1143
- inline void fromRawValue(
1144
- const PropsParserContext& /*context*/,
1145
- const RawValue& value,
1146
- BlendMode& result) {
1116
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, BlendMode &result)
1117
+ {
1147
1118
  react_native_expect(value.hasType<std::string>());
1148
1119
  result = BlendMode::Normal;
1149
1120
  if (!value.hasType<std::string>()) {
@@ -1161,201 +1132,174 @@ inline void fromRawValue(
1161
1132
  result = blendMode.value();
1162
1133
  }
1163
1134
 
1164
- inline void fromRawValue(
1165
- const PropsParserContext& context,
1166
- const RawValue& value,
1167
- std::vector<BackgroundImage>& result) {
1135
+ inline void
1136
+ fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, std::vector<BackgroundSize> &result)
1137
+ {
1168
1138
  react_native_expect(value.hasType<std::vector<RawValue>>());
1169
1139
  if (!value.hasType<std::vector<RawValue>>()) {
1170
1140
  result = {};
1171
1141
  return;
1172
1142
  }
1173
1143
 
1174
- std::vector<BackgroundImage> backgroundImage{};
1175
- auto rawBackgroundImage = static_cast<std::vector<RawValue>>(value);
1176
- for (const auto& rawBackgroundImageValue : rawBackgroundImage) {
1177
- bool isMap = rawBackgroundImageValue
1178
- .hasType<std::unordered_map<std::string, RawValue>>();
1179
- react_native_expect(isMap);
1180
- if (!isMap) {
1181
- result = {};
1182
- return;
1183
- }
1184
-
1185
- auto rawBackgroundImageMap =
1186
- static_cast<std::unordered_map<std::string, RawValue>>(
1187
- rawBackgroundImageValue);
1144
+ std::vector<BackgroundSize> backgroundSizes{};
1145
+ auto rawBackgroundSizes = static_cast<std::vector<RawValue>>(value);
1188
1146
 
1189
- auto typeIt = rawBackgroundImageMap.find("type");
1190
- if (typeIt == rawBackgroundImageMap.end() ||
1191
- !typeIt->second.hasType<std::string>()) {
1192
- continue;
1193
- }
1147
+ for (const auto &rawBackgroundSizeValue : rawBackgroundSizes) {
1148
+ if (rawBackgroundSizeValue.hasType<std::string>()) {
1149
+ auto sizeStr = (std::string)rawBackgroundSizeValue;
1150
+ if (sizeStr == "cover") {
1151
+ backgroundSizes.emplace_back(BackgroundSizeKeyword::Cover);
1152
+ } else if (sizeStr == "contain") {
1153
+ backgroundSizes.emplace_back(BackgroundSizeKeyword::Contain);
1154
+ }
1155
+ } else if (rawBackgroundSizeValue.hasType<std::unordered_map<std::string, RawValue>>()) {
1156
+ auto sizeMap = static_cast<std::unordered_map<std::string, RawValue>>(rawBackgroundSizeValue);
1157
+
1158
+ BackgroundSizeLengthPercentage sizeLengthPercentage;
1159
+
1160
+ auto xIt = sizeMap.find("x");
1161
+ if (xIt != sizeMap.end()) {
1162
+ if (xIt->second.hasType<std::string>() && (std::string)(xIt->second) == "auto") {
1163
+ sizeLengthPercentage.x = std::monostate{};
1164
+ } else {
1165
+ auto valueUnit = toValueUnit(xIt->second);
1166
+ if (valueUnit) {
1167
+ sizeLengthPercentage.x = valueUnit;
1168
+ }
1169
+ }
1170
+ }
1194
1171
 
1195
- std::string type = (std::string)(typeIt->second);
1196
- std::vector<ColorStop> colorStops;
1197
- auto colorStopsIt = rawBackgroundImageMap.find("colorStops");
1198
-
1199
- if (colorStopsIt != rawBackgroundImageMap.end() &&
1200
- colorStopsIt->second.hasType<std::vector<RawValue>>()) {
1201
- auto rawColorStops =
1202
- static_cast<std::vector<RawValue>>(colorStopsIt->second);
1203
-
1204
- for (const auto& stop : rawColorStops) {
1205
- if (stop.hasType<std::unordered_map<std::string, RawValue>>()) {
1206
- auto stopMap =
1207
- static_cast<std::unordered_map<std::string, RawValue>>(stop);
1208
- auto positionIt = stopMap.find("position");
1209
- auto colorIt = stopMap.find("color");
1210
-
1211
- if (positionIt != stopMap.end() && colorIt != stopMap.end()) {
1212
- ColorStop colorStop;
1213
- if (positionIt->second.hasValue()) {
1214
- auto valueUnit = toValueUnit(positionIt->second);
1215
- if (!valueUnit) {
1216
- result = {};
1217
- return;
1218
- }
1219
- colorStop.position = valueUnit;
1220
- }
1221
- if (colorIt->second.hasValue()) {
1222
- fromRawValue(
1223
- context.contextContainer,
1224
- context.surfaceId,
1225
- colorIt->second,
1226
- colorStop.color);
1227
- }
1228
- colorStops.push_back(colorStop);
1172
+ auto yIt = sizeMap.find("y");
1173
+ if (yIt != sizeMap.end()) {
1174
+ if (yIt->second.hasType<std::string>() && (std::string)(yIt->second) == "auto") {
1175
+ sizeLengthPercentage.y = std::monostate{};
1176
+ } else {
1177
+ auto valueUnit = toValueUnit(yIt->second);
1178
+ if (valueUnit) {
1179
+ sizeLengthPercentage.y = valueUnit;
1229
1180
  }
1230
1181
  }
1231
1182
  }
1183
+
1184
+ backgroundSizes.emplace_back(sizeLengthPercentage);
1232
1185
  }
1186
+ }
1233
1187
 
1234
- if (type == "linear-gradient") {
1235
- LinearGradient linearGradient;
1236
-
1237
- auto directionIt = rawBackgroundImageMap.find("direction");
1238
- if (directionIt != rawBackgroundImageMap.end() &&
1239
- directionIt->second
1240
- .hasType<std::unordered_map<std::string, RawValue>>()) {
1241
- auto directionMap =
1242
- static_cast<std::unordered_map<std::string, RawValue>>(
1243
- directionIt->second);
1244
-
1245
- auto directionTypeIt = directionMap.find("type");
1246
- auto valueIt = directionMap.find("value");
1247
-
1248
- if (directionTypeIt != directionMap.end() &&
1249
- valueIt != directionMap.end()) {
1250
- std::string directionType = (std::string)(directionTypeIt->second);
1251
-
1252
- if (directionType == "angle") {
1253
- linearGradient.direction.type = GradientDirectionType::Angle;
1254
- if (valueIt->second.hasType<Float>()) {
1255
- linearGradient.direction.value = (Float)(valueIt->second);
1256
- }
1257
- } else if (directionType == "keyword") {
1258
- linearGradient.direction.type = GradientDirectionType::Keyword;
1259
- if (valueIt->second.hasType<std::string>()) {
1260
- linearGradient.direction.value =
1261
- parseGradientKeyword((std::string)(valueIt->second));
1262
- }
1263
- }
1188
+ result = backgroundSizes;
1189
+ }
1190
+
1191
+ inline void
1192
+ fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, std::vector<BackgroundPosition> &result)
1193
+ {
1194
+ react_native_expect(value.hasType<std::vector<RawValue>>());
1195
+ if (!value.hasType<std::vector<RawValue>>()) {
1196
+ result = {};
1197
+ return;
1198
+ }
1199
+
1200
+ std::vector<BackgroundPosition> backgroundPositions{};
1201
+ auto rawBackgroundPositions = static_cast<std::vector<RawValue>>(value);
1202
+
1203
+ for (const auto &rawBackgroundPositionValue : rawBackgroundPositions) {
1204
+ if (rawBackgroundPositionValue.hasType<std::unordered_map<std::string, RawValue>>()) {
1205
+ auto positionMap = static_cast<std::unordered_map<std::string, RawValue>>(rawBackgroundPositionValue);
1206
+
1207
+ BackgroundPosition backgroundPosition;
1208
+
1209
+ auto topIt = positionMap.find("top");
1210
+ if (topIt != positionMap.end()) {
1211
+ auto valueUnit = toValueUnit(topIt->second);
1212
+ if (valueUnit) {
1213
+ backgroundPosition.top = valueUnit;
1264
1214
  }
1265
1215
  }
1266
1216
 
1267
- if (!colorStops.empty()) {
1268
- linearGradient.colorStops = colorStops;
1217
+ auto bottomIt = positionMap.find("bottom");
1218
+ if (bottomIt != positionMap.end()) {
1219
+ auto valueUnit = toValueUnit(bottomIt->second);
1220
+ if (valueUnit) {
1221
+ backgroundPosition.bottom = valueUnit;
1222
+ }
1269
1223
  }
1270
1224
 
1271
- backgroundImage.emplace_back(std::move(linearGradient));
1272
- } else if (type == "radial-gradient") {
1273
- RadialGradient radialGradient;
1274
- auto shapeIt = rawBackgroundImageMap.find("shape");
1275
- if (shapeIt != rawBackgroundImageMap.end() &&
1276
- shapeIt->second.hasType<std::string>()) {
1277
- auto shape = (std::string)(shapeIt->second);
1278
- radialGradient.shape = shape == "circle" ? RadialGradientShape::Circle
1279
- : RadialGradientShape::Ellipse;
1225
+ auto leftIt = positionMap.find("left");
1226
+ if (leftIt != positionMap.end()) {
1227
+ auto valueUnit = toValueUnit(leftIt->second);
1228
+ if (valueUnit) {
1229
+ backgroundPosition.left = valueUnit;
1230
+ }
1280
1231
  }
1281
1232
 
1282
- auto sizeIt = rawBackgroundImageMap.find("size");
1283
- if (sizeIt != rawBackgroundImageMap.end()) {
1284
- if (sizeIt->second.hasType<std::string>()) {
1285
- auto sizeStr = (std::string)(sizeIt->second);
1286
- if (sizeStr == "closest-side") {
1287
- radialGradient.size.value =
1288
- RadialGradientSize::SizeKeyword::ClosestSide;
1289
- } else if (sizeStr == "farthest-side") {
1290
- radialGradient.size.value =
1291
- RadialGradientSize::SizeKeyword::FarthestSide;
1292
- } else if (sizeStr == "closest-corner") {
1293
- radialGradient.size.value =
1294
- RadialGradientSize::SizeKeyword::ClosestCorner;
1295
- } else if (sizeStr == "farthest-corner") {
1296
- radialGradient.size.value =
1297
- RadialGradientSize::SizeKeyword::FarthestCorner;
1298
- }
1299
- } else if (sizeIt->second
1300
- .hasType<std::unordered_map<std::string, RawValue>>()) {
1301
- auto sizeMap = static_cast<std::unordered_map<std::string, RawValue>>(
1302
- sizeIt->second);
1303
- auto xIt = sizeMap.find("x");
1304
- auto yIt = sizeMap.find("y");
1305
- if (xIt != sizeMap.end() && yIt != sizeMap.end()) {
1306
- RadialGradientSize sizeObj;
1307
- sizeObj.value = RadialGradientSize::Dimensions{
1308
- toValueUnit(xIt->second), toValueUnit(yIt->second)};
1309
- radialGradient.size = sizeObj;
1310
- }
1233
+ auto rightIt = positionMap.find("right");
1234
+ if (rightIt != positionMap.end()) {
1235
+ auto valueUnit = toValueUnit(rightIt->second);
1236
+ if (valueUnit) {
1237
+ backgroundPosition.right = valueUnit;
1311
1238
  }
1239
+ }
1312
1240
 
1313
- auto positionIt = rawBackgroundImageMap.find("position");
1314
- if (positionIt != rawBackgroundImageMap.end() &&
1315
- positionIt->second
1316
- .hasType<std::unordered_map<std::string, RawValue>>()) {
1317
- auto positionMap =
1318
- static_cast<std::unordered_map<std::string, RawValue>>(
1319
- positionIt->second);
1320
-
1321
- auto topIt = positionMap.find("top");
1322
- auto bottomIt = positionMap.find("bottom");
1323
- auto leftIt = positionMap.find("left");
1324
- auto rightIt = positionMap.find("right");
1325
-
1326
- if (topIt != positionMap.end()) {
1327
- auto topValue = toValueUnit(topIt->second);
1328
- radialGradient.position.top = topValue;
1329
- } else if (bottomIt != positionMap.end()) {
1330
- auto bottomValue = toValueUnit(bottomIt->second);
1331
- radialGradient.position.bottom = bottomValue;
1332
- }
1241
+ backgroundPositions.emplace_back(backgroundPosition);
1242
+ }
1243
+ }
1333
1244
 
1334
- if (leftIt != positionMap.end()) {
1335
- auto leftValue = toValueUnit(leftIt->second);
1336
- radialGradient.position.left = leftValue;
1337
- } else if (rightIt != positionMap.end()) {
1338
- auto rightValue = toValueUnit(rightIt->second);
1339
- radialGradient.position.right = rightValue;
1340
- }
1245
+ result = backgroundPositions;
1246
+ }
1247
+
1248
+ inline void
1249
+ fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, std::vector<BackgroundRepeat> &result)
1250
+ {
1251
+ react_native_expect(value.hasType<std::vector<RawValue>>());
1252
+ if (!value.hasType<std::vector<RawValue>>()) {
1253
+ result = {};
1254
+ return;
1255
+ }
1256
+
1257
+ std::vector<BackgroundRepeat> backgroundRepeats{};
1258
+ auto rawBackgroundRepeats = static_cast<std::vector<RawValue>>(value);
1259
+
1260
+ for (const auto &rawBackgroundRepeatValue : rawBackgroundRepeats) {
1261
+ if (rawBackgroundRepeatValue.hasType<std::unordered_map<std::string, RawValue>>()) {
1262
+ auto repeatMap = static_cast<std::unordered_map<std::string, RawValue>>(rawBackgroundRepeatValue);
1263
+
1264
+ BackgroundRepeat backgroundRepeat;
1265
+
1266
+ auto xIt = repeatMap.find("x");
1267
+ if (xIt != repeatMap.end() && xIt->second.hasType<std::string>()) {
1268
+ auto xStr = (std::string)(xIt->second);
1269
+ if (xStr == "repeat") {
1270
+ backgroundRepeat.x = BackgroundRepeatStyle::Repeat;
1271
+ } else if (xStr == "space") {
1272
+ backgroundRepeat.x = BackgroundRepeatStyle::Space;
1273
+ } else if (xStr == "round") {
1274
+ backgroundRepeat.x = BackgroundRepeatStyle::Round;
1275
+ } else if (xStr == "no-repeat") {
1276
+ backgroundRepeat.x = BackgroundRepeatStyle::NoRepeat;
1341
1277
  }
1342
1278
  }
1343
1279
 
1344
- if (!colorStops.empty()) {
1345
- radialGradient.colorStops = colorStops;
1280
+ auto yIt = repeatMap.find("y");
1281
+ if (yIt != repeatMap.end() && yIt->second.hasType<std::string>()) {
1282
+ auto yStr = (std::string)(yIt->second);
1283
+ if (yStr == "repeat") {
1284
+ backgroundRepeat.y = BackgroundRepeatStyle::Repeat;
1285
+ } else if (yStr == "space") {
1286
+ backgroundRepeat.y = BackgroundRepeatStyle::Space;
1287
+ } else if (yStr == "round") {
1288
+ backgroundRepeat.y = BackgroundRepeatStyle::Round;
1289
+ } else if (yStr == "no-repeat") {
1290
+ backgroundRepeat.y = BackgroundRepeatStyle::NoRepeat;
1291
+ }
1346
1292
  }
1347
1293
 
1348
- backgroundImage.emplace_back(std::move(radialGradient));
1294
+ backgroundRepeats.emplace_back(backgroundRepeat);
1349
1295
  }
1350
1296
  }
1351
1297
 
1352
- result = backgroundImage;
1298
+ result = backgroundRepeats;
1353
1299
  }
1354
1300
 
1355
- inline void fromRawValue(
1356
- const PropsParserContext& /*context*/,
1357
- const RawValue& value,
1358
- Isolation& result) {
1301
+ inline void fromRawValue(const PropsParserContext & /*context*/, const RawValue &value, Isolation &result)
1302
+ {
1359
1303
  react_native_expect(value.hasType<std::string>());
1360
1304
  result = Isolation::Auto;
1361
1305
  if (!value.hasType<std::string>()) {
@@ -1373,8 +1317,10 @@ inline void fromRawValue(
1373
1317
  result = isolation.value();
1374
1318
  }
1375
1319
 
1320
+ #if RN_DEBUG_STRING_CONVERTIBLE
1376
1321
  template <size_t N>
1377
- inline std::string toString(const std::array<float, N> vec) {
1322
+ inline std::string toString(const std::array<float, N> vec)
1323
+ {
1378
1324
  std::string s;
1379
1325
 
1380
1326
  s.append("{");
@@ -1387,39 +1333,48 @@ inline std::string toString(const std::array<float, N> vec) {
1387
1333
  return s;
1388
1334
  }
1389
1335
 
1390
- inline std::string toString(const yoga::Direction& value) {
1336
+ inline std::string toString(const yoga::Direction &value)
1337
+ {
1391
1338
  return YGDirectionToString(yoga::unscopedEnum(value));
1392
1339
  }
1393
1340
 
1394
- inline std::string toString(const yoga::FlexDirection& value) {
1341
+ inline std::string toString(const yoga::FlexDirection &value)
1342
+ {
1395
1343
  return YGFlexDirectionToString(yoga::unscopedEnum(value));
1396
1344
  }
1397
1345
 
1398
- inline std::string toString(const yoga::Justify& value) {
1346
+ inline std::string toString(const yoga::Justify &value)
1347
+ {
1399
1348
  return YGJustifyToString(yoga::unscopedEnum(value));
1400
1349
  }
1401
1350
 
1402
- inline std::string toString(const yoga::Align& value) {
1351
+ inline std::string toString(const yoga::Align &value)
1352
+ {
1403
1353
  return YGAlignToString(yoga::unscopedEnum(value));
1404
1354
  }
1405
1355
 
1406
- inline std::string toString(const yoga::PositionType& value) {
1356
+ inline std::string toString(const yoga::PositionType &value)
1357
+ {
1407
1358
  return YGPositionTypeToString(yoga::unscopedEnum(value));
1408
1359
  }
1409
1360
 
1410
- inline std::string toString(const yoga::Wrap& value) {
1361
+ inline std::string toString(const yoga::Wrap &value)
1362
+ {
1411
1363
  return YGWrapToString(yoga::unscopedEnum(value));
1412
1364
  }
1413
1365
 
1414
- inline std::string toString(const yoga::Overflow& value) {
1366
+ inline std::string toString(const yoga::Overflow &value)
1367
+ {
1415
1368
  return YGOverflowToString(yoga::unscopedEnum(value));
1416
1369
  }
1417
1370
 
1418
- inline std::string toString(const yoga::Display& value) {
1371
+ inline std::string toString(const yoga::Display &value)
1372
+ {
1419
1373
  return YGDisplayToString(yoga::unscopedEnum(value));
1420
1374
  }
1421
1375
 
1422
- inline std::string toString(const yoga::Style::Length& length) {
1376
+ inline std::string toString(const yoga::Style::Length &length)
1377
+ {
1423
1378
  if (length.isUndefined()) {
1424
1379
  return "undefined";
1425
1380
  } else if (length.isAuto()) {
@@ -1433,7 +1388,8 @@ inline std::string toString(const yoga::Style::Length& length) {
1433
1388
  }
1434
1389
  }
1435
1390
 
1436
- inline std::string toString(const yoga::Style::SizeLength& length) {
1391
+ inline std::string toString(const yoga::Style::SizeLength &length)
1392
+ {
1437
1393
  if (length.isUndefined()) {
1438
1394
  return "undefined";
1439
1395
  } else if (length.isAuto()) {
@@ -1453,7 +1409,8 @@ inline std::string toString(const yoga::Style::SizeLength& length) {
1453
1409
  }
1454
1410
  }
1455
1411
 
1456
- inline std::string toString(const yoga::FloatOptional& value) {
1412
+ inline std::string toString(const yoga::FloatOptional &value)
1413
+ {
1457
1414
  if (value.isUndefined()) {
1458
1415
  return "undefined";
1459
1416
  }
@@ -1461,7 +1418,8 @@ inline std::string toString(const yoga::FloatOptional& value) {
1461
1418
  return std::to_string(value.unwrap());
1462
1419
  }
1463
1420
 
1464
- inline std::string toString(const LayoutConformance& value) {
1421
+ inline std::string toString(const LayoutConformance &value)
1422
+ {
1465
1423
  switch (value) {
1466
1424
  case LayoutConformance::Strict:
1467
1425
  return "strict";
@@ -1470,24 +1428,26 @@ inline std::string toString(const LayoutConformance& value) {
1470
1428
  }
1471
1429
  }
1472
1430
 
1473
- inline std::string toString(const std::array<Float, 16>& m) {
1431
+ inline std::string toString(const std::array<Float, 16> &m)
1432
+ {
1474
1433
  std::string result;
1475
- result += "[ " + std::to_string(m[0]) + " " + std::to_string(m[1]) + " " +
1476
- std::to_string(m[2]) + " " + std::to_string(m[3]) + " ]\n";
1477
- result += "[ " + std::to_string(m[4]) + " " + std::to_string(m[5]) + " " +
1478
- std::to_string(m[6]) + " " + std::to_string(m[7]) + " ]\n";
1479
- result += "[ " + std::to_string(m[8]) + " " + std::to_string(m[9]) + " " +
1480
- std::to_string(m[10]) + " " + std::to_string(m[11]) + " ]\n";
1481
- result += "[ " + std::to_string(m[12]) + " " + std::to_string(m[13]) + " " +
1482
- std::to_string(m[14]) + " " + std::to_string(m[15]) + " ]";
1434
+ result += "[ " + std::to_string(m[0]) + " " + std::to_string(m[1]) + " " + std::to_string(m[2]) + " " +
1435
+ std::to_string(m[3]) + " ]\n";
1436
+ result += "[ " + std::to_string(m[4]) + " " + std::to_string(m[5]) + " " + std::to_string(m[6]) + " " +
1437
+ std::to_string(m[7]) + " ]\n";
1438
+ result += "[ " + std::to_string(m[8]) + " " + std::to_string(m[9]) + " " + std::to_string(m[10]) + " " +
1439
+ std::to_string(m[11]) + " ]\n";
1440
+ result += "[ " + std::to_string(m[12]) + " " + std::to_string(m[13]) + " " + std::to_string(m[14]) + " " +
1441
+ std::to_string(m[15]) + " ]";
1483
1442
  return result;
1484
1443
  }
1485
1444
 
1486
- inline std::string toString(const Transform& transform) {
1445
+ inline std::string toString(const Transform &transform)
1446
+ {
1487
1447
  std::string result = "[";
1488
1448
  bool first = true;
1489
1449
 
1490
- for (const auto& operation : transform.operations) {
1450
+ for (const auto &operation : transform.operations) {
1491
1451
  if (!first) {
1492
1452
  result += ", ";
1493
1453
  }
@@ -1495,31 +1455,21 @@ inline std::string toString(const Transform& transform) {
1495
1455
 
1496
1456
  switch (operation.type) {
1497
1457
  case TransformOperationType::Perspective: {
1498
- result +=
1499
- "{\"perspective\": " + std::to_string(operation.x.value) + "}";
1458
+ result += "{\"perspective\": " + std::to_string(operation.x.value) + "}";
1500
1459
  break;
1501
1460
  }
1502
1461
  case TransformOperationType::Rotate: {
1503
- if (operation.x.value != 0 && operation.y.value == 0 &&
1504
- operation.z.value == 0) {
1505
- result +=
1506
- R"({"rotateX": ")" + std::to_string(operation.x.value) + "rad\"}";
1507
- } else if (
1508
- operation.x.value == 0 && operation.y.value != 0 &&
1509
- operation.z.value == 0) {
1510
- result +=
1511
- R"({"rotateY": ")" + std::to_string(operation.y.value) + "rad\"}";
1512
- } else if (
1513
- operation.x.value == 0 && operation.y.value == 0 &&
1514
- operation.z.value != 0) {
1515
- result +=
1516
- R"({"rotateZ": ")" + std::to_string(operation.z.value) + "rad\"}";
1462
+ if (operation.x.value != 0 && operation.y.value == 0 && operation.z.value == 0) {
1463
+ result += R"({"rotateX": ")" + std::to_string(operation.x.value) + "rad\"}";
1464
+ } else if (operation.x.value == 0 && operation.y.value != 0 && operation.z.value == 0) {
1465
+ result += R"({"rotateY": ")" + std::to_string(operation.y.value) + "rad\"}";
1466
+ } else if (operation.x.value == 0 && operation.y.value == 0 && operation.z.value != 0) {
1467
+ result += R"({"rotateZ": ")" + std::to_string(operation.z.value) + "rad\"}";
1517
1468
  }
1518
1469
  break;
1519
1470
  }
1520
1471
  case TransformOperationType::Scale: {
1521
- if (operation.x.value == operation.y.value &&
1522
- operation.x.value == operation.z.value) {
1472
+ if (operation.x.value == operation.y.value && operation.x.value == operation.z.value) {
1523
1473
  result += "{\"scale\": " + std::to_string(operation.x.value) + "}";
1524
1474
  } else if (operation.y.value == 1 && operation.z.value == 1) {
1525
1475
  result += "{\"scaleX\": " + std::to_string(operation.x.value) + "}";
@@ -1531,28 +1481,22 @@ inline std::string toString(const Transform& transform) {
1531
1481
  break;
1532
1482
  }
1533
1483
  case TransformOperationType::Translate: {
1534
- if (operation.x.value != 0 && operation.y.value != 0 &&
1535
- operation.z.value == 0) {
1484
+ if (operation.x.value != 0 && operation.y.value != 0 && operation.z.value == 0) {
1536
1485
  result += "{\"translate\": [";
1537
- result += std::to_string(operation.x.value) + ", " +
1538
- std::to_string(operation.y.value);
1486
+ result += std::to_string(operation.x.value) + ", " + std::to_string(operation.y.value);
1539
1487
  result += "]}";
1540
1488
  } else if (operation.x.value != 0 && operation.y.value == 0) {
1541
- result +=
1542
- "{\"translateX\": " + std::to_string(operation.x.value) + "}";
1489
+ result += "{\"translateX\": " + std::to_string(operation.x.value) + "}";
1543
1490
  } else if (operation.x.value == 0 && operation.y.value != 0) {
1544
- result +=
1545
- "{\"translateY\": " + std::to_string(operation.y.value) + "}";
1491
+ result += "{\"translateY\": " + std::to_string(operation.y.value) + "}";
1546
1492
  }
1547
1493
  break;
1548
1494
  }
1549
1495
  case TransformOperationType::Skew: {
1550
1496
  if (operation.x.value != 0 && operation.y.value == 0) {
1551
- result +=
1552
- R"({"skewX": ")" + std::to_string(operation.x.value) + "rad\"}";
1497
+ result += R"({"skewX": ")" + std::to_string(operation.x.value) + "rad\"}";
1553
1498
  } else if (operation.x.value == 0 && operation.y.value != 0) {
1554
- result +=
1555
- R"({"skewY": ")" + std::to_string(operation.y.value) + "rad\"}";
1499
+ result += R"({"skewY": ")" + std::to_string(operation.y.value) + "rad\"}";
1556
1500
  }
1557
1501
  break;
1558
1502
  }
@@ -1570,5 +1514,6 @@ inline std::string toString(const Transform& transform) {
1570
1514
  result += "]";
1571
1515
  return result;
1572
1516
  }
1517
+ #endif
1573
1518
 
1574
1519
  } // namespace facebook::react