react-native-tvos 0.78.0-0rc4 → 0.79.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 (1284) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +39 -18
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
  3. package/Libraries/Alert/Alert.js +33 -10
  4. package/Libraries/Alert/NativeAlertManager.js +2 -2
  5. package/Libraries/Alert/RCTAlertManager.android.js +1 -1
  6. package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
  7. package/Libraries/Alert/RCTAlertManager.js.flow +1 -1
  8. package/Libraries/Animated/Animated.js +8 -37
  9. package/{flow/react.js → Libraries/Animated/Animated.js.flow} +6 -6
  10. package/Libraries/Animated/AnimatedExports.js +47 -0
  11. package/Libraries/Animated/AnimatedExports.js.flow +48 -0
  12. package/Libraries/Animated/AnimatedMock.js +1 -1
  13. package/Libraries/Animated/NativeAnimatedModule.js +2 -2
  14. package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
  15. package/Libraries/Animated/animations/Animation.js +1 -4
  16. package/Libraries/Animated/createAnimatedComponent.js +3 -3
  17. package/Libraries/Animated/nodes/AnimatedObject.js +1 -0
  18. package/Libraries/Animated/nodes/AnimatedValue.js +30 -22
  19. package/Libraries/Animated/useAnimatedProps.js +4 -333
  20. package/Libraries/Animated/useAnimatedValue.js +1 -3
  21. package/Libraries/AppDelegate/RCTAppDelegate.h +6 -1
  22. package/Libraries/AppDelegate/RCTAppDelegate.mm +0 -18
  23. package/Libraries/AppDelegate/RCTAppSetupUtils.h +2 -1
  24. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +29 -20
  25. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +4 -0
  26. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +29 -0
  27. package/Libraries/AppDelegate/RCTDependencyProvider.h +3 -0
  28. package/Libraries/AppDelegate/RCTJSRuntimeConfiguratorProtocol.h +22 -0
  29. package/Libraries/AppDelegate/RCTReactNativeFactory.h +13 -2
  30. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +74 -8
  31. package/Libraries/AppDelegate/RCTRootViewFactory.h +21 -0
  32. package/Libraries/AppDelegate/RCTRootViewFactory.mm +27 -10
  33. package/Libraries/AppDelegate/RCTUIConfiguratorProtocol.h +4 -0
  34. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +6 -8
  35. package/Libraries/AppState/AppState.js +24 -7
  36. package/Libraries/AppState/NativeAppState.js +2 -2
  37. package/Libraries/BatchedBridge/BatchedBridge.js +4 -2
  38. package/Libraries/BatchedBridge/MessageQueue.js +5 -4
  39. package/Libraries/BatchedBridge/NativeModules.js +6 -4
  40. package/Libraries/Blob/Blob.js +5 -5
  41. package/Libraries/Blob/BlobManager.js +3 -2
  42. package/Libraries/Blob/BlobRegistry.js +3 -9
  43. package/Libraries/Blob/File.js +3 -2
  44. package/Libraries/Blob/FileReader.js +8 -174
  45. package/Libraries/Blob/FileReader_new.js +231 -0
  46. package/Libraries/Blob/FileReader_old.js +186 -0
  47. package/Libraries/Blob/NativeBlobModule.js +2 -2
  48. package/Libraries/Blob/NativeFileReaderModule.js +2 -2
  49. package/Libraries/Blob/React-RCTBlob.podspec +1 -1
  50. package/Libraries/Blob/URL.js +1 -1
  51. package/Libraries/Blob/URLSearchParams.js +9 -10
  52. package/Libraries/Blob/URLSearchParams.js.flow +9 -9
  53. package/Libraries/BugReporting/BugReporting.js +2 -2
  54. package/Libraries/BugReporting/NativeBugReporting.js +2 -2
  55. package/Libraries/BugReporting/dumpReactTree.js +2 -2
  56. package/Libraries/BugReporting/getReactData.js +1 -1
  57. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
  58. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
  59. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -2
  60. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
  61. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
  62. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +1 -1
  63. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +11 -11
  64. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  65. package/Libraries/Components/Button.js +6 -6
  66. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  67. package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
  68. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  69. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +14 -100
  70. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +64 -3
  71. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +138 -0
  72. package/Libraries/Components/Keyboard/Keyboard.js +9 -9
  73. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +24 -25
  74. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
  75. package/Libraries/Components/LayoutConformance/LayoutConformance.js +7 -5
  76. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
  77. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  78. package/Libraries/Components/Pressable/Pressable.js +36 -82
  79. package/Libraries/Components/Pressable/useAndroidRippleForView.js +17 -17
  80. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +4 -47
  81. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +9 -5
  82. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  83. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +54 -0
  84. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  85. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  86. package/Libraries/Components/RefreshControl/RefreshControl.js +17 -14
  87. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -1
  88. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  89. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
  90. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  91. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
  92. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
  93. package/Libraries/Components/ScrollView/ScrollView.js +140 -136
  94. package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
  95. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +7 -9
  96. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -2
  97. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +10 -11
  98. package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
  99. package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
  100. package/Libraries/Components/Sound/SoundManager.js +1 -1
  101. package/Libraries/Components/StaticRenderer.js +4 -4
  102. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
  103. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
  104. package/Libraries/Components/StatusBar/StatusBar.js +57 -31
  105. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  106. package/Libraries/Components/Switch/Switch.js +74 -45
  107. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  108. package/Libraries/Components/TV/TVEventHandler.js +1 -1
  109. package/Libraries/Components/TV/TVFocusGuideView.js +3 -3
  110. package/Libraries/Components/TV/TVTextScrollView.js +2 -2
  111. package/Libraries/Components/TV/useTVEventHandler.js +1 -1
  112. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -35
  113. package/Libraries/Components/TextInput/InputAccessoryView.js +5 -3
  114. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  115. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +2 -4
  116. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -4
  117. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +5 -2
  118. package/Libraries/Components/TextInput/TextInput.flow.js +131 -121
  119. package/Libraries/Components/TextInput/TextInput.js +152 -149
  120. package/Libraries/Components/TextInput/TextInputNativeCommands.js +1 -1
  121. package/Libraries/Components/TextInput/TextInputState.js +6 -20
  122. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
  123. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  124. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +68 -6
  125. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  126. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  127. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  128. package/Libraries/Components/Touchable/Position.js +1 -1
  129. package/Libraries/Components/Touchable/Touchable.js +23 -23
  130. package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
  131. package/Libraries/Components/Touchable/TouchableHighlight.js +45 -21
  132. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +103 -55
  133. package/Libraries/Components/Touchable/TouchableOpacity.js +57 -15
  134. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +116 -62
  135. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  136. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +11 -3
  137. package/Libraries/Components/View/ReactNativeStyleAttributes.js +17 -3
  138. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
  139. package/Libraries/Components/View/View.js +2 -2
  140. package/Libraries/Components/View/ViewAccessibility.js +245 -5
  141. package/Libraries/Components/View/ViewNativeComponent.js +2 -4
  142. package/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
  143. package/Libraries/Components/View/ViewPropTypes.js +73 -261
  144. package/Libraries/Core/Devtools/getDevServer.js +1 -3
  145. package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
  146. package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
  147. package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
  148. package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
  149. package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
  150. package/Libraries/Core/Devtools/symbolicateStackTrace.js +6 -5
  151. package/Libraries/Core/ExceptionsManager.js +6 -4
  152. package/Libraries/Core/InitializeCore.js +7 -3
  153. package/Libraries/Core/NativeExceptionsManager.js +2 -2
  154. package/Libraries/Core/RawEventEmitter.js +2 -2
  155. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  156. package/Libraries/Core/ReactNativeVersion.js +2 -2
  157. package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
  158. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
  159. package/Libraries/Core/Timers/JSTimers.js +10 -8
  160. package/Libraries/Core/Timers/NativeTiming.js +2 -2
  161. package/Libraries/Core/Timers/immediateShim.js +2 -9
  162. package/Libraries/Core/polyfillPromise.js +1 -1
  163. package/Libraries/Core/registerCallableModule.js +1 -1
  164. package/Libraries/Core/setUpAlert.js +1 -1
  165. package/Libraries/Core/setUpBatchedBridge.js +13 -8
  166. package/Libraries/Core/setUpDeveloperTools.js +5 -38
  167. package/Libraries/Core/setUpErrorHandling.js +2 -2
  168. package/Libraries/Core/setUpReactDevTools.js +26 -6
  169. package/Libraries/Core/setUpReactRefresh.js +1 -1
  170. package/Libraries/Core/setUpTimers.js +45 -66
  171. package/Libraries/Core/setUpXHR.js +11 -8
  172. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  173. package/Libraries/Debugging/DebuggingOverlayRegistry.js +10 -7
  174. package/Libraries/EventEmitter/NativeEventEmitter.js +8 -2
  175. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -5
  176. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  177. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  178. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -2
  179. package/Libraries/Events/CustomEvent.js +3 -3
  180. package/Libraries/Events/EventPolyfill.js +2 -2
  181. package/Libraries/Image/AssetRegistry.js +8 -1
  182. package/Libraries/Image/AssetSourceResolver.js +4 -4
  183. package/Libraries/Image/Image.android.js +4 -2
  184. package/Libraries/Image/Image.ios.js +1 -1
  185. package/Libraries/Image/Image.js.flow +15 -1
  186. package/Libraries/Image/ImageBackground.js +2 -2
  187. package/Libraries/Image/ImageProps.js +109 -39
  188. package/Libraries/Image/ImageTypes.flow.js +16 -6
  189. package/Libraries/Image/ImageViewNativeComponent.js +8 -11
  190. package/Libraries/Image/NativeImageEditor.js +2 -2
  191. package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
  192. package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
  193. package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
  194. package/Libraries/Image/NativeImageStoreIOS.js +2 -2
  195. package/Libraries/Image/RelativeImageStub.js +3 -1
  196. package/Libraries/Image/TextInlineImageNativeComponent.js +2 -4
  197. package/Libraries/Image/nativeImageSource.js +3 -3
  198. package/Libraries/Image/resolveAssetSource.js +4 -2
  199. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  200. package/Libraries/Interaction/InteractionManager.js +20 -9
  201. package/Libraries/Interaction/InteractionManagerStub.js +10 -2
  202. package/Libraries/Interaction/JSEventLoopWatchdog.js +2 -2
  203. package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
  204. package/Libraries/Interaction/PanResponder.js +49 -46
  205. package/Libraries/Interaction/TaskQueue.js +4 -4
  206. package/Libraries/Interaction/TouchHistoryMath.js +27 -1
  207. package/Libraries/LayoutAnimation/LayoutAnimation.js +20 -6
  208. package/Libraries/Linking/Linking.d.ts +3 -3
  209. package/Libraries/Linking/Linking.js +10 -9
  210. package/Libraries/Linking/NativeIntentAndroid.js +2 -2
  211. package/Libraries/Linking/NativeLinkingManager.js +2 -2
  212. package/Libraries/Lists/FillRateHelper.js +4 -4
  213. package/Libraries/Lists/FlatList.js +30 -30
  214. package/Libraries/Lists/SectionList.js +10 -10
  215. package/Libraries/Lists/SectionListModern.js +9 -7
  216. package/Libraries/Lists/ViewabilityHelper.js +4 -3
  217. package/Libraries/Lists/VirtualizeUtils.js +3 -5
  218. package/Libraries/Lists/VirtualizedList.js +6 -6
  219. package/Libraries/Lists/VirtualizedListContext.js +5 -5
  220. package/Libraries/Lists/VirtualizedSectionList.js +5 -3
  221. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
  222. package/Libraries/LogBox/Data/LogBoxData.js +15 -15
  223. package/Libraries/LogBox/Data/LogBoxLog.js +51 -29
  224. package/Libraries/LogBox/Data/parseLogBoxLog.js +10 -10
  225. package/Libraries/LogBox/LogBox.js +22 -2
  226. package/Libraries/LogBox/LogBoxInspectorContainer.js +3 -3
  227. package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
  228. package/Libraries/LogBox/UI/AnsiHighlight.js +7 -3
  229. package/Libraries/LogBox/UI/LogBoxButton.js +8 -6
  230. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -1
  231. package/Libraries/LogBox/UI/LogBoxInspectorBody.js +8 -2
  232. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +50 -31
  233. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +11 -3
  234. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +2 -0
  235. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
  236. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +2 -0
  237. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -4
  238. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +5 -3
  239. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
  240. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -4
  241. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -3
  242. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -2
  243. package/Libraries/LogBox/UI/LogBoxNotification.js +7 -2
  244. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +3 -1
  245. package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +2 -0
  246. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +4 -1
  247. package/Libraries/Modal/Modal.js +82 -89
  248. package/Libraries/Modal/NativeModalManager.js +2 -2
  249. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  250. package/Libraries/NativeComponent/BaseViewConfig.android.js +16 -6
  251. package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -9
  252. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  253. package/Libraries/NativeComponent/StaticViewConfigValidator.js +5 -1
  254. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  255. package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
  256. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
  257. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
  258. package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
  259. package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
  260. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
  261. package/Libraries/Network/FormData.js +1 -1
  262. package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
  263. package/Libraries/Network/NativeNetworkingIOS.js +2 -2
  264. package/Libraries/Network/RCTDataRequestHandler.mm +17 -3
  265. package/Libraries/Network/RCTFileRequestHandler.mm +17 -3
  266. package/Libraries/Network/RCTNetworking.android.js +1 -1
  267. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  268. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  269. package/Libraries/Network/RCTNetworking.mm +1 -1
  270. package/Libraries/Network/XMLHttpRequest.js +10 -685
  271. package/Libraries/Network/XMLHttpRequest_new.js +794 -0
  272. package/Libraries/Network/XMLHttpRequest_old.js +701 -0
  273. package/Libraries/Network/convertRequestBody.js +7 -4
  274. package/Libraries/Network/fetch.js +4 -3
  275. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
  276. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +65 -63
  277. package/Libraries/Pressability/HoverState.js +1 -0
  278. package/Libraries/Pressability/Pressability.js +33 -33
  279. package/Libraries/Pressability/PressabilityDebug.js +2 -2
  280. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +2 -2
  281. package/Libraries/Promise.js +2 -2
  282. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
  283. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +119 -16
  284. package/Libraries/ReactNative/AppContainer-dev.js +4 -3
  285. package/Libraries/ReactNative/AppContainer.js +3 -3
  286. package/Libraries/ReactNative/AppRegistry.js +4 -4
  287. package/Libraries/ReactNative/BridgelessUIManager.js +4 -9
  288. package/Libraries/ReactNative/FabricUIManager.js +22 -10
  289. package/Libraries/ReactNative/I18nManager.js +4 -3
  290. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
  291. package/Libraries/ReactNative/NativeI18nManager.js +2 -2
  292. package/Libraries/ReactNative/NativeUIManager.js +2 -2
  293. package/Libraries/ReactNative/PaperUIManager.js +6 -6
  294. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +7 -5
  295. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -30
  296. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +3 -3
  297. package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +3 -3
  298. package/Libraries/ReactNative/RendererImplementation.js +12 -5
  299. package/Libraries/ReactNative/RootTag.js +1 -1
  300. package/Libraries/ReactNative/UIManager.d.ts +1 -0
  301. package/Libraries/ReactNative/UIManager.js +3 -3
  302. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  303. package/Libraries/ReactNative/getNativeComponentAttributes.js +10 -9
  304. package/Libraries/ReactNative/requireNativeComponent.js +3 -2
  305. package/Libraries/ReactNativeDependencies/Package.swift +26 -0
  306. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +30 -10
  307. package/Libraries/Renderer/shims/ReactNativeTypes.js +40 -89
  308. package/Libraries/Required/RCTRequired.h +1 -1
  309. package/Libraries/Settings/NativeSettingsManager.js +2 -2
  310. package/Libraries/Settings/Settings.ios.js +1 -1
  311. package/Libraries/Settings/Settings.js +3 -3
  312. package/Libraries/Share/NativeShareModule.js +2 -2
  313. package/Libraries/Share/Share.js +11 -4
  314. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  315. package/Libraries/StyleSheet/Rect.js +2 -2
  316. package/Libraries/StyleSheet/StyleSheet.js +4 -3
  317. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  318. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +1 -1
  319. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  320. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  321. package/Libraries/StyleSheet/private/_TransformStyle.js +18 -18
  322. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  323. package/Libraries/StyleSheet/processBackgroundImage.js +138 -136
  324. package/Libraries/StyleSheet/processBoxShadow.js +4 -0
  325. package/Libraries/StyleSheet/processColor.js +2 -2
  326. package/Libraries/StyleSheet/processColorArray.js +1 -1
  327. package/Libraries/StyleSheet/processFilter.js +4 -0
  328. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  329. package/Libraries/StyleSheet/processTransform.js +1 -1
  330. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  331. package/Libraries/Text/Text.d.ts +1 -1
  332. package/Libraries/Text/Text.js +19 -17
  333. package/Libraries/Text/TextAncestor.js +2 -3
  334. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +1 -1
  335. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +3 -0
  336. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +7 -1
  337. package/Libraries/Text/TextNativeComponent.js +3 -3
  338. package/Libraries/Text/TextProps.js +134 -94
  339. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
  340. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
  341. package/Libraries/Types/CodegenTypes.js +5 -4
  342. package/Libraries/Types/CoreEventTypes.js +132 -99
  343. package/Libraries/Types/ReactDevToolsTypes.js +4 -8
  344. package/Libraries/UTFSequence.js +4 -3
  345. package/Libraries/Utilities/Appearance.js +0 -8
  346. package/Libraries/Utilities/BackHandler.android.js +3 -3
  347. package/Libraries/Utilities/BackHandler.ios.js +6 -6
  348. package/Libraries/Utilities/BackHandler.js.flow +9 -7
  349. package/Libraries/Utilities/DevLoadingView.js +1 -1
  350. package/Libraries/Utilities/DevSettings.js +15 -1
  351. package/Libraries/Utilities/DeviceInfo.js +1 -1
  352. package/Libraries/Utilities/Dimensions.js +5 -0
  353. package/Libraries/Utilities/FeatureDetection.js +2 -4
  354. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -1
  355. package/Libraries/Utilities/HMRClient.js +7 -35
  356. package/Libraries/Utilities/HMRClientProdShim.js +1 -2
  357. package/Libraries/Utilities/NativeAppearance.js +2 -2
  358. package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
  359. package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
  360. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
  361. package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
  362. package/Libraries/Utilities/Platform.android.js +6 -6
  363. package/Libraries/Utilities/Platform.ios.js +6 -6
  364. package/Libraries/Utilities/Platform.js.flow +2 -2
  365. package/Libraries/Utilities/PlatformTypes.js +181 -0
  366. package/Libraries/Utilities/PolyfillFunctions.js +3 -5
  367. package/Libraries/Utilities/RCTLog.js +1 -1
  368. package/Libraries/Utilities/ReactNativeTestTools.js +6 -6
  369. package/Libraries/Utilities/SceneTracker.js +1 -1
  370. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +2 -2
  371. package/Libraries/Utilities/binaryToBase64.js +1 -1
  372. package/Libraries/Utilities/codegenNativeCommands.js +2 -2
  373. package/Libraries/Utilities/codegenNativeComponent.js +3 -3
  374. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  375. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  376. package/Libraries/Utilities/differ/deepDiffer.js +6 -6
  377. package/Libraries/Utilities/differ/insetsDiffer.js +3 -3
  378. package/Libraries/Utilities/differ/matricesDiffer.js +3 -6
  379. package/Libraries/Utilities/differ/pointsDiffer.js +3 -3
  380. package/Libraries/Utilities/differ/sizesDiffer.js +3 -3
  381. package/Libraries/Utilities/dismissKeyboard.js +3 -2
  382. package/Libraries/Utilities/infoLog.js +1 -1
  383. package/Libraries/Utilities/logError.js +1 -1
  384. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  385. package/Libraries/Utilities/stringifySafe.js +2 -2
  386. package/Libraries/Utilities/warnOnce.js +1 -1
  387. package/Libraries/Vibration/NativeVibration.js +2 -2
  388. package/Libraries/Vibration/Vibration.js +5 -4
  389. package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
  390. package/Libraries/WebSocket/WebSocket.js +8 -285
  391. package/Libraries/WebSocket/WebSocketEvent.js +2 -2
  392. package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
  393. package/Libraries/WebSocket/WebSocket_new.js +325 -0
  394. package/Libraries/WebSocket/WebSocket_old.js +297 -0
  395. package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
  396. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -4
  397. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  398. package/Libraries/vendor/emitter/EventEmitter.js +21 -9
  399. package/README-core.md +0 -3
  400. package/React/Base/RCTAssert.h +1 -1
  401. package/React/Base/RCTBridge.mm +14 -1
  402. package/React/Base/RCTBridgeDelegate.h +0 -9
  403. package/React/Base/RCTDefines.h +8 -4
  404. package/React/Base/RCTKeyCommands.m +1 -1
  405. package/React/Base/RCTModuleData.mm +1 -1
  406. package/React/Base/RCTRootView.h +2 -2
  407. package/React/Base/RCTRootViewInternal.h +1 -1
  408. package/React/Base/RCTUtils.m +1 -1
  409. package/React/Base/RCTVersion.m +2 -2
  410. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +5 -0
  411. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.h +30 -0
  412. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.mm +185 -0
  413. package/React/Base/UIKitProxies/RCTInitializeUIKitProxies.h +10 -0
  414. package/React/Base/UIKitProxies/RCTInitializeUIKitProxies.mm +23 -0
  415. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.h +25 -0
  416. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.mm +129 -0
  417. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.h +26 -0
  418. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.mm +80 -0
  419. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.h +26 -0
  420. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.mm +70 -0
  421. package/React/CoreModules/CoreModulesPlugins.h +0 -1
  422. package/React/CoreModules/CoreModulesPlugins.mm +0 -1
  423. package/React/CoreModules/RCTAccessibilityManager.mm +11 -9
  424. package/React/CoreModules/RCTAppearance.mm +4 -7
  425. package/React/CoreModules/RCTDevMenu.mm +0 -18
  426. package/React/CoreModules/RCTDevSettings.h +0 -6
  427. package/React/CoreModules/RCTDevSettings.mm +1 -62
  428. package/React/CoreModules/RCTDeviceInfo.mm +43 -57
  429. package/React/CoreModules/RCTEventDispatcher.mm +1 -0
  430. package/React/CoreModules/RCTKeyboardObserver.mm +6 -0
  431. package/React/CoreModules/RCTPerfMonitor.mm +5 -0
  432. package/React/CoreModules/RCTPlatform.mm +19 -21
  433. package/React/CoreModules/RCTRedBox.mm +1 -1
  434. package/React/CoreModules/RCTStatusBarManager.mm +6 -0
  435. package/React/CoreModules/React-CoreModules.podspec +2 -1
  436. package/React/CxxBridge/RCTCxxBridge.mm +5 -63
  437. package/React/DevSupport/RCTInspectorDevServerHelper.mm +10 -5
  438. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -14
  439. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +0 -2
  440. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +201 -178
  441. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +535 -421
  442. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +2 -2
  443. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +52 -16
  444. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +5 -0
  445. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +12 -8
  446. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +2 -0
  447. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +34 -2
  448. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +33 -45
  449. package/React/Fabric/Surface/RCTFabricSurface.mm +1 -0
  450. package/React/Fabric/Utils/RCTBoxShadow.h +1 -1
  451. package/React/Fabric/Utils/RCTBoxShadow.mm +10 -10
  452. package/React/Fabric/Utils/RCTLinearGradient.mm +212 -15
  453. package/React/Fabric/Utils/RCTViewFinder.h +18 -0
  454. package/React/Fabric/Utils/RCTViewFinder.mm +34 -0
  455. package/React/I18n/FBXXHashUtils.h +48 -30
  456. package/React/I18n/strings/nb.lproj/fbt_language_pack.bin +0 -0
  457. package/React/I18n/strings/zh-Hant-HK.lproj/fbt_language_pack.bin +0 -0
  458. package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +8 -11
  459. package/React/React-RCTFBReactNativeSpec.podspec +1 -6
  460. package/React/React-RCTFabric.podspec +3 -5
  461. package/React/Runtime/RCTHermesInstanceFactory.h +20 -0
  462. package/React/Runtime/RCTHermesInstanceFactory.mm +20 -0
  463. package/React/Runtime/RCTJscInstanceFactory.h +20 -0
  464. package/React/Runtime/RCTJscInstanceFactory.mm +20 -0
  465. package/React/Runtime/React-RCTRuntime.podspec +85 -0
  466. package/React/Views/ScrollView/RCTScrollView.m +2 -3
  467. package/React-Core.podspec +9 -8
  468. package/ReactAndroid/README.md +1 -1
  469. package/ReactAndroid/api/ReactAndroid.api +142 -570
  470. package/ReactAndroid/build.gradle.kts +64 -53
  471. package/ReactAndroid/external-artifacts/build.gradle.kts +37 -0
  472. package/ReactAndroid/gradle.properties +4 -1
  473. package/ReactAndroid/hermes-engine/build.gradle.kts +13 -12
  474. package/ReactAndroid/publish.gradle +1 -1
  475. package/ReactAndroid/src/main/java/com/facebook/annotationprocessors/common/ProcessorBase.kt +2 -2
  476. package/ReactAndroid/src/main/java/com/facebook/debug/debugoverlay/model/DebugOverlayTag.kt +3 -3
  477. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesMemoryDumper.kt +5 -5
  478. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.kt +55 -0
  479. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.kt +40 -0
  480. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +185 -0
  481. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.java +3 -1
  482. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +9 -0
  483. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +8 -0
  484. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +4 -4
  485. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +0 -20
  486. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +3 -4
  487. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.kt +4 -4
  488. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeValueListener.kt +2 -2
  489. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeWithUpdateableConfig.kt +2 -2
  490. package/ReactAndroid/src/main/java/com/facebook/react/animated/DecayAnimation.kt +2 -2
  491. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +9 -13
  492. package/ReactAndroid/src/main/java/com/facebook/react/animated/ModulusAnimatedNode.kt +2 -2
  493. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +15 -0
  494. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +25 -1
  495. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +6 -6
  496. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.kt +1 -1
  497. package/ReactAndroid/src/main/java/com/facebook/react/animated/TrackingAnimatedNode.kt +2 -2
  498. package/ReactAndroid/src/main/java/com/facebook/react/animated/TransformAnimatedNode.kt +3 -3
  499. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.kt +8 -9
  500. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.java +3 -0
  501. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +4 -2
  502. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.kt +21 -0
  503. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{CxxModuleWrapper.java → CxxModuleWrapper.kt} +5 -8
  504. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{DefaultJSExceptionHandler.java → DefaultJSExceptionHandler.kt} +6 -8
  505. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DimensionPropConverter.kt +27 -0
  506. package/ReactAndroid/src/main/java/com/facebook/react/bridge/InvalidIteratorException.kt +3 -3
  507. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.java +0 -15
  508. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +2 -2
  509. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ObjectAlreadyConsumedException.kt +5 -5
  510. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +1 -1
  511. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactBridge.kt +48 -0
  512. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactMarkerConstants.java → ReactMarkerConstants.kt} +5 -19
  513. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +1 -1
  514. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +2 -0
  515. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -1
  516. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +1 -1
  517. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeExecutor.kt +14 -0
  518. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.kt +14 -0
  519. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +2 -2
  520. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/{MessageQueueThread.java → MessageQueueThread.kt} +24 -31
  521. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.kt +25 -0
  522. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadImpl.kt +186 -0
  523. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/{MessageQueueThreadPerfStats.java → MessageQueueThreadPerfStats.kt} +3 -3
  524. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadSpec.kt +42 -0
  525. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/{QueueThreadExceptionHandler.java → QueueThreadExceptionHandler.kt} +4 -5
  526. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfiguration.kt +30 -0
  527. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.kt +51 -0
  528. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.kt +51 -0
  529. package/ReactAndroid/src/main/java/com/facebook/react/common/ReleaseLevel.kt +18 -0
  530. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitecture.kt +24 -0
  531. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogLevel.kt +22 -0
  532. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +10 -0
  533. package/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.kt +5 -5
  534. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +14 -35
  535. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +0 -6
  536. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +21 -14
  537. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +135 -8
  538. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +24 -10
  539. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +9 -73
  540. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +13 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +2 -2
  542. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevInternalSettings.kt +0 -7
  543. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +0 -35
  544. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSettingsActivity.kt +3 -2
  545. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +1 -36
  546. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.kt +1 -1
  547. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{HMRClient.java → HMRClient.kt} +16 -10
  548. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/IInspectorPackagerConnection.kt +16 -0
  549. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +3 -3
  550. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java +1 -1
  551. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.kt +96 -0
  552. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PausedInDebuggerOverlayDialogManager.kt +70 -0
  553. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerftestDevSupportManager.kt +2 -2
  554. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.java +0 -5
  555. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxContentView.kt +261 -0
  556. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +159 -0
  557. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +42 -47
  558. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +88 -0
  559. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +29 -0
  560. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +0 -3
  561. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +25 -16
  562. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +12 -14
  563. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +73 -0
  564. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +91 -0
  565. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +1 -1
  566. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +2 -0
  567. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +2 -2
  568. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +4 -10
  569. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DestroyUnmountedViewMountItem.kt +3 -6
  570. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.kt +3 -3
  571. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.kt +3 -3
  572. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.kt +3 -3
  573. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +3 -3
  574. package/ReactAndroid/src/main/java/com/facebook/react/internal/AndroidChoreographerProvider.kt +5 -5
  575. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +45 -57
  576. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsAccessor.kt +4 -4
  577. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +81 -101
  578. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +17 -21
  579. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +17 -21
  580. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +91 -113
  581. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +37 -0
  582. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +27 -0
  583. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +20 -0
  584. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +17 -21
  585. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -7
  586. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.kt +70 -0
  587. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +1 -1
  588. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +2 -2
  589. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.kt +12 -12
  590. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +31 -0
  591. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.kt +3 -3
  592. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +0 -4
  593. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +0 -4
  594. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +1 -1
  595. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/interfaces/DeveloperSettings.kt +0 -3
  596. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +1 -1
  597. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +6 -6
  598. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +1 -4
  599. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +1 -1
  600. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +1 -1
  601. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +12 -20
  602. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/{ProgressListener.java → CustomClientBuilder.kt} +5 -3
  603. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/{HeaderUtil.java → HeaderUtil.kt} +15 -13
  604. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkInterceptorCreator.kt +18 -0
  605. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientFactory.kt +14 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.kt +79 -0
  607. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/{OkHttpClientFactory.java → ProgressListener.kt} +3 -6
  608. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.kt +80 -0
  609. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.kt +85 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.kt +179 -0
  611. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.kt +132 -0
  612. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +6 -6
  613. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +3 -3
  614. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
  615. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +4 -4
  616. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.kt +2 -2
  617. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/{RequestHandler.java → RequestHandler.kt} +3 -5
  618. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.kt +2 -2
  619. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/{Responder.java → Responder.kt} +3 -3
  620. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactLegacyArchitectureProcessor.kt +48 -0
  621. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +31 -3
  622. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +10 -10
  623. package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSTimerExecutor.kt +3 -3
  624. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +13 -50
  625. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +0 -5
  626. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +1 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +12 -15
  628. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Executors.kt +2 -2
  629. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +7 -7
  630. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.kt +1 -1
  631. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +2 -2
  632. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +17 -41
  633. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +2 -2
  634. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +4 -3
  635. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +2 -2
  636. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.kt +1 -1
  637. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverBinding.kt +1 -2
  638. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +18 -35
  639. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +1 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +6 -5
  641. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +0 -7
  642. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +2 -2
  643. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +8 -0
  644. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +1 -1
  645. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +399 -625
  646. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.kt +52 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactCompoundView.kt +3 -3
  648. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactOverflowViewWithInset.java → ReactOverflowViewWithInset.kt} +10 -10
  649. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +1 -1
  650. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +1 -1
  651. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStage.kt +36 -0
  652. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +6 -11
  653. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactZIndexedViewGroup.java → ReactZIndexedViewGroup.kt} +4 -4
  654. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +4 -4
  655. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SimpleViewManager.kt +7 -7
  656. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{StateWrapper.java → StateWrapper.kt} +9 -13
  657. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.kt +1 -1
  658. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +7 -7
  659. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{UIManagerModuleListener.java → UIManagerModuleListener.kt} +4 -7
  660. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +34 -16
  661. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +28 -6
  662. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +189 -0
  663. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.kt +20 -0
  664. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +2 -2
  665. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +1 -1
  666. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +18 -12
  667. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +141 -158
  668. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +4 -6
  669. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +4 -4
  670. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutsetBoxShadowDrawable.kt +3 -5
  671. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +15 -23
  672. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +10 -9
  673. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +5 -4
  674. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +2 -1
  675. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +1 -1
  676. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.kt +6 -3
  677. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java +2 -0
  678. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/{LayoutAnimationListener.java → LayoutAnimationListener.kt} +3 -3
  679. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/{LayoutHandlingAnimation.java → LayoutHandlingAnimation.kt} +3 -3
  680. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +2 -2
  681. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +5 -5
  682. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +1 -1
  683. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderInsets.kt +2 -2
  684. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +6 -6
  685. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +2 -19
  686. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +231 -5
  687. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LogicalEdge.kt +1 -1
  688. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Overflow.kt +3 -3
  689. package/ReactAndroid/src/main/java/com/facebook/react/util/ExceptionDataHelper.kt +3 -3
  690. package/ReactAndroid/src/main/java/com/facebook/react/util/RCTLog.kt +2 -2
  691. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.kt +5 -5
  692. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.kt +9 -9
  693. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/TraceUpdate.kt +1 -1
  694. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +2 -2
  695. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +2 -2
  696. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +2 -2
  697. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +2 -2
  698. package/ReactAndroid/src/main/java/com/facebook/react/views/image/MultiPostprocessor.kt +4 -4
  699. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.kt +1 -1
  700. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +36 -7
  701. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +1 -2
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +2 -2
  703. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactAccessibleScrollView.kt +19 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +11 -10
  705. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +3 -3
  706. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +2 -0
  707. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +3 -1
  708. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +6 -10
  709. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +7 -5
  710. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VelocityHelper.kt +3 -3
  711. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +2 -2
  712. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.kt +6 -6
  713. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +1 -1
  714. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +1 -1
  715. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +7 -7
  716. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +26 -0
  717. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +335 -0
  718. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +17 -10
  719. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +5 -5
  720. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +10 -5
  721. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java +20 -19
  722. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +3 -3
  723. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.kt +21 -0
  724. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +8 -1
  725. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/{ContentSizeWatcher.java → ContentSizeWatcher.kt} +2 -2
  726. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +41 -11
  727. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/{ScrollWatcher.java → ScrollWatcher.kt} +2 -2
  728. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/{SelectionWatcher.java → SelectionWatcher.kt} +3 -3
  729. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +5 -6
  730. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +1 -0
  731. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +16 -1
  732. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +3 -3
  733. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +3 -3
  734. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +1 -1
  735. package/ReactAndroid/src/main/jni/CMakeLists.txt +61 -54
  736. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocketDelegate.cpp +10 -1
  737. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocketDelegate.h +2 -0
  738. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +17 -16
  739. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +1 -7
  740. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +1 -2
  741. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +3 -3
  742. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +108 -136
  743. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +23 -29
  744. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -1
  745. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -37
  746. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +1 -1
  747. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JReadableMapBuffer.cpp +4 -8
  748. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JReadableMapBuffer.h +2 -4
  749. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +1 -0
  750. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +1 -0
  751. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +2 -2
  752. package/ReactCommon/React-Fabric.podspec +11 -6
  753. package/ReactCommon/React-FabricComponents.podspec +4 -8
  754. package/ReactCommon/React-FabricImage.podspec +2 -6
  755. package/ReactCommon/ReactCommon.podspec +1 -1
  756. package/ReactCommon/cxxreact/React-cxxreact.podspec +2 -1
  757. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  758. package/ReactCommon/cxxreact/TraceSection.h +7 -4
  759. package/ReactCommon/hermes/React-hermes.podspec +4 -2
  760. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +168 -0
  761. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.h +22 -0
  762. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +34 -0
  763. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.h +6 -0
  764. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  765. package/ReactCommon/jsi/jsi/decorator.h +16 -0
  766. package/ReactCommon/jsi/jsi/jsi.cpp +58 -0
  767. package/ReactCommon/jsi/jsi/jsi.h +34 -0
  768. package/ReactCommon/jsi/jsi/test/testlib.cpp +58 -8
  769. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +2 -2
  770. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +5 -5
  771. package/ReactCommon/jsinspector-modern/CMakeLists.txt +2 -1
  772. package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.cpp +14 -0
  773. package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.h +6 -0
  774. package/ReactCommon/jsinspector-modern/HostAgent.cpp +17 -0
  775. package/ReactCommon/jsinspector-modern/HostTarget.cpp +8 -1
  776. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +11 -11
  777. package/ReactCommon/jsinspector-modern/InspectorFlags.h +6 -0
  778. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +15 -1
  779. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +2 -0
  780. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +20 -0
  781. package/ReactCommon/jsinspector-modern/InstanceAgent.h +19 -2
  782. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +14 -3
  783. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +2 -2
  784. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +16 -0
  785. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +23 -0
  786. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +36 -0
  787. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +60 -2
  788. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +67 -21
  789. package/ReactCommon/jsinspector-modern/TracingAgent.h +20 -0
  790. package/ReactCommon/jsinspector-modern/WebSocketInterfaces.h +7 -1
  791. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +2 -0
  792. package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +7 -0
  793. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +8 -4
  794. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +3 -2
  795. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +5 -0
  796. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +1 -0
  797. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +1 -0
  798. package/ReactCommon/jsinspector-modern/tracing/EventLoopTaskReporter.cpp +49 -0
  799. package/ReactCommon/jsinspector-modern/tracing/EventLoopTaskReporter.h +31 -0
  800. package/ReactCommon/jsinspector-modern/tracing/InstanceTracingProfile.h +30 -0
  801. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +229 -79
  802. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +64 -55
  803. package/ReactCommon/jsinspector-modern/tracing/ProfileTreeNode.h +111 -0
  804. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -0
  805. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +163 -0
  806. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +231 -0
  807. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +30 -0
  808. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +65 -0
  809. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +157 -0
  810. package/ReactCommon/jsinspector-modern/tracing/tests/ProfileTreeNodeTest.cpp +58 -0
  811. package/ReactCommon/jsitooling/CMakeLists.txt +30 -0
  812. package/ReactCommon/jsitooling/React-jsitooling.podspec +66 -0
  813. package/ReactCommon/{react → jsitooling/react}/runtime/JSRuntimeFactory.h +4 -0
  814. package/ReactCommon/jsitooling/react/runtime/JSRuntimeFactoryCAPI.cpp +15 -0
  815. package/ReactCommon/jsitooling/react/runtime/JSRuntimeFactoryCAPI.h +26 -0
  816. package/ReactCommon/oscompat/CMakeLists.txt +14 -0
  817. package/ReactCommon/oscompat/OSCompat.h +18 -0
  818. package/ReactCommon/oscompat/OSCompatPosix.cpp +63 -0
  819. package/ReactCommon/oscompat/OSCompatWindows.cpp +26 -0
  820. package/ReactCommon/oscompat/React-oscompat.podspec +31 -0
  821. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +33 -41
  822. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +39 -49
  823. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +152 -188
  824. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +20 -24
  825. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +30 -38
  826. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +67 -85
  827. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +10 -12
  828. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +4 -9
  829. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +9 -0
  830. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +22 -2
  831. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +48 -24
  832. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +7 -0
  833. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +86 -31
  834. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +2 -2
  835. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -5
  836. package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +2 -2
  837. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +214 -107
  838. package/ReactCommon/react/nativemodule/dom/NativeDOM.h +55 -38
  839. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +3 -5
  840. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +39 -49
  841. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +17 -21
  842. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +3 -5
  843. package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +1 -1
  844. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +3 -5
  845. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +1 -1
  846. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +3 -5
  847. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +1 -2
  848. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +2 -7
  849. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboCxxModule.h +1 -10
  850. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboCxxModule.mm +1 -24
  851. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +2 -61
  852. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  853. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +95 -11
  854. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +4 -1
  855. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  856. package/ReactCommon/react/renderer/animations/CMakeLists.txt +10 -10
  857. package/ReactCommon/react/renderer/animations/utils.h +2 -6
  858. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +8 -8
  859. package/ReactCommon/react/renderer/attributedstring/conversions.h +107 -0
  860. package/ReactCommon/react/renderer/attributedstring/primitives.h +21 -1
  861. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +6 -6
  862. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +2 -2
  863. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +5 -5
  864. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +1 -1
  865. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +6 -6
  866. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +5 -5
  867. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +3 -3
  868. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +5 -0
  869. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  870. package/ReactCommon/react/renderer/components/safeareaview/CMakeLists.txt +5 -5
  871. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +4 -4
  872. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +1 -1
  873. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +1 -0
  874. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +5 -5
  875. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +7 -7
  876. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +2 -4
  877. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +10 -10
  878. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp +2 -0
  879. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +8 -8
  880. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/primitives.h +7 -0
  881. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/propsConversions.h +7 -0
  882. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +3 -3
  883. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +3 -1
  884. package/ReactCommon/react/renderer/components/view/BoxShadowPropsConversions.h +276 -0
  885. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +4 -3
  886. package/ReactCommon/react/renderer/components/view/CSSConversions.h +96 -0
  887. package/ReactCommon/react/renderer/components/view/FilterPropsConversions.h +386 -0
  888. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +227 -222
  889. package/ReactCommon/react/renderer/components/view/conversions.h +185 -265
  890. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +798 -0
  891. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +6 -0
  892. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +239 -0
  893. package/ReactCommon/react/renderer/consistency/CMakeLists.txt +3 -3
  894. package/ReactCommon/react/renderer/core/CMakeLists.txt +8 -8
  895. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +2 -5
  896. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +10 -0
  897. package/ReactCommon/react/renderer/core/EventBeat.cpp +8 -0
  898. package/ReactCommon/react/renderer/core/EventBeat.h +10 -0
  899. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -6
  900. package/ReactCommon/react/renderer/core/EventQueue.cpp +8 -1
  901. package/ReactCommon/react/renderer/core/LayoutMetrics.h +16 -0
  902. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +12 -5
  903. package/ReactCommon/react/renderer/core/Props.cpp +9 -0
  904. package/ReactCommon/react/renderer/core/Props.h +13 -0
  905. package/ReactCommon/react/renderer/core/RawProps.cpp +0 -16
  906. package/ReactCommon/react/renderer/core/RawProps.h +6 -5
  907. package/ReactCommon/react/renderer/core/ShadowNode.cpp +1 -2
  908. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +11 -5
  909. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +4 -7
  910. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +34 -0
  911. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +282 -1
  912. package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +12 -44
  913. package/ReactCommon/react/renderer/css/CMakeLists.txt +36 -0
  914. package/ReactCommon/react/renderer/css/CSSAngle.h +42 -0
  915. package/ReactCommon/react/renderer/css/CSSColor.h +59 -0
  916. package/ReactCommon/react/renderer/css/CSSColorFunction.h +446 -0
  917. package/ReactCommon/react/renderer/css/CSSCompoundDataType.h +121 -0
  918. package/ReactCommon/react/renderer/css/CSSDataType.h +81 -0
  919. package/ReactCommon/react/renderer/css/CSSDummy.cpp +14 -0
  920. package/ReactCommon/react/renderer/css/CSSFilter.h +341 -0
  921. package/ReactCommon/react/renderer/css/CSSFontVariant.h +65 -0
  922. package/ReactCommon/react/renderer/css/CSSHexColor.h +104 -0
  923. package/ReactCommon/react/renderer/css/CSSKeyword.h +368 -0
  924. package/ReactCommon/react/renderer/css/CSSLength.h +58 -0
  925. package/ReactCommon/react/renderer/css/CSSLengthPercentage.h +21 -0
  926. package/ReactCommon/react/renderer/css/CSSList.h +77 -0
  927. package/ReactCommon/react/renderer/css/CSSNamedColor.h +328 -0
  928. package/ReactCommon/react/renderer/css/CSSNumber.h +40 -0
  929. package/ReactCommon/react/renderer/css/CSSPercentage.h +40 -0
  930. package/ReactCommon/react/renderer/css/CSSRatio.h +70 -0
  931. package/ReactCommon/react/renderer/css/CSSShadow.h +152 -0
  932. package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +174 -81
  933. package/ReactCommon/react/renderer/css/CSSTokenizer.h +6 -4
  934. package/ReactCommon/react/renderer/css/CSSTransform.h +498 -0
  935. package/ReactCommon/react/renderer/css/CSSTransformOrigin.h +226 -0
  936. package/ReactCommon/react/renderer/css/CSSValueParser.h +151 -234
  937. package/ReactCommon/react/renderer/css/CSSZero.h +41 -0
  938. package/ReactCommon/react/renderer/css/React-renderercss.podspec +50 -0
  939. package/ReactCommon/react/renderer/css/tests/CSSAngleTest.cpp +44 -0
  940. package/ReactCommon/react/renderer/css/tests/CSSColorTest.cpp +493 -0
  941. package/ReactCommon/react/renderer/css/tests/CSSFilterTest.cpp +577 -0
  942. package/ReactCommon/react/renderer/css/tests/CSSFontVariantTest.cpp +75 -0
  943. package/ReactCommon/react/renderer/css/tests/CSSKeywordTest.cpp +52 -0
  944. package/ReactCommon/react/renderer/css/tests/CSSLengthPercentageTest.cpp +37 -0
  945. package/ReactCommon/react/renderer/css/tests/CSSLengthTest.cpp +58 -0
  946. package/ReactCommon/react/renderer/css/tests/CSSListTest.cpp +153 -0
  947. package/ReactCommon/react/renderer/css/tests/CSSNumberLengthTest.cpp +21 -0
  948. package/ReactCommon/react/renderer/css/tests/CSSNumberTest.cpp +30 -0
  949. package/ReactCommon/react/renderer/css/tests/CSSRatioTest.cpp +68 -0
  950. package/ReactCommon/react/renderer/css/tests/CSSShadowTest.cpp +339 -0
  951. package/ReactCommon/react/renderer/css/tests/CSSSyntaxParserTest.cpp +338 -45
  952. package/ReactCommon/react/renderer/css/tests/CSSTokenizerTest.cpp +10 -0
  953. package/ReactCommon/react/renderer/css/tests/CSSTransformOriginTest.cpp +428 -0
  954. package/ReactCommon/react/renderer/css/tests/CSSTransformTest.cpp +701 -0
  955. package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +39 -392
  956. package/ReactCommon/react/renderer/debug/CMakeLists.txt +4 -4
  957. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +1 -1
  958. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +1 -1
  959. package/ReactCommon/react/renderer/dom/CMakeLists.txt +6 -6
  960. package/ReactCommon/react/renderer/dom/DOM.cpp +8 -6
  961. package/ReactCommon/react/renderer/dom/DOM.h +6 -0
  962. package/ReactCommon/react/renderer/element/CMakeLists.txt +6 -6
  963. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +4 -4
  964. package/ReactCommon/react/renderer/graphics/Filter.h +0 -1
  965. package/ReactCommon/react/renderer/graphics/LinearGradient.h +8 -1
  966. package/ReactCommon/react/renderer/graphics/Point.h +23 -17
  967. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -6
  968. package/ReactCommon/react/renderer/graphics/Transform.h +2 -0
  969. package/ReactCommon/react/renderer/graphics/ValueUnit.h +4 -0
  970. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +9 -5
  971. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +112 -14
  972. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.mm +1 -1
  973. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.h +7 -1
  974. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +1 -0
  975. package/ReactCommon/react/renderer/graphics/tests/PointTest.cpp +87 -0
  976. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +9 -9
  977. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +5 -5
  978. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +4 -4
  979. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +10 -9
  980. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +140 -341
  981. package/ReactCommon/react/renderer/mounting/Differentiator.h +0 -77
  982. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +2 -21
  983. package/ReactCommon/react/renderer/mounting/ShadowTree.h +0 -2
  984. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +48 -0
  985. package/ReactCommon/react/renderer/mounting/internal/CullingContext.h +29 -0
  986. package/ReactCommon/react/renderer/mounting/internal/ShadowViewNodePair.h +62 -0
  987. package/ReactCommon/react/renderer/mounting/internal/TinyMap.h +143 -0
  988. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +191 -0
  989. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.h +53 -0
  990. package/ReactCommon/react/renderer/mounting/stubs/StubView.cpp +2 -0
  991. package/ReactCommon/react/renderer/mounting/stubs/StubView.h +1 -0
  992. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +127 -0
  993. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +15 -0
  994. package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +4 -2
  995. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +11 -9
  996. package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +7 -7
  997. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +8 -7
  998. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +2 -6
  999. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +1 -2
  1000. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +3 -0
  1001. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +1 -1
  1002. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +12 -12
  1003. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +8 -13
  1004. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +3 -3
  1005. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +3 -3
  1006. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +6 -6
  1007. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +13 -13
  1008. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +24 -3
  1009. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +1 -43
  1010. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontProperties.h +20 -0
  1011. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +140 -0
  1012. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +16 -5
  1013. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +2 -2
  1014. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +14 -14
  1015. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +4 -3
  1016. package/ReactCommon/react/renderer/uimanager/UIManager.h +3 -3
  1017. package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +6 -6
  1018. package/ReactCommon/react/renderer/uimanager/primitives.h +3 -0
  1019. package/ReactCommon/react/runtime/CMakeLists.txt +1 -0
  1020. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +2 -6
  1021. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +5 -8
  1022. package/ReactCommon/react/runtime/ReactInstance.cpp +0 -8
  1023. package/ReactCommon/react/runtime/TimerManager.cpp +0 -58
  1024. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +1 -2
  1025. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +4 -2
  1026. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +3 -1
  1027. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +33 -0
  1028. package/ReactCommon/react/utils/React-utils.podspec +1 -5
  1029. package/ReactCommon/react/utils/TemplateStringLiteral.h +35 -0
  1030. package/ReactCommon/react/utils/fnv1a.h +3 -4
  1031. package/ReactCommon/react/utils/iequals.h +34 -0
  1032. package/ReactCommon/react/utils/toLower.h +22 -0
  1033. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +31 -4
  1034. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.h +2 -0
  1035. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +22 -0
  1036. package/cli.js +11 -2
  1037. package/flow/jest.js +14 -14
  1038. package/gradle/libs.versions.toml +2 -2
  1039. package/index.js +176 -263
  1040. package/jest/mockScrollView.js +1 -1
  1041. package/jest/setup.js +314 -264
  1042. package/package.json +18 -15
  1043. package/react-native.config.js +24 -23
  1044. package/scripts/cocoapods/codegen.rb +4 -15
  1045. package/scripts/cocoapods/codegen_utils.rb +4 -267
  1046. package/scripts/cocoapods/jsengine.rb +17 -7
  1047. package/scripts/cocoapods/new_architecture.rb +6 -36
  1048. package/scripts/cocoapods/utils.rb +16 -5
  1049. package/scripts/codegen/generate-artifacts-executor.js +165 -29
  1050. package/scripts/codegen/templates/RCTAppDependencyProviderMM.template +9 -29
  1051. package/scripts/codegen/templates/RCTModuleProvidersH.template +16 -0
  1052. package/scripts/codegen/templates/RCTModuleProvidersMM.template +51 -0
  1053. package/scripts/codegen/templates/RCTModulesConformingToProtocolsProviderMM.template +30 -9
  1054. package/scripts/codegen/templates/RCTThirdPartyComponentsProviderMM.template +9 -2
  1055. package/scripts/codegen/templates/ReactCodegen.podspec.template +99 -0
  1056. package/scripts/hermes/hermes-utils.js +1 -1
  1057. package/scripts/react_native_pods.rb +47 -3
  1058. package/sdks/.hermesversion +1 -1
  1059. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1060. package/sdks/hermesc/osx-bin/hermes +0 -0
  1061. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1062. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1063. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1064. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1065. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  1066. package/src/private/animated/createAnimatedPropsHook.js +360 -0
  1067. package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
  1068. package/src/private/components/HScrollViewNativeComponents.js +2 -2
  1069. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  1070. package/src/private/components/VScrollViewNativeComponents.js +1 -1
  1071. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
  1072. package/src/private/devmenu/DevMenu.js +2 -2
  1073. package/src/private/featureflags/ReactNativeFeatureFlags.js +53 -75
  1074. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +5 -7
  1075. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +10 -12
  1076. package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
  1077. package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
  1078. package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +9 -8
  1079. package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +20 -15
  1080. package/{Libraries/Inspector → src/private/inspector}/Inspector.js +21 -18
  1081. package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +11 -10
  1082. package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +17 -15
  1083. package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +43 -27
  1084. package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +8 -6
  1085. package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +11 -10
  1086. package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
  1087. package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +5 -2
  1088. package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +6 -6
  1089. package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +5 -4
  1090. package/src/private/renderer/errorhandling/ErrorHandlers.js +5 -5
  1091. package/src/private/setup/setUpDOM.js +43 -3
  1092. package/src/private/specs_DEPRECATED/README.md +7 -0
  1093. package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +3 -3
  1094. package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +7 -7
  1095. package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
  1096. package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +3 -3
  1097. package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +5 -5
  1098. package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +3 -3
  1099. package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +3 -3
  1100. package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +3 -3
  1101. package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +3 -3
  1102. package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +5 -5
  1103. package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +3 -3
  1104. package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +5 -5
  1105. package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +3 -3
  1106. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +2 -2
  1107. package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +7 -7
  1108. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +2 -2
  1109. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +2 -2
  1110. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +2 -2
  1111. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +3 -3
  1112. package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +1 -1
  1113. package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +1 -1
  1114. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
  1115. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
  1116. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +8 -8
  1117. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +4 -4
  1118. package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +3 -3
  1119. package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +1 -1
  1120. package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +2 -2
  1121. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +9 -9
  1122. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +1 -1
  1123. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +1 -1
  1124. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +1 -1
  1125. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +3 -3
  1126. package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +2 -2
  1127. package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +5 -4
  1128. package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +4 -4
  1129. package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +4 -4
  1130. package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +7 -7
  1131. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +2 -2
  1132. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +2 -2
  1133. package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +3 -3
  1134. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +2 -2
  1135. package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +4 -4
  1136. package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +6 -6
  1137. package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +2 -2
  1138. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +184 -0
  1139. package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +1 -1
  1140. package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +1 -1
  1141. package/{flow/Position.js → src/private/types/HostComponent.js} +6 -6
  1142. package/src/private/types/HostInstance.js +50 -0
  1143. package/src/private/webapis/dom/events/CustomEvent.js +38 -0
  1144. package/src/private/webapis/dom/events/Event.js +236 -0
  1145. package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
  1146. package/src/private/webapis/dom/events/EventTarget.js +436 -0
  1147. package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
  1148. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
  1149. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +121 -0
  1150. package/src/private/webapis/dom/nodes/ReactNativeElement.js +82 -51
  1151. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +7 -6
  1152. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +26 -26
  1153. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +56 -78
  1154. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
  1155. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
  1156. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
  1157. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
  1158. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
  1159. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +1 -1
  1160. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  1161. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +1 -1
  1162. package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
  1163. package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js.flow +2 -2
  1164. package/src/private/webapis/html/events/MessageEvent.js +56 -0
  1165. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +6 -6
  1166. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  1167. package/src/private/webapis/intersectionobserver/{IntersectionObserverManager.js → internals/IntersectionObserverManager.js} +20 -17
  1168. package/src/private/webapis/mutationobserver/MutationObserver.js +11 -11
  1169. package/src/private/webapis/mutationobserver/{MutationObserverManager.js → internals/MutationObserverManager.js} +12 -14
  1170. package/src/private/webapis/performance/EventTiming.js +1 -1
  1171. package/src/private/webapis/performance/Performance.js +3 -3
  1172. package/src/private/webapis/performance/PerformanceObserver.js +8 -8
  1173. package/src/private/webapis/performance/{RawPerformanceEntry.js → internals/RawPerformanceEntry.js} +6 -6
  1174. package/src/private/webapis/performance/{Utilities.js → internals/Utilities.js} +1 -1
  1175. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +1 -1
  1176. package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
  1177. package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
  1178. package/src/types/bom.js.flow +403 -0
  1179. package/src/types/dom.js.flow +6271 -0
  1180. package/src/types/globals.d.ts +628 -0
  1181. package/third-party-podspecs/RCT-Folly.podspec +1 -1
  1182. package/third-party-podspecs/fmt.podspec +3 -2
  1183. package/types/index.d.ts +2 -58
  1184. package/types/public/ReactNativeTVTypes.d.ts +9 -7
  1185. package/Libraries/Animated/AnimatedWeb.js +0 -26
  1186. package/Libraries/JSInspector/InspectorAgent.js +0 -27
  1187. package/Libraries/JSInspector/JSInspector.js +0 -33
  1188. package/Libraries/JSInspector/NetworkAgent.js +0 -295
  1189. package/Libraries/Utilities/DebugEnvironment.js +0 -16
  1190. package/Libraries/Utilities/Platform.flow.js +0 -93
  1191. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
  1192. package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
  1193. package/React/CoreModules/RCTWebSocketExecutor.h +0 -19
  1194. package/React/CoreModules/RCTWebSocketExecutor.mm +0 -301
  1195. package/React/UIUtils/RCTUIUtils.h +0 -30
  1196. package/React/UIUtils/RCTUIUtils.m +0 -30
  1197. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.java +0 -50
  1198. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +0 -57
  1199. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.kt +0 -13
  1200. package/ReactAndroid/src/main/java/com/facebook/hermes/unicode/AndroidUnicodeUtils.kt +0 -77
  1201. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java +0 -208
  1202. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.java +0 -28
  1203. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DimensionPropConverter.java +0 -33
  1204. package/ReactAndroid/src/main/java/com/facebook/react/bridge/FallbackJSBundleLoader.java +0 -85
  1205. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaJSExecutor.kt +0 -50
  1206. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ProxyJavaScriptExecutor.java +0 -80
  1207. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactBridge.java +0 -48
  1208. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeExecutor.java +0 -21
  1209. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +0 -21
  1210. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.java +0 -32
  1211. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadImpl.java +0 -226
  1212. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadSpec.java +0 -65
  1213. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfiguration.java +0 -27
  1214. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.java +0 -65
  1215. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java +0 -73
  1216. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBufferSoLoader.kt +0 -35
  1217. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/IInspectorPackagerConnection.java +0 -16
  1218. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +0 -102
  1219. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PausedInDebuggerOverlayDialogManager.java +0 -89
  1220. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxContentView.java +0 -325
  1221. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.java +0 -191
  1222. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ViewHierarchyUtil.java +0 -40
  1223. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/WebsocketJavaScriptExecutor.java +0 -183
  1224. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.java +0 -94
  1225. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.java +0 -34
  1226. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +0 -67
  1227. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.java +0 -87
  1228. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.java +0 -93
  1229. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java +0 -34
  1230. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CountingOutputStream.java +0 -67
  1231. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CustomClientBuilder.java +0 -14
  1232. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkInterceptorCreator.java +0 -18
  1233. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +0 -83
  1234. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.java +0 -79
  1235. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.java +0 -88
  1236. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java +0 -166
  1237. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.java +0 -123
  1238. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/TLSSocketFactory.java +0 -78
  1239. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.java +0 -57
  1240. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStage.java +0 -38
  1241. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.java +0 -172
  1242. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.java +0 -26
  1243. package/ReactAndroid/src/main/java/com/facebook/react/views/common/ViewUtils.kt +0 -24
  1244. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.java +0 -24
  1245. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +0 -138
  1246. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +0 -64
  1247. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/OnLoad.cpp +0 -16
  1248. package/ReactCommon/react/renderer/css/CSSColorUtils.h +0 -373
  1249. package/ReactCommon/react/renderer/css/CSSDeclaredStyle.h +0 -138
  1250. package/ReactCommon/react/renderer/css/CSSKeywords.h +0 -454
  1251. package/ReactCommon/react/renderer/css/CSSProperties.h +0 -1287
  1252. package/ReactCommon/react/renderer/css/CSSValue.h +0 -92
  1253. package/ReactCommon/react/renderer/css/CSSValueVariant.h +0 -267
  1254. package/ReactCommon/react/renderer/css/tests/CSSDeclaredStyleTest.cpp +0 -164
  1255. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +0 -640
  1256. package/src/private/specs/modules/NativeCPUTime.js +0 -24
  1257. package/src/private/specs/modules/NativeFantom.js +0 -37
  1258. package/src/private/specs/modules/NativeUIManager.js +0 -111
  1259. package/types/modules/globals.d.ts +0 -599
  1260. /package/ReactCommon/{react → jsitooling/react}/runtime/JSRuntimeFactory.cpp +0 -0
  1261. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
  1262. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
  1263. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
  1264. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
  1265. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
  1266. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
  1267. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
  1268. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
  1269. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
  1270. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
  1271. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
  1272. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
  1273. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
  1274. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
  1275. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
  1276. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
  1277. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
  1278. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
  1279. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTVNavigationEventEmitter.js +0 -0
  1280. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
  1281. /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
  1282. /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
  1283. /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
  1284. /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
@@ -0,0 +1,226 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <optional>
11
+ #include <type_traits>
12
+ #include <variant>
13
+
14
+ #include <react/renderer/css/CSSDataType.h>
15
+ #include <react/renderer/css/CSSLength.h>
16
+ #include <react/renderer/css/CSSLengthPercentage.h>
17
+ #include <react/renderer/css/CSSValueParser.h>
18
+
19
+ namespace facebook::react {
20
+
21
+ /**
22
+ * One of the positional keywords for the `transform-origin` property.
23
+ */
24
+ enum class CSSTransformOriginKeyword : std::underlying_type_t<CSSKeyword> {
25
+ Center = static_cast<std::underlying_type_t<CSSKeyword>>(CSSKeyword::Center),
26
+ Left = static_cast<std::underlying_type_t<CSSKeyword>>(CSSKeyword::Left),
27
+ Right = static_cast<std::underlying_type_t<CSSKeyword>>(CSSKeyword::Right),
28
+ Top = static_cast<std::underlying_type_t<CSSKeyword>>(CSSKeyword::Top),
29
+ Bottom = static_cast<std::underlying_type_t<CSSKeyword>>(CSSKeyword::Bottom),
30
+ };
31
+
32
+ static_assert(CSSDataType<CSSTransformOriginKeyword>);
33
+
34
+ /**
35
+ * Representation of the value produced by the `transform-origin` property.
36
+ * https://drafts.csswg.org/css-transforms/#propdef-transform-origin
37
+ */
38
+ struct CSSTransformOrigin {
39
+ std::variant<CSSLength, CSSPercentage> x{};
40
+ std::variant<CSSLength, CSSPercentage> y{};
41
+ CSSLength z{};
42
+
43
+ constexpr bool operator==(const CSSTransformOrigin& rhs) const = default;
44
+ };
45
+
46
+ template <>
47
+ struct CSSDataTypeParser<CSSTransformOrigin> {
48
+ static constexpr auto consume(CSSSyntaxParser& parser)
49
+ -> std::optional<CSSTransformOrigin> {
50
+ // [ left | center | right | top | bottom | <length-percentage> ]
51
+ // |
52
+ // [ left | center | right | <length-percentage> ]
53
+ // [ top | center | bottom | <length-percentage> ] <length>?
54
+ // |
55
+ // [ [ center | left | right ] && [ center | top | bottom ] ] <length>?
56
+
57
+ auto firstValue =
58
+ parseNextCSSValue<CSSLengthPercentage, CSSTransformOriginKeyword>(
59
+ parser);
60
+ if (std::holds_alternative<std::monostate>(firstValue)) {
61
+ return {};
62
+ }
63
+
64
+ auto secondValue =
65
+ parseNextCSSValue<CSSLengthPercentage, CSSTransformOriginKeyword>(
66
+ parser, CSSDelimiter::Whitespace);
67
+
68
+ if (std::holds_alternative<std::monostate>(secondValue)) {
69
+ return singleValue(firstValue);
70
+ }
71
+
72
+ auto thirdValue =
73
+ parseNextCSSValue<CSSLength>(parser, CSSDelimiter::Whitespace);
74
+
75
+ if (std::holds_alternative<CSSLength>(firstValue) ||
76
+ std::holds_alternative<CSSPercentage>(firstValue) ||
77
+ std::holds_alternative<CSSLength>(secondValue) ||
78
+ std::holds_alternative<CSSPercentage>(secondValue)) {
79
+ return xyLengthPercentageValue(firstValue, secondValue, thirdValue);
80
+ }
81
+
82
+ if (std::holds_alternative<CSSTransformOriginKeyword>(firstValue) &&
83
+ std::holds_alternative<CSSTransformOriginKeyword>(secondValue)) {
84
+ return xyKeywordValue(
85
+ std::get<CSSTransformOriginKeyword>(firstValue),
86
+ std::get<CSSTransformOriginKeyword>(secondValue),
87
+ thirdValue);
88
+ }
89
+
90
+ return {};
91
+ }
92
+
93
+ private:
94
+ static constexpr CSSTransformOrigin singleValue(
95
+ const std::variant<
96
+ std::monostate,
97
+ CSSLength,
98
+ CSSPercentage,
99
+ CSSTransformOriginKeyword>& value) {
100
+ CSSTransformOrigin result{};
101
+
102
+ if (std::holds_alternative<CSSLength>(value)) {
103
+ result.x = std::get<CSSLength>(value);
104
+ result.y = keywordPercentage(CSSTransformOriginKeyword::Center);
105
+ } else if (std::holds_alternative<CSSPercentage>(value)) {
106
+ result.x = std::get<CSSPercentage>(value);
107
+ result.y = keywordPercentage(CSSTransformOriginKeyword::Center);
108
+ } else if (std::holds_alternative<CSSTransformOriginKeyword>(value)) {
109
+ if (isHorizontalKeyword(std::get<CSSTransformOriginKeyword>(value))) {
110
+ result.x =
111
+ keywordPercentage(std::get<CSSTransformOriginKeyword>(value));
112
+ result.y = keywordPercentage(CSSTransformOriginKeyword::Center);
113
+ } else {
114
+ result.x = keywordPercentage(CSSTransformOriginKeyword::Center);
115
+ result.y =
116
+ keywordPercentage(std::get<CSSTransformOriginKeyword>(value));
117
+ }
118
+ }
119
+
120
+ return result;
121
+ }
122
+
123
+ static constexpr std::optional<CSSTransformOrigin> xyLengthPercentageValue(
124
+ const std::variant<
125
+ std::monostate,
126
+ CSSLength,
127
+ CSSPercentage,
128
+ CSSTransformOriginKeyword>& val1,
129
+ const std::variant<
130
+ std::monostate,
131
+ CSSLength,
132
+ CSSPercentage,
133
+ CSSTransformOriginKeyword>& val2,
134
+ const std::variant<std::monostate, CSSLength>& val3) {
135
+ CSSTransformOrigin result{};
136
+
137
+ if (std::holds_alternative<CSSLength>(val1)) {
138
+ result.x = std::get<CSSLength>(val1);
139
+ } else if (std::holds_alternative<CSSPercentage>(val1)) {
140
+ result.x = std::get<CSSPercentage>(val1);
141
+ } else if (std::holds_alternative<CSSTransformOriginKeyword>(val1)) {
142
+ if (!isHorizontalKeyword(std::get<CSSTransformOriginKeyword>(val1))) {
143
+ return {};
144
+ }
145
+
146
+ result.x = keywordPercentage(std::get<CSSTransformOriginKeyword>(val1));
147
+ }
148
+
149
+ if (std::holds_alternative<CSSLength>(val2)) {
150
+ result.y = std::get<CSSLength>(val2);
151
+ } else if (std::holds_alternative<CSSPercentage>(val2)) {
152
+ result.y = std::get<CSSPercentage>(val2);
153
+ } else if (std::holds_alternative<CSSTransformOriginKeyword>(val2)) {
154
+ if (!isVerticalKeyword(std::get<CSSTransformOriginKeyword>(val2))) {
155
+ return {};
156
+ }
157
+
158
+ result.y = keywordPercentage(std::get<CSSTransformOriginKeyword>(val2));
159
+ }
160
+
161
+ if (std::holds_alternative<CSSLength>(val3)) {
162
+ result.z = std::get<CSSLength>(val3);
163
+ }
164
+
165
+ return result;
166
+ }
167
+
168
+ static constexpr std::optional<CSSTransformOrigin> xyKeywordValue(
169
+ CSSTransformOriginKeyword val1,
170
+ CSSTransformOriginKeyword val2,
171
+ const std::variant<std::monostate, CSSLength>& val3) {
172
+ if (isHorizontalKeyword(val1) && isVerticalKeyword(val2)) {
173
+ return CSSTransformOrigin{
174
+ .x = keywordPercentage(val1),
175
+ .y = keywordPercentage(val2),
176
+ .z = std::holds_alternative<CSSLength>(val3)
177
+ ? std::get<CSSLength>(val3)
178
+ : CSSLength{}};
179
+ }
180
+
181
+ if (isVerticalKeyword(val1) && isHorizontalKeyword(val2)) {
182
+ return CSSTransformOrigin{
183
+ .x = keywordPercentage(val2),
184
+ .y = keywordPercentage(val1),
185
+ .z = std::holds_alternative<CSSLength>(val3)
186
+ ? std::get<CSSLength>(val3)
187
+ : CSSLength{}};
188
+ }
189
+
190
+ return {};
191
+ }
192
+
193
+ static constexpr bool isHorizontalKeyword(CSSTransformOriginKeyword keyword) {
194
+ return keyword == CSSTransformOriginKeyword::Left ||
195
+ keyword == CSSTransformOriginKeyword::Center ||
196
+ keyword == CSSTransformOriginKeyword::Right;
197
+ }
198
+
199
+ static constexpr bool isVerticalKeyword(CSSTransformOriginKeyword keyword) {
200
+ return keyword == CSSTransformOriginKeyword::Top ||
201
+ keyword == CSSTransformOriginKeyword::Center ||
202
+ keyword == CSSTransformOriginKeyword::Bottom;
203
+ }
204
+
205
+ static constexpr CSSPercentage keywordPercentage(
206
+ CSSTransformOriginKeyword keyword) {
207
+ switch (keyword) {
208
+ case CSSTransformOriginKeyword::Left:
209
+ return CSSPercentage{0.0f};
210
+ case CSSTransformOriginKeyword::Top:
211
+ return CSSPercentage{0.0f};
212
+ case CSSTransformOriginKeyword::Center:
213
+ return CSSPercentage{50.0f};
214
+ case CSSTransformOriginKeyword::Right:
215
+ return CSSPercentage{100.0f};
216
+ case CSSTransformOriginKeyword::Bottom:
217
+ return CSSPercentage{100.0f};
218
+ }
219
+
220
+ return {};
221
+ }
222
+ };
223
+
224
+ static_assert(CSSDataType<CSSTransformOrigin>);
225
+
226
+ } // namespace facebook::react
@@ -9,83 +9,59 @@
9
9
 
10
10
  #include <optional>
11
11
  #include <type_traits>
12
+ #include <variant>
12
13
 
13
- #include <react/renderer/css/CSSAngleUnit.h>
14
- #include <react/renderer/css/CSSColorUtils.h>
15
- #include <react/renderer/css/CSSProperties.h>
14
+ #include <react/renderer/css/CSSCompoundDataType.h>
15
+ #include <react/renderer/css/CSSDataType.h>
16
+ #include <react/renderer/css/CSSKeyword.h>
16
17
  #include <react/renderer/css/CSSSyntaxParser.h>
17
- #include <react/renderer/css/CSSValueVariant.h>
18
18
 
19
19
  namespace facebook::react {
20
20
 
21
21
  namespace detail {
22
22
 
23
- template <CSSDataType... AllowedTypesT>
24
23
  class CSSValueParser {
25
- using CSSValue = CSSValueVariant<AllowedTypesT...>;
26
-
27
24
  public:
28
- explicit constexpr CSSValueParser(std::string_view css) : parser_{css} {}
25
+ explicit constexpr CSSValueParser(CSSSyntaxParser& parser)
26
+ : parser_{parser} {}
29
27
 
30
28
  /*
31
29
  * Attempts to parse the characters starting at the current component value
32
- * into one of the given data types.
30
+ * into one of the given data types. Types are attempted in order, which the
31
+ * caller must consider (e.g. a number token should be preferred to be a
32
+ * <number> before <length>).
33
33
  */
34
- constexpr CSSValue consumeValue(
35
- CSSComponentValueDelimiter delimeter = CSSComponentValueDelimiter::None) {
36
- return parser_.consumeComponentValue<CSSValue>(
37
- delimeter, [&](const CSSPreservedToken& token) {
38
- // CSS-global keywords
39
- if constexpr (hasType<CSSWideKeyword>()) {
40
- if (auto cssWideKeyword = consumeCSSWideKeyword(token)) {
41
- return *cssWideKeyword;
42
- }
43
- }
44
- // Property-specific keywords
45
- if constexpr (hasType<typename CSSValue::Keyword>()) {
46
- if (auto keyword = consumeKeyword(token)) {
47
- return *keyword;
48
- }
49
- }
50
- // <ratio>
51
- if constexpr (hasType<CSSRatio>()) {
52
- if (auto ratio = consumeRatio(token)) {
53
- return *ratio;
54
- }
55
- }
56
- // <number>
57
- if constexpr (hasType<CSSNumber>()) {
58
- if (auto number = consumeNumber(token)) {
59
- return *number;
60
- }
61
- }
62
- // <length>
63
- if constexpr (hasType<CSSLength>()) {
64
- if (auto length = consumeLength(token)) {
65
- return *length;
66
- }
67
- }
68
- // <angle>
69
- if constexpr (hasType<CSSAngle>()) {
70
- if (auto angle = consumeAngle(token)) {
71
- return *angle;
72
- }
73
- }
74
- // <percentage>
75
- if constexpr (hasType<CSSPercentage>()) {
76
- if (auto percentage = consumePercentage(token)) {
77
- return *percentage;
78
- }
79
- }
80
- // <color>
81
- if constexpr (hasType<CSSColor>()) {
82
- if (auto colorValue = consumeColorToken(token)) {
83
- return *colorValue;
84
- }
85
- }
86
- return CSSValue{};
34
+ template <CSSDataType... AllowedTypesT>
35
+ constexpr std::variant<std::monostate, AllowedTypesT...> consumeValue(
36
+ CSSDelimiter delimeter,
37
+ CSSCompoundDataType<AllowedTypesT...>) {
38
+ using ReturnT = std::variant<std::monostate, AllowedTypesT...>;
39
+
40
+ auto consumedValue =
41
+ tryConsumeParser<ReturnT, CSSDataTypeParser<AllowedTypesT>...>(
42
+ delimeter);
43
+
44
+ if (!std::holds_alternative<std::monostate>(consumedValue)) {
45
+ return consumedValue;
46
+ }
47
+
48
+ return parser_.consumeComponentValue<ReturnT>(
49
+ delimeter,
50
+ [&](const CSSPreservedToken& token) {
51
+ return tryConsumePreservedToken<
52
+ ReturnT,
53
+ CSSDataTypeParser<AllowedTypesT>...>(token);
54
+ },
55
+ [&](const CSSSimpleBlock& block, CSSSyntaxParser& blockParser) {
56
+ return tryConsumeSimpleBlock<
57
+ ReturnT,
58
+ CSSDataTypeParser<AllowedTypesT>...>(block, blockParser);
59
+ },
60
+ [&](const CSSFunctionBlock& func, CSSSyntaxParser& blockParser) {
61
+ return tryConsumeFunctionBlock<
62
+ ReturnT,
63
+ CSSDataTypeParser<AllowedTypesT>...>(func, blockParser);
87
64
  });
88
- // TODO: support function component values and simple blocks
89
65
  }
90
66
 
91
67
  constexpr bool isFinished() const {
@@ -97,221 +73,162 @@ class CSSValueParser {
97
73
  }
98
74
 
99
75
  private:
100
- template <CSSDataType T>
101
- constexpr static bool hasType() {
102
- return traits::containsType<T, AllowedTypesT...>();
103
- }
104
-
105
- template <typename T>
106
- constexpr static bool hasType() {
107
- return false;
108
- }
109
-
110
- constexpr std::optional<CSSValue> consumeKeyword(
111
- const CSSPreservedToken& token) {
112
- if (token.type() == CSSTokenType::Ident) {
113
- if (auto keyword = parseCSSKeyword<typename CSSValue::Keyword>(
114
- token.stringValue())) {
115
- return CSSValue::keyword(*keyword);
116
- }
117
- }
76
+ template <typename ReturnT>
77
+ constexpr ReturnT tryConsumePreservedToken(
78
+ const CSSPreservedToken& /*token*/) {
118
79
  return {};
119
80
  }
120
81
 
121
- constexpr std::optional<CSSValue> consumeCSSWideKeyword(
122
- const CSSPreservedToken& token) {
123
- if (token.type() == CSSTokenType::Ident) {
124
- if (auto keyword = parseCSSKeyword<CSSWideKeyword>(token.stringValue())) {
125
- return CSSValue::cssWideKeyword(*keyword);
82
+ template <
83
+ typename ReturnT,
84
+ CSSValidDataTypeParser ParserT,
85
+ CSSValidDataTypeParser... RestParserT>
86
+ constexpr ReturnT tryConsumePreservedToken(const CSSPreservedToken& token) {
87
+ if constexpr (CSSPreservedTokenSink<ParserT>) {
88
+ if (auto ret = ParserT::consumePreservedToken(token)) {
89
+ return *ret;
126
90
  }
127
91
  }
128
- return {};
129
- }
130
92
 
131
- constexpr std::optional<CSSValue> consumeAngle(
132
- const CSSPreservedToken& token) {
133
- if (token.type() == CSSTokenType::Dimension) {
134
- if (auto unit = parseCSSAngleUnit(token.unit())) {
135
- return CSSValue::angle(canonicalize(token.numericValue(), *unit));
136
- }
137
- }
138
- return {};
93
+ return tryConsumePreservedToken<ReturnT, RestParserT...>(token);
139
94
  }
140
95
 
141
- constexpr std::optional<CSSValue> consumePercentage(
142
- const CSSPreservedToken& token) {
143
- if (token.type() == CSSTokenType::Percentage) {
144
- return CSSValue::percentage(token.numericValue());
145
- }
146
-
96
+ template <typename ReturnT>
97
+ constexpr ReturnT tryConsumeSimpleBlock(
98
+ const CSSSimpleBlock& /*token*/,
99
+ CSSSyntaxParser& /*blockParser*/) {
147
100
  return {};
148
101
  }
149
102
 
150
- constexpr std::optional<CSSValue> consumeNumber(
151
- const CSSPreservedToken& token) {
152
- if (token.type() == CSSTokenType::Number) {
153
- return CSSValue::number(token.numericValue());
103
+ template <
104
+ typename ReturnT,
105
+ CSSValidDataTypeParser ParserT,
106
+ CSSValidDataTypeParser... RestParserT>
107
+ constexpr ReturnT tryConsumeSimpleBlock(
108
+ const CSSSimpleBlock& block,
109
+ CSSSyntaxParser& blockParser) {
110
+ if constexpr (CSSSimpleBlockSink<ParserT>) {
111
+ auto currentParser = blockParser;
112
+ if (auto ret = ParserT::consumeSimpleBlock(block, blockParser)) {
113
+ return *ret;
114
+ }
115
+ blockParser = currentParser;
154
116
  }
155
117
 
156
- return {};
118
+ return tryConsumeSimpleBlock<ReturnT, RestParserT...>(block, blockParser);
157
119
  }
158
120
 
159
- constexpr std::optional<CSSValue> consumeLength(
160
- const CSSPreservedToken& token) {
161
- switch (token.type()) {
162
- case CSSTokenType::Dimension:
163
- if (auto unit = parseCSSLengthUnit(token.unit())) {
164
- return CSSValue::length(token.numericValue(), *unit);
165
- }
166
- break;
167
- case CSSTokenType::Number:
168
- // For zero lengths the unit identifier is optional (i.e. can be
169
- // syntactically represented as the <number> 0). However, if a 0
170
- // could be parsed as either a <number> or a <length> in a
171
- // property (such as line-height), it must parse as a <number>.
172
- // https://www.w3.org/TR/css-values-4/#lengths
173
- if (token.numericValue() == 0) {
174
- return CSSValue::length(token.numericValue(), CSSLengthUnit::Px);
175
- }
176
- break;
177
- default:
178
- break;
179
- }
180
-
121
+ template <typename ReturnT>
122
+ constexpr ReturnT tryConsumeFunctionBlock(
123
+ const CSSFunctionBlock& /*func*/,
124
+ CSSSyntaxParser& /*blockParser*/) {
181
125
  return {};
182
126
  }
183
127
 
184
- constexpr std::optional<CSSValue> consumeRatio(
185
- const CSSPreservedToken& token) {
186
- // <ratio> = <number [0,∞]> [ / <number [0,∞]> ]?
187
- // https://www.w3.org/TR/css-values-4/#ratio
188
- if (isValidRatioPart(token.numericValue())) {
189
- float numerator = token.numericValue();
190
-
191
- CSSSyntaxParser lookaheadParser{parser_};
192
-
193
- auto hasSolidus = lookaheadParser.consumeComponentValue<bool>(
194
- CSSComponentValueDelimiter::Whitespace,
195
- [&](const CSSPreservedToken& token) {
196
- return token.type() == CSSTokenType::Delim &&
197
- token.stringValue() == "/";
198
- });
199
-
200
- if (!hasSolidus) {
201
- return CSSValue::ratio(numerator, 1.0f);
202
- }
203
-
204
- // TODO: support math expression substituion for <number>
205
- auto denominator =
206
- lookaheadParser.consumeComponentValue<std::optional<float>>(
207
- CSSComponentValueDelimiter::Whitespace,
208
- [&](const CSSPreservedToken& token) {
209
- if (token.type() == CSSTokenType::Number &&
210
- isValidRatioPart(token.numericValue())) {
211
- return std::optional(token.numericValue());
212
- }
213
- return std::optional<float>{};
214
- });
215
-
216
- if (denominator.has_value()) {
217
- parser_ = lookaheadParser;
218
- return CSSValue::ratio(numerator, *denominator);
128
+ template <
129
+ typename ReturnT,
130
+ CSSValidDataTypeParser ParserT,
131
+ CSSValidDataTypeParser... RestParserT>
132
+ constexpr ReturnT tryConsumeFunctionBlock(
133
+ const CSSFunctionBlock& func,
134
+ CSSSyntaxParser& blockParser) {
135
+ if constexpr (CSSFunctionBlockSink<ParserT>) {
136
+ auto currentParser = blockParser;
137
+ if (auto ret = ParserT::consumeFunctionBlock(func, blockParser)) {
138
+ return *ret;
219
139
  }
140
+ blockParser = currentParser;
220
141
  }
221
142
 
222
- return {};
143
+ return tryConsumeFunctionBlock<ReturnT, RestParserT...>(func, blockParser);
223
144
  }
224
145
 
225
- constexpr bool isValidRatioPart(float value) {
226
- // If either number in the <ratio> is 0 or infinite, it represents a
227
- // degenerate ratio (and, generally, won’t do anything).
228
- // https://www.w3.org/TR/css-values-4/#ratios
229
- return value > 0.0f && value != +std::numeric_limits<float>::infinity() &&
230
- value != -std::numeric_limits<float>::infinity();
146
+ template <typename ReturnT>
147
+ constexpr ReturnT tryConsumeParser(CSSDelimiter /*delimeter*/) {
148
+ return {};
231
149
  }
232
150
 
233
- constexpr std::optional<CSSValue> consumeColorToken(
234
- const CSSPreservedToken& token) {
235
- if (token.type() == CSSTokenType::Ident) {
236
- return parseCSSNamedColor<CSSValue>(token.stringValue());
237
- } else if (token.type() != CSSTokenType::Hash) {
238
- return {};
239
- }
240
-
241
- // https://www.w3.org/TR/css-color-4/#hex-color
242
- std::string_view hexColorValue = token.stringValue();
243
- if (isValidHexColor(hexColorValue)) {
244
- if (hexColorValue.length() == 3) {
245
- return CSSValue::color(
246
- hexToNumeric(hexColorValue.substr(0, 1), HexColorType::Short),
247
- hexToNumeric(hexColorValue.substr(1, 1), HexColorType::Short),
248
- hexToNumeric(hexColorValue.substr(2, 1), HexColorType::Short),
249
- 255u);
250
- } else if (hexColorValue.length() == 4) {
251
- return CSSValue::color(
252
- hexToNumeric(hexColorValue.substr(0, 1), HexColorType::Short),
253
- hexToNumeric(hexColorValue.substr(1, 1), HexColorType::Short),
254
- hexToNumeric(hexColorValue.substr(2, 1), HexColorType::Short),
255
- hexToNumeric(hexColorValue.substr(3, 1), HexColorType::Short));
256
- } else if (hexColorValue.length() == 6) {
257
- return CSSValue::color(
258
- hexToNumeric(hexColorValue.substr(0, 2), HexColorType::Long),
259
- hexToNumeric(hexColorValue.substr(2, 2), HexColorType::Long),
260
- hexToNumeric(hexColorValue.substr(4, 2), HexColorType::Long),
261
- 255u);
262
- } else if (hexColorValue.length() == 8) {
263
- return CSSValue::color(
264
- hexToNumeric(hexColorValue.substr(0, 2), HexColorType::Long),
265
- hexToNumeric(hexColorValue.substr(2, 2), HexColorType::Long),
266
- hexToNumeric(hexColorValue.substr(4, 2), HexColorType::Long),
267
- hexToNumeric(hexColorValue.substr(6, 2), HexColorType::Long));
151
+ template <
152
+ typename ReturnT,
153
+ CSSValidDataTypeParser ParserT,
154
+ CSSValidDataTypeParser... RestParserT>
155
+ constexpr ReturnT tryConsumeParser(CSSDelimiter delimeter) {
156
+ if constexpr (CSSParserSink<ParserT>) {
157
+ auto originalParser = parser_;
158
+ if (parser_.consumeDelimiter(delimeter)) {
159
+ if (auto ret = ParserT::consume(parser_)) {
160
+ return *ret;
161
+ }
268
162
  }
163
+ parser_ = originalParser;
269
164
  }
270
- return {};
165
+
166
+ return tryConsumeParser<ReturnT, RestParserT...>(delimeter);
271
167
  }
272
168
 
273
- CSSSyntaxParser parser_;
169
+ CSSSyntaxParser& parser_;
274
170
  };
275
171
 
276
- template <CSSDataType... AllowedTypesT>
277
- constexpr void parseCSSValue(
278
- std::string_view css,
279
- CSSValueVariant<AllowedTypesT...>& value) {
280
- detail::CSSValueParser<AllowedTypesT...> parser(css);
172
+ } // namespace detail
173
+
174
+ /**
175
+ * Parse a single CSS property value. Returns a variant holding std::monostate
176
+ * on syntax error.
177
+ */
178
+ template <CSSMaybeCompoundDataType... AllowedTypesT>
179
+ constexpr auto parseCSSProperty(std::string_view css)
180
+ -> CSSVariantWithTypes<
181
+ CSSMergedDataTypes<CSSWideKeyword, AllowedTypesT...>,
182
+ std::monostate> {
183
+ CSSSyntaxParser syntaxParser(css);
184
+ detail::CSSValueParser parser(syntaxParser);
281
185
 
282
186
  parser.consumeWhitespace();
283
- auto componentValue = parser.consumeValue();
187
+ auto value = parser.consumeValue(
188
+ CSSDelimiter::None,
189
+ CSSMergedDataTypes<CSSWideKeyword, AllowedTypesT...>{});
284
190
  parser.consumeWhitespace();
285
191
 
286
192
  if (parser.isFinished()) {
287
- value = std::move(componentValue);
288
- } else {
289
- value = {};
193
+ return value;
290
194
  }
291
- };
292
195
 
293
- } // namespace detail
196
+ return {};
197
+ };
294
198
 
295
199
  /**
296
- * Parse a single CSS value. Returns a default-constructed
297
- * CSSValueVariant (CSSKeyword::Unset) on syntax error.
200
+ * Attempts to parse the next CSS value of a given set of data types, at the
201
+ * current location of the syntax parser, advancing the syntax parser
298
202
  */
299
- template <CSSDataType... AllowedTypesT>
300
- CSSValueVariant<AllowedTypesT...> parseCSSValue(std::string_view css) {
301
- CSSValueVariant<AllowedTypesT...> value;
302
- detail::parseCSSValue<AllowedTypesT...>(css, value);
303
- return value;
304
- };
203
+ template <CSSMaybeCompoundDataType... AllowedTypesT>
204
+ constexpr auto parseNextCSSValue(
205
+ CSSSyntaxParser& syntaxParser,
206
+ CSSDelimiter delimeter = CSSDelimiter::None)
207
+ -> CSSVariantWithTypes<
208
+ CSSMergedDataTypes<AllowedTypesT...>,
209
+ std::monostate> {
210
+ detail::CSSValueParser valueParser(syntaxParser);
211
+ return valueParser.consumeValue(
212
+ delimeter, CSSMergedDataTypes<AllowedTypesT...>{});
213
+ }
305
214
 
306
215
  /**
307
- * Parses a CSS property into its declared value type.
216
+ * Attempts to parse the next CSS value of a given set of data types, at the
217
+ * current location of the syntax parser, without advancing the syntax parser
308
218
  */
309
- template <CSSProp Prop>
310
- constexpr CSSDeclaredValue<Prop> parseCSSProp(std::string_view css) {
311
- // For now we only allow parsing props composed of a single component value.
312
- CSSDeclaredValue<Prop> value;
313
- detail::parseCSSValue(css, value);
314
- return value;
219
+ template <CSSMaybeCompoundDataType... AllowedTypesT>
220
+ constexpr auto peekNextCSSValue(
221
+ CSSSyntaxParser& syntaxParser,
222
+ CSSDelimiter delimeter = CSSDelimiter::None)
223
+ -> CSSVariantWithTypes<
224
+ CSSMergedDataTypes<AllowedTypesT...>,
225
+ std::monostate> {
226
+ auto savedParser = syntaxParser;
227
+ detail::CSSValueParser valueParser(syntaxParser);
228
+ auto ret = valueParser.consumeValue(
229
+ delimeter, CSSMergedDataTypes<AllowedTypesT...>{});
230
+ syntaxParser = savedParser;
231
+ return ret;
315
232
  }
316
233
 
317
234
  } // namespace facebook::react