react-native-tvos 0.81.4-0 → 0.82.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 (1617) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -3
  2. package/Libraries/Alert/RCTAlertManager.android.js +4 -2
  3. package/Libraries/Animated/Animated.d.ts +2 -0
  4. package/Libraries/Animated/AnimatedEvent.js +1 -1
  5. package/Libraries/Animated/AnimatedExports.js.flow +1 -0
  6. package/Libraries/Animated/AnimatedImplementation.js +4 -2
  7. package/Libraries/Animated/AnimatedMock.js +1 -1
  8. package/Libraries/Animated/Easing.js +2 -0
  9. package/Libraries/Animated/NativeAnimatedAllowlist.js +1 -0
  10. package/Libraries/Animated/animations/Animation.js +19 -20
  11. package/Libraries/Animated/animations/TimingAnimation.js +2 -0
  12. package/Libraries/Animated/components/AnimatedScrollView.js +3 -2
  13. package/Libraries/Animated/components/AnimatedSectionList.js +1 -1
  14. package/Libraries/Animated/nodes/AnimatedColor.js +9 -9
  15. package/Libraries/Animated/nodes/AnimatedInterpolation.js +4 -4
  16. package/Libraries/Animated/nodes/AnimatedNode.js +14 -7
  17. package/Libraries/Animated/nodes/AnimatedObject.js +7 -7
  18. package/Libraries/Animated/nodes/AnimatedProps.js +32 -32
  19. package/Libraries/Animated/nodes/AnimatedStyle.js +23 -21
  20. package/Libraries/Animated/nodes/AnimatedTransform.js +6 -6
  21. package/Libraries/Animated/nodes/AnimatedValue.js +18 -26
  22. package/Libraries/AppDelegate/RCTAppDelegate.h +5 -2
  23. package/Libraries/AppDelegate/RCTAppSetupUtils.h +10 -7
  24. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +7 -10
  25. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +6 -4
  26. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +5 -6
  27. package/Libraries/AppDelegate/RCTReactNativeFactory.h +12 -4
  28. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +22 -33
  29. package/Libraries/AppDelegate/RCTRootViewFactory.h +3 -2
  30. package/Libraries/AppDelegate/RCTRootViewFactory.mm +50 -65
  31. package/Libraries/AppState/AppState.js +8 -4
  32. package/Libraries/BatchedBridge/BatchedBridge.js +1 -0
  33. package/Libraries/BatchedBridge/MessageQueue.js +5 -0
  34. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  35. package/Libraries/Blob/BlobManager.js +1 -1
  36. package/Libraries/Blob/URLSearchParams.js +2 -0
  37. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -2
  38. package/Libraries/Components/Button.js +1 -2
  39. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  40. package/Libraries/Components/Pressable/Pressable.js +24 -13
  41. package/Libraries/Components/Pressable/useAndroidRippleForView.js +2 -2
  42. package/Libraries/Components/ScrollView/ScrollView.js +13 -4
  43. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  44. package/Libraries/Components/StatusBar/StatusBar.js +2 -2
  45. package/Libraries/Components/Switch/Switch.js +1 -1
  46. package/Libraries/Components/TV/TVParallaxProperties.d.ts +42 -0
  47. package/Libraries/Components/TV/TVViewPropTypes.js +45 -8
  48. package/Libraries/Components/TextInput/TextInput.flow.js +12 -5
  49. package/Libraries/Components/TextInput/TextInput.js +14 -5
  50. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  51. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  52. package/Libraries/Components/Touchable/TouchableHighlight.js +6 -33
  53. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -51
  54. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +0 -1
  55. package/Libraries/Components/Touchable/TouchableOpacity.js +6 -57
  56. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
  57. package/Libraries/Components/View/View.js +92 -166
  58. package/Libraries/Components/View/ViewPropTypes.d.ts +59 -41
  59. package/Libraries/Components/View/ViewPropTypes.js +5 -86
  60. package/Libraries/Core/Devtools/loadBundleFromServer.js +1 -1
  61. package/Libraries/Core/ExceptionsManager.js +4 -2
  62. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  63. package/Libraries/Core/ReactNativeVersion.js +37 -10
  64. package/Libraries/Core/Timers/JSTimers.js +4 -1
  65. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  66. package/Libraries/Core/Timers/immediateShim.js +2 -1
  67. package/Libraries/Core/Timers/queueMicrotask.js +1 -0
  68. package/Libraries/Core/setUpPerformance.js +3 -4
  69. package/Libraries/Debugging/DebuggingOverlayRegistry.js +5 -3
  70. package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +2 -1
  71. package/Libraries/Image/Image.android.js +327 -111
  72. package/Libraries/Image/Image.ios.js +6 -1
  73. package/Libraries/Image/ImageSourceUtils.js +8 -2
  74. package/Libraries/Image/RCTImageShadowView.h +5 -0
  75. package/Libraries/Image/RCTImageShadowView.mm +4 -0
  76. package/Libraries/Image/RCTImageView.h +5 -0
  77. package/Libraries/Image/RCTImageView.mm +4 -0
  78. package/Libraries/Image/RCTImageViewManager.h +5 -0
  79. package/Libraries/Image/RCTImageViewManager.mm +4 -0
  80. package/Libraries/Image/RCTUIImageViewAnimated.mm +6 -3
  81. package/Libraries/Image/resolveAssetSource.js +1 -1
  82. package/Libraries/Interaction/InteractionManager.js +118 -167
  83. package/Libraries/Interaction/PanResponder.js +7 -52
  84. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
  85. package/Libraries/Lists/FlatList.js +5 -6
  86. package/Libraries/LogBox/Data/LogBoxData.js +5 -2
  87. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  88. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -1
  89. package/Libraries/Modal/Modal.js +3 -3
  90. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +13 -33
  91. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  92. package/Libraries/NativeComponent/ViewConfig.js +2 -2
  93. package/Libraries/Network/RCTNetworking.android.js +1 -1
  94. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  95. package/Libraries/Network/React-RCTNetwork.podspec +1 -1
  96. package/Libraries/Network/XMLHttpRequest.js +20 -5
  97. package/Libraries/Network/convertRequestBody.js +1 -1
  98. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -9
  99. package/Libraries/Pressability/HoverState.js +2 -0
  100. package/Libraries/Pressability/Pressability.js +1 -1
  101. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  102. package/Libraries/ReactNative/AppRegistryImpl.js +4 -2
  103. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -0
  104. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +3 -3
  105. package/Libraries/ReactNative/RendererImplementation.js +117 -118
  106. package/Libraries/ReactNative/UIManager.js +3 -3
  107. package/Libraries/ReactNative/renderApplication.js +1 -0
  108. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
  109. package/Libraries/Renderer/README.md +1 -1
  110. package/Libraries/Renderer/implementations/ReactFabric-dev.js +38 -35
  111. package/Libraries/Renderer/implementations/ReactFabric-prod.js +51 -22
  112. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +54 -24
  113. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +36 -33
  114. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +5 -5
  115. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5 -5
  116. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  117. package/Libraries/Share/Share.js +4 -0
  118. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  119. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +2 -2
  120. package/Libraries/StyleSheet/StyleSheet.d.ts +7 -22
  121. package/Libraries/StyleSheet/StyleSheetExports.js +2 -8
  122. package/Libraries/StyleSheet/StyleSheetExports.js.flow +11 -18
  123. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  124. package/Libraries/StyleSheet/processAspectRatio.js +2 -0
  125. package/Libraries/StyleSheet/processFilter.js +5 -5
  126. package/Libraries/StyleSheet/splitLayoutProps.js +2 -2
  127. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +7 -1
  128. package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +4 -0
  129. package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +5 -0
  130. package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +4 -0
  131. package/Libraries/Text/RCTTextAttributes.h +10 -3
  132. package/Libraries/Text/RCTTextAttributes.mm +4 -0
  133. package/Libraries/Text/RawText/RCTRawTextShadowView.h +5 -0
  134. package/Libraries/Text/RawText/RCTRawTextShadowView.mm +4 -0
  135. package/Libraries/Text/RawText/RCTRawTextViewManager.h +5 -0
  136. package/Libraries/Text/RawText/RCTRawTextViewManager.mm +4 -0
  137. package/Libraries/Text/Text/RCTTextShadowView.h +5 -0
  138. package/Libraries/Text/Text/RCTTextShadowView.mm +4 -0
  139. package/Libraries/Text/Text/RCTTextView.h +5 -0
  140. package/Libraries/Text/Text/RCTTextView.mm +4 -0
  141. package/Libraries/Text/Text/RCTTextViewManager.h +5 -0
  142. package/Libraries/Text/Text/RCTTextViewManager.mm +4 -0
  143. package/Libraries/Text/Text.js +534 -234
  144. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +5 -0
  145. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +4 -0
  146. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +5 -0
  147. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +4 -0
  148. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +5 -0
  149. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +4 -0
  150. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +6 -1
  151. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +4 -0
  152. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +5 -0
  153. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +4 -0
  154. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +5 -0
  155. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +4 -0
  156. package/Libraries/Text/TextInput/RCTInputAccessoryView.h +5 -0
  157. package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +4 -0
  158. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +5 -0
  159. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +4 -0
  160. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +5 -0
  161. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +4 -0
  162. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +5 -0
  163. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +4 -0
  164. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +5 -0
  165. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +4 -0
  166. package/Libraries/Text/TextNativeComponent.js +2 -2
  167. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +5 -0
  168. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +4 -0
  169. package/Libraries/Text/VirtualText/RCTVirtualTextView.h +5 -0
  170. package/Libraries/Text/VirtualText/RCTVirtualTextView.mm +4 -0
  171. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +5 -0
  172. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +4 -0
  173. package/Libraries/Utilities/Appearance.d.ts +3 -5
  174. package/Libraries/Utilities/Appearance.js +5 -17
  175. package/Libraries/Utilities/HMRClient.js +2 -1
  176. package/Libraries/Utilities/Platform.android.js +3 -3
  177. package/Libraries/Utilities/Platform.d.ts +1 -0
  178. package/Libraries/Utilities/Platform.ios.js +1 -1
  179. package/Libraries/Utilities/PlatformTypes.js +1 -1
  180. package/Libraries/Utilities/ReactNativeTestTools.js +12 -0
  181. package/Libraries/Utilities/SceneTracker.js +1 -1
  182. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  183. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  184. package/Libraries/Utilities/createPerformanceLogger.js +32 -0
  185. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
  186. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  187. package/Libraries/Utilities/useMergeRefs.js +1 -1
  188. package/Libraries/WebSocket/WebSocketInterceptor.js +2 -0
  189. package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +5 -0
  190. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +4 -0
  191. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +5 -0
  192. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +4 -0
  193. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +5 -0
  194. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +4 -0
  195. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +5 -0
  196. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +4 -0
  197. package/Libraries/Wrapper/RCTWrapper.h +28 -23
  198. package/Libraries/Wrapper/RCTWrapperShadowView.h +5 -0
  199. package/Libraries/Wrapper/RCTWrapperShadowView.m +4 -0
  200. package/Libraries/Wrapper/RCTWrapperView.h +7 -1
  201. package/Libraries/Wrapper/RCTWrapperView.m +4 -0
  202. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +5 -0
  203. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +4 -0
  204. package/Libraries/Wrapper/RCTWrapperViewManager.h +5 -0
  205. package/Libraries/Wrapper/RCTWrapperViewManager.m +4 -0
  206. package/Libraries/promiseRejectionTrackingOptions.js +17 -31
  207. package/Libraries/vendor/emitter/EventEmitter.js +1 -1
  208. package/README.md +25 -17
  209. package/React/Base/RCTBridge+Private.h +4 -2
  210. package/React/Base/RCTBridge.h +5 -2
  211. package/React/Base/RCTBridge.mm +19 -4
  212. package/React/Base/RCTBridgeDelegate.h +14 -6
  213. package/React/Base/RCTBridgeMethod.h +1 -1
  214. package/React/Base/RCTBridgeProxy.mm +1 -1
  215. package/React/Base/RCTJavaScriptExecutor.h +6 -3
  216. package/React/Base/RCTModuleData.h +29 -15
  217. package/React/Base/RCTRootContentView.h +15 -8
  218. package/React/Base/RCTRootView.h +2 -0
  219. package/React/Base/RCTRootViewInternal.h +1 -1
  220. package/React/Base/RCTUtils.h +0 -1
  221. package/React/Base/RCTUtils.mm +1 -17
  222. package/React/Base/RCTVersion.m +2 -2
  223. package/React/Base/Surface/RCTSurface.h +2 -1
  224. package/React/Base/Surface/RCTSurfaceRootShadowView.h +4 -2
  225. package/React/CoreModules/RCTAlertController.mm +6 -1
  226. package/React/CoreModules/RCTDevMenu.mm +1 -8
  227. package/React/CoreModules/RCTLogBoxView.mm +2 -0
  228. package/React/CoreModules/RCTPerfMonitor.mm +1 -1
  229. package/React/CoreModules/React-CoreModules.podspec +1 -1
  230. package/React/CxxBridge/RCTCxxBridge.mm +1 -1
  231. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +1 -0
  232. package/React/CxxBridge/RCTObjcExecutor.h +3 -1
  233. package/React/CxxModule/DispatchMessageQueueThread.h +2 -1
  234. package/React/CxxModule/RCTCxxUtils.h +1 -0
  235. package/React/CxxModule/RCTNativeModule.h +3 -1
  236. package/React/DevSupport/RCTInspectorNetworkHelper.h +3 -3
  237. package/React/DevSupport/RCTInspectorNetworkHelper.mm +1 -1
  238. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +165 -51
  239. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +285 -66
  240. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.cpp +25 -0
  241. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +25 -0
  242. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +208 -2
  243. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +81 -2
  244. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/RCTComponentViewHelpers.h +4 -0
  245. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +1 -1
  246. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +31 -25
  247. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +4 -1
  248. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +92 -6
  249. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerProtocol.h +14 -0
  250. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerState.h +25 -0
  251. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerState.mm +190 -0
  252. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewProtocol.h +20 -0
  253. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +0 -5
  254. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +4 -1
  255. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +23 -36
  256. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +23 -20
  257. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.h +25 -0
  258. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +323 -0
  259. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewMode.h +18 -0
  260. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewRenderState.h +17 -0
  261. package/React/Fabric/Mounting/RCTComponentViewDescriptor.h +4 -4
  262. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +4 -2
  263. package/React/Fabric/Mounting/RCTComponentViewProtocol.h +6 -0
  264. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +1 -0
  265. package/React/Fabric/Mounting/RCTMountingManager.h +1 -1
  266. package/React/Fabric/Mounting/RCTMountingManager.mm +2 -2
  267. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +2 -0
  268. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +5 -0
  269. package/React/Fabric/RCTConversions.h +3 -3
  270. package/React/Fabric/RCTPrimitives.h +1 -1
  271. package/React/Fabric/RCTSurfacePresenter.h +2 -2
  272. package/React/Fabric/RCTSurfacePresenter.mm +12 -10
  273. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +1 -1
  274. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +3 -2
  275. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  276. package/React/Fabric/Utils/RCTGradientUtils.mm +9 -9
  277. package/React/Fabric/Utils/RCTRadialGradient.mm +6 -5
  278. package/React/Modules/RCTUIManager.h +8 -8
  279. package/React/Modules/RCTUIManager.mm +11 -16
  280. package/React/Profiler/RCTProfile.h +45 -28
  281. package/React/React-RCTFabric.podspec +1 -0
  282. package/React/Runtime/React-RCTRuntime.podspec +1 -0
  283. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +4 -2
  284. package/React/Views/RCTActivityIndicatorView.h +5 -0
  285. package/React/Views/RCTActivityIndicatorView.m +4 -0
  286. package/React/Views/RCTActivityIndicatorViewManager.h +5 -0
  287. package/React/Views/RCTActivityIndicatorViewManager.m +4 -0
  288. package/React/Views/RCTDebuggingOverlayManager.h +5 -0
  289. package/React/Views/RCTDebuggingOverlayManager.m +4 -0
  290. package/React/Views/RCTFont.mm +3 -3
  291. package/React/Views/RCTModalHostView.h +6 -1
  292. package/React/Views/RCTModalHostView.m +4 -0
  293. package/React/Views/RCTModalHostViewController.h +5 -0
  294. package/React/Views/RCTModalHostViewController.m +4 -0
  295. package/React/Views/RCTModalHostViewManager.h +8 -2
  296. package/React/Views/RCTModalHostViewManager.m +4 -0
  297. package/React/Views/RCTModalManager.h +6 -1
  298. package/React/Views/RCTModalManager.m +4 -0
  299. package/React/Views/RCTRootShadowView.h +1 -0
  300. package/React/Views/RCTRootShadowView.m +12 -0
  301. package/React/Views/RCTShadowView.m +92 -0
  302. package/React/Views/RCTSwitch.h +6 -1
  303. package/React/Views/RCTSwitch.m +5 -1
  304. package/React/Views/RCTSwitchManager.h +6 -1
  305. package/React/Views/RCTSwitchManager.m +5 -1
  306. package/React/Views/RefreshControl/RCTRefreshControl.h +7 -2
  307. package/React/Views/RefreshControl/RCTRefreshControl.m +9 -3
  308. package/React/Views/RefreshControl/RCTRefreshControlManager.h +6 -1
  309. package/React/Views/RefreshControl/RCTRefreshControlManager.m +5 -1
  310. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.h +5 -0
  311. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +4 -0
  312. package/React/Views/SafeAreaView/RCTSafeAreaView.h +5 -0
  313. package/React/Views/SafeAreaView/RCTSafeAreaView.m +4 -0
  314. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.h +5 -0
  315. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.m +4 -0
  316. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.h +5 -0
  317. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +4 -0
  318. package/React/Views/ScrollView/RCTScrollContentShadowView.h +5 -0
  319. package/React/Views/ScrollView/RCTScrollContentShadowView.m +4 -0
  320. package/React/Views/ScrollView/RCTScrollContentView.h +5 -0
  321. package/React/Views/ScrollView/RCTScrollContentView.m +4 -0
  322. package/React/Views/ScrollView/RCTScrollContentViewManager.h +5 -0
  323. package/React/Views/ScrollView/RCTScrollContentViewManager.m +4 -0
  324. package/React/Views/ScrollView/RCTScrollView.h +5 -0
  325. package/React/Views/ScrollView/RCTScrollView.m +4 -0
  326. package/React/Views/ScrollView/RCTScrollViewManager.h +6 -0
  327. package/React/Views/ScrollView/RCTScrollViewManager.m +4 -0
  328. package/ReactAndroid/api/ReactAndroid.api +340 -254
  329. package/ReactAndroid/build.gradle.kts +82 -32
  330. package/ReactAndroid/gradle.properties +2 -1
  331. package/ReactAndroid/hermes-engine/build.gradle.kts +40 -20
  332. package/ReactAndroid/src/main/java/com/facebook/debug/tags/ReactDebugOverlayTags.kt +2 -1
  333. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.kt +4 -4
  334. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +8 -5
  335. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.kt +36 -23
  336. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +4 -3
  337. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +7 -3
  338. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.kt +4 -2
  339. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +12 -3
  340. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -0
  341. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +19 -28
  342. package/ReactAndroid/src/main/java/com/facebook/react/ReactApplication.kt +5 -1
  343. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +70 -44
  344. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.kt +19 -11
  345. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +3 -3
  346. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +15 -7
  347. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +18 -5
  348. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +2 -1
  349. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +3 -2
  350. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +16 -10
  351. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +15 -30
  352. package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.kt +2 -1
  353. package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.kt +1 -1
  354. package/ReactAndroid/src/main/java/com/facebook/react/animated/AdditionAnimatedNode.kt +5 -3
  355. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.kt +1 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimationDriver.kt +2 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +1 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/animated/DecayAnimation.kt +1 -1
  359. package/ReactAndroid/src/main/java/com/facebook/react/animated/DiffClampAnimatedNode.kt +3 -2
  360. package/ReactAndroid/src/main/java/com/facebook/react/animated/DivisionAnimatedNode.kt +5 -3
  361. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +7 -5
  362. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +17 -11
  363. package/ReactAndroid/src/main/java/com/facebook/react/animated/ModulusAnimatedNode.kt +3 -2
  364. package/ReactAndroid/src/main/java/com/facebook/react/animated/MultiplicationAnimatedNode.kt +3 -2
  365. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +129 -63
  366. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +75 -52
  367. package/ReactAndroid/src/main/java/com/facebook/react/animated/ObjectAnimatedNode.kt +11 -7
  368. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +7 -4
  369. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.kt +3 -2
  370. package/ReactAndroid/src/main/java/com/facebook/react/animated/SubtractionAnimatedNode.kt +3 -2
  371. package/ReactAndroid/src/main/java/com/facebook/react/animated/TrackingAnimatedNode.kt +1 -1
  372. package/ReactAndroid/src/main/java/com/facebook/react/animated/TransformAnimatedNode.kt +3 -2
  373. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.kt +4 -4
  374. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.kt +358 -0
  375. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.kt +3 -2
  376. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +2 -1
  377. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +13 -3
  378. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +16 -6
  379. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +7 -1
  380. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +8 -4
  381. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.kt +1 -1
  382. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +6 -3
  383. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DimensionPropConverter.kt +2 -1
  384. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.kt +1 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.kt +4 -4
  386. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoaderDelegate.kt +1 -1
  387. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.kt +2 -2
  388. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +52 -24
  389. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +4 -3
  390. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.kt +2 -1
  391. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.kt +6 -4
  392. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +10 -3
  393. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.kt +5 -4
  394. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +21 -7
  395. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +6 -0
  396. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +6 -2
  397. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +2 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +1 -1
  399. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +2 -8
  400. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.kt +2 -1
  401. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +9 -3
  402. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +12 -3
  403. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.kt +8 -13
  404. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.kt +1 -1
  405. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{BridgeSoLoader.kt → ReactNativeJNISoLoader.kt} +3 -7
  406. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +6 -5
  407. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +4 -2
  408. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +5 -3
  409. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.kt +2 -2
  410. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerListener.kt +5 -5
  411. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +4 -0
  412. package/ReactAndroid/src/main/java/com/facebook/react/bridge/WindowFocusChangeListener.kt +1 -1
  413. package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.kt +3 -1
  414. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +1 -1
  415. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThread.kt +5 -2
  416. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.kt +1 -1
  417. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadImpl.kt +14 -36
  418. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadPerfStats.kt +1 -0
  419. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadSpec.kt +2 -1
  420. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.kt +2 -2
  421. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.kt +4 -2
  422. package/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.kt +1 -2
  423. package/ReactAndroid/src/main/java/com/facebook/react/common/MapBuilder.kt +3 -3
  424. package/ReactAndroid/src/main/java/com/facebook/react/common/ReleaseLevel.kt +1 -1
  425. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/FrameworkAPI.kt +2 -1
  426. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/UnstableReactNativeAPI.kt +2 -1
  427. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogLevel.kt +1 -1
  428. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogger.kt +4 -3
  429. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +1 -1
  430. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  431. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultComponentsRegistry.kt +1 -1
  432. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +33 -15
  433. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +2 -1
  434. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +5 -165
  435. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHostDelegate.kt +1 -1
  436. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +15 -8
  437. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +7 -3
  438. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +10 -3
  439. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +11 -4
  440. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +43 -19
  441. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +13 -5
  442. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +10 -7
  443. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.kt +8 -4
  444. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +8 -3
  445. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +15 -5
  446. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevInternalSettings.kt +5 -3
  447. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +53 -18
  448. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +155 -49
  449. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +10 -2
  450. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +5 -3
  451. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/HMRClient.kt +1 -1
  452. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +5 -2
  453. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +1 -1
  454. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +2 -2
  455. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.kt +11 -6
  456. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PausedInDebuggerOverlayDialogManager.kt +1 -1
  457. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerfMonitorOverlayViewManager.kt +278 -0
  458. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerftestDevSupportManager.kt +2 -1
  459. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxContentView.kt +11 -6
  460. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +6 -3
  461. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +5 -5
  462. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.kt +19 -8
  463. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +2 -1
  464. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/BundleLoadCallback.kt +1 -1
  465. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DebuggerFrontendPanelName.kt +21 -0
  466. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +8 -2
  467. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PausedInDebuggerOverlayManager.kt +1 -1
  468. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PerfMonitorOverlayManager.kt +20 -0
  469. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +1 -1
  470. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingState.kt +19 -0
  471. package/{ReactCommon/react/nativemodule/core/ReactCommon/CallbackWrapper.h → ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingStateProvider.kt} +4 -3
  472. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorDevHelper.kt +20 -0
  473. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorEventDispatcher.kt +12 -0
  474. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTarget.kt +11 -0
  475. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +20 -0
  476. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +24 -0
  477. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +2 -2
  478. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +44 -14
  479. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +9 -4
  480. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +15 -3
  481. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +4 -3
  482. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +1 -1
  483. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +5 -4
  484. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +22 -9
  485. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +25 -20
  486. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DestroyUnmountedViewMountItem.kt +1 -1
  487. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.kt +1 -1
  488. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.kt +1 -1
  489. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +61 -22
  490. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +5 -5
  491. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +9 -3
  492. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +1 -1
  493. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +77 -23
  494. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +131 -41
  495. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +27 -9
  496. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +32 -14
  497. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +145 -46
  498. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +3 -1
  499. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -5
  500. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -1
  501. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +27 -9
  502. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +10 -9
  503. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEvent.kt +1 -1
  504. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +3 -2
  505. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.kt +68 -47
  506. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +10 -7
  507. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +3 -2
  508. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +10 -6
  509. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +1 -1
  510. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/ReactModule.kt +3 -2
  511. package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfo.kt +6 -4
  512. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +15 -9
  513. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +1 -1
  514. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +8 -9
  515. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +2 -2
  516. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +1 -2
  517. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +1 -1
  518. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.kt +4 -2
  519. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +17 -8
  520. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionAwareActivity.kt +1 -1
  521. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionListener.kt +1 -1
  522. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactAndroidHWInputDeviceHelper.java +0 -20
  523. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +1 -1
  524. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.kt +2 -2
  525. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +1 -1
  526. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +1 -1
  527. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +12 -5
  528. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +6 -4
  529. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +3 -1
  530. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +3 -1
  531. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.kt +8 -6
  532. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogTitle.kt +2 -2
  533. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +4 -3
  534. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +9 -6
  535. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +2 -1
  536. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nUtil.kt +8 -4
  537. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +1 -1
  538. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +25 -17
  539. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +2 -2
  540. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/InspectorNetworkReporter.kt +128 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +268 -0
  542. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +221 -115
  543. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.kt +3 -2
  544. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.kt +5 -2
  545. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.kt +3 -2
  546. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +13 -16
  547. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +23 -11
  548. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +2 -1
  549. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  550. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +1 -1
  551. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +6 -5
  552. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.kt +4 -2
  553. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +1 -1
  554. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +2 -1
  555. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +5 -5
  556. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +5 -3
  557. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +14 -7
  558. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +24 -12
  559. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +8 -4
  560. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +184 -104
  561. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +12 -1
  562. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +49 -1
  563. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +54 -26
  564. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.kt +20 -12
  565. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +24 -6
  566. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.kt +12 -8
  567. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +3 -3
  568. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +29 -16
  569. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +1 -1
  570. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +43 -25
  571. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +26 -10
  572. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +39 -4
  573. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +21 -9
  574. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +15 -49
  575. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +56 -15
  576. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +7 -1
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +2 -0
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MatrixMathHelper.kt +15 -6
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MeasureSpecAssertions.kt +2 -1
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +4 -0
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +2 -0
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +2 -0
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +7 -1
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.kt +13 -4
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +7 -4
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +1045 -0
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +32 -50
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.kt +9 -6
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +2 -0
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +7 -1
  591. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStage.kt +3 -1
  592. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootView.kt +2 -1
  593. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +11 -2
  594. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SimpleViewManager.kt +1 -0
  595. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +11 -7
  596. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +15 -9
  597. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +37 -20
  598. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +36 -18
  599. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.kt +3 -1
  600. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +1 -1
  601. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +2 -0
  602. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +30 -13
  603. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +2 -15
  604. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.kt +24 -10
  605. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +25 -14
  606. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -0
  607. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.kt +10 -2
  608. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +7 -4
  609. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +1 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +14 -18
  611. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +6 -3
  612. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +15 -11
  613. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.kt +2 -1
  614. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +15 -8
  615. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +7 -1
  616. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.kt +5 -2
  617. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.kt +5 -2
  618. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +2 -1
  619. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +2 -1
  620. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +2 -1
  621. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +17 -7
  622. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +66 -40
  623. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +14 -6
  624. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +16 -8
  625. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +9 -3
  626. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutsetBoxShadowDrawable.kt +13 -7
  627. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +2 -1
  628. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ContentSizeChangeEvent.kt +3 -2
  629. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.kt +8 -3
  630. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +3 -1
  631. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.kt +4 -2
  632. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventEmitterImpl.kt +18 -7
  633. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +9 -5
  634. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +19 -10
  635. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +1 -1
  636. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +1 -1
  637. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +2 -2
  638. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +15 -8
  639. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +4 -2
  640. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/internal/LegacyArchitectureShadowNodeLogger.kt +8 -6
  641. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +12 -3
  642. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +6 -0
  643. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +15 -4
  644. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.kt +6 -0
  645. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +19 -5
  646. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +6 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +9 -1
  648. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +5 -1
  649. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +9 -1
  650. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +6 -0
  651. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +10 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +9 -1
  653. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +11 -2
  654. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +9 -1
  655. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +6 -3
  656. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderInsets.kt +6 -3
  657. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +11 -6
  658. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +5 -3
  659. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +1 -1
  660. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +4 -3
  661. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +18 -11
  662. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/ReactFindViewUtil.kt +6 -6
  663. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +15 -9
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.kt +15 -12
  665. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.kt +3 -2
  666. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +25 -16
  667. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +3 -1
  668. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +2 -1
  669. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.kt +15 -10
  670. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMethod.kt +22 -1
  671. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.kt +20 -5
  672. package/ReactAndroid/src/main/java/com/facebook/react/views/image/MultiPostprocessor.kt +1 -1
  673. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.kt +22 -21
  674. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +31 -13
  675. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ScaleTypeStartInside.kt +2 -4
  676. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +11 -8
  677. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +2 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +15 -17
  679. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +22 -43
  680. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.kt +2 -1
  681. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.kt +2 -1
  682. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +4 -1
  683. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +14 -5
  684. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +16 -12
  685. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +6 -4
  686. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +7 -5
  687. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +4 -2
  688. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +70 -26
  690. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +47 -21
  691. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +110 -42
  692. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +11 -4
  693. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.kt +11 -8
  694. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +100 -77
  695. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +46 -17
  696. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +6 -3
  697. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +165 -0
  698. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +25 -21
  699. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.kt +1 -1
  700. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +2 -1
  701. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +22 -19
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +11 -4
  703. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +10 -2
  704. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +2 -1
  705. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +28 -15
  706. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +26 -12
  707. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.kt +679 -0
  708. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.kt +4 -3
  709. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +6 -0
  710. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +6 -0
  711. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +16 -8
  712. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.kt +59 -39
  713. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +17 -8
  714. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +27 -15
  715. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +24 -10
  716. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +1 -1
  717. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +9 -1
  718. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +8 -1
  719. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.kt +565 -0
  720. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.kt +17 -17
  721. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +254 -128
  722. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +12 -5
  723. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +3 -3
  724. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +5 -2
  725. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.kt +2 -0
  726. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +2 -2
  727. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +2 -1
  728. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactFragmentIndexSpan.kt +14 -0
  729. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactLinkSpan.kt +48 -0
  730. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +1 -1
  731. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +1 -1
  732. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.kt +2 -2
  733. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.kt +1 -12
  734. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +68 -30
  735. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.kt +4 -3
  736. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +1 -11
  737. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +3 -1
  738. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.kt +1 -7
  739. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.kt +0 -6
  740. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +95 -38
  741. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.kt +1 -11
  742. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +30 -19
  743. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.kt +1 -7
  744. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +7 -2
  745. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +2 -1
  746. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +2 -1
  747. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +1 -1
  748. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +2 -2
  749. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.kt +12 -3
  750. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +24 -12
  751. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +72 -66
  752. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +40 -26
  753. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +2 -1
  754. package/ReactAndroid/src/main/java/com/facebook/react/views/{virtualview → virtual}/VirtualViewMode.kt +2 -2
  755. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/VirtualViewModeChangeEmitter.kt +19 -0
  756. package/ReactAndroid/src/main/java/com/facebook/react/views/{virtualview → virtual}/VirtualViewModeChangeEvent.kt +1 -1
  757. package/ReactAndroid/src/main/java/com/facebook/react/views/{virtualview → virtual}/VirtualViewRenderState.kt +1 -1
  758. package/ReactAndroid/src/main/java/com/facebook/react/views/{virtualview → virtual/view}/ReactVirtualView.kt +86 -26
  759. package/ReactAndroid/src/main/java/com/facebook/react/views/{virtualview → virtual/view}/ReactVirtualViewManager.kt +13 -8
  760. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +256 -0
  761. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimentalManager.kt +110 -0
  762. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +1 -1
  763. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +2 -1
  764. package/ReactAndroid/src/main/java/com/facebook/yoga/LayoutPassReason.kt +35 -0
  765. package/ReactAndroid/src/main/java/com/facebook/yoga/{YogaBaselineFunction.java → YogaBaselineFunction.kt} +3 -3
  766. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.kt +33 -0
  767. package/ReactAndroid/src/main/java/com/facebook/yoga/{YogaConfigFactory.java → YogaConfigFactory.kt} +3 -5
  768. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.kt +18 -0
  769. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLayoutType.kt +27 -0
  770. package/ReactAndroid/src/main/java/com/facebook/yoga/{YogaLogger.java → YogaLogger.kt} +6 -7
  771. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureFunction.kt +19 -0
  772. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureOutput.kt +29 -0
  773. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.kt +331 -0
  774. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeFactory.kt +14 -0
  775. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaStyleInputs.kt +51 -0
  776. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaValue.kt +66 -0
  777. package/ReactAndroid/src/main/java/com/facebook/yoga/annotations/DoNotStrip.kt +19 -0
  778. package/ReactAndroid/src/main/jni/CMakeLists.txt +8 -3
  779. package/ReactAndroid/src/main/jni/first-party/hermes/CMakeLists.txt +1 -1
  780. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +2 -1
  781. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnection.cpp +1 -1
  782. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocketDelegate.cpp +2 -1
  783. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorNetworkReporter.cpp +207 -0
  784. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorNetworkReporter.h +76 -0
  785. package/ReactAndroid/src/main/jni/react/devsupport/OnLoad.cpp +4 -1
  786. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +1 -1
  787. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  788. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +6 -3
  789. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +2 -2
  790. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +8 -8
  791. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +18 -14
  792. package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +59 -10
  793. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +1 -1
  794. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +8 -7
  795. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +181 -55
  796. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +39 -12
  797. package/ReactAndroid/src/main/jni/react/featureflags/OnLoad.cpp +1 -1
  798. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/CMakeLists.txt +1 -1
  799. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +4 -4
  800. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.h +1 -1
  801. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/OnLoad.cpp +1 -1
  802. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +5 -1
  803. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +8 -3
  804. package/ReactAndroid/src/main/jni/react/hermes/tooling/CMakeLists.txt +1 -1
  805. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -2
  806. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +8 -5
  807. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +7 -3
  808. package/ReactAndroid/src/main/jni/react/jni/JDynamicNative.cpp +2 -2
  809. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.cpp +1 -1
  810. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +3 -1
  811. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +1 -1
  812. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +1 -1
  813. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +4 -1
  814. package/ReactAndroid/src/main/jni/react/jni/JRuntimeExecutor.cpp +3 -1
  815. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp +3 -1
  816. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +4 -4
  817. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +1 -3
  818. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +9 -3
  819. package/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h +2 -1
  820. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +8 -5
  821. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h +4 -2
  822. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +7 -2
  823. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h +8 -3
  824. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +4 -1
  825. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +3 -4
  826. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +1 -1
  827. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +3 -2
  828. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +3 -3
  829. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +2 -2
  830. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.cpp +1 -1
  831. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +3 -2
  832. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +2 -2
  833. package/ReactAndroid/src/main/jni/react/newarchdefaults/OnLoad.cpp +1 -1
  834. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +6 -6
  835. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +1 -1
  836. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  837. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +5 -1
  838. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/OnLoad.cpp +1 -1
  839. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +4 -0
  840. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +84 -13
  841. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +55 -2
  842. package/ReactAndroid/src/main/jni/react/runtime/jni/JavaTimerRegistry.cpp +3 -1
  843. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/OnLoad.cpp +2 -2
  844. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +4 -6
  845. package/ReactAndroid/src/main/jni/react/uimanager/OnLoad.cpp +1 -1
  846. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +4 -1
  847. package/ReactAndroid/src/main/res/views/uimanager/values-am/strings.xml +1 -0
  848. package/ReactCommon/React-Fabric.podspec +1 -0
  849. package/ReactCommon/React-FabricComponents.podspec +6 -0
  850. package/ReactCommon/callinvoker/ReactCommon/tests/TestCallInvoker.h +46 -0
  851. package/ReactCommon/cxxreact/CxxModule.h +2 -2
  852. package/ReactCommon/cxxreact/CxxNativeModule.cpp +3 -2
  853. package/ReactCommon/cxxreact/CxxNativeModule.h +4 -1
  854. package/ReactCommon/cxxreact/Instance.cpp +13 -9
  855. package/ReactCommon/cxxreact/Instance.h +6 -3
  856. package/ReactCommon/cxxreact/JSBigString.cpp +2 -2
  857. package/ReactCommon/cxxreact/JSExecutor.h +6 -3
  858. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +4 -4
  859. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +5 -3
  860. package/ReactCommon/cxxreact/JSModulesUnbundle.h +2 -1
  861. package/ReactCommon/cxxreact/JsArgumentHelpers.h +2 -2
  862. package/ReactCommon/cxxreact/MethodCall.h +4 -2
  863. package/ReactCommon/cxxreact/ModuleRegistry.cpp +3 -1
  864. package/ReactCommon/cxxreact/ModuleRegistry.h +7 -5
  865. package/ReactCommon/cxxreact/NativeModule.h +4 -2
  866. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +5 -2
  867. package/ReactCommon/cxxreact/NativeToJsBridge.h +7 -6
  868. package/ReactCommon/cxxreact/RAMBundleRegistry.h +2 -1
  869. package/ReactCommon/cxxreact/ReactMarker.h +1 -1
  870. package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
  871. package/ReactCommon/cxxreact/TraceSection.h +20 -4
  872. package/ReactCommon/cxxreact/tests/RecoverableErrorTest.cpp +1 -1
  873. package/ReactCommon/cxxreact/tests/jsbigstring.cpp +3 -2
  874. package/ReactCommon/cxxreact/tests/methodcall.cpp +1 -2
  875. package/ReactCommon/hermes/React-hermes.podspec +1 -0
  876. package/ReactCommon/hermes/executor/CMakeLists.txt +5 -1
  877. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +8 -5
  878. package/ReactCommon/hermes/executor/HermesExecutorFactory.h +6 -2
  879. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +5 -1
  880. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +11 -10
  881. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +2 -2
  882. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.cpp +4 -2
  883. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +30 -20
  884. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +2 -2
  885. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +2 -2
  886. package/ReactCommon/jsi/jsi/decorator.h +50 -0
  887. package/ReactCommon/jsi/jsi/jsi-inl.h +31 -0
  888. package/ReactCommon/jsi/jsi/jsi.cpp +58 -0
  889. package/ReactCommon/jsi/jsi/jsi.h +50 -2
  890. package/ReactCommon/jsi/jsi/test/testlib.cpp +113 -1
  891. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -3
  892. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +1 -1
  893. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +3 -1
  894. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.h +2 -1
  895. package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -0
  896. package/ReactCommon/jsinspector-modern/ExecutionContext.h +1 -2
  897. package/ReactCommon/jsinspector-modern/FallbackRuntimeAgentDelegate.cpp +3 -1
  898. package/ReactCommon/jsinspector-modern/HostAgent.cpp +178 -61
  899. package/ReactCommon/jsinspector-modern/HostAgent.h +26 -1
  900. package/ReactCommon/jsinspector-modern/HostTarget.cpp +88 -12
  901. package/ReactCommon/jsinspector-modern/HostTarget.h +85 -0
  902. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +54 -0
  903. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +86 -0
  904. package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +71 -0
  905. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +7 -0
  906. package/ReactCommon/jsinspector-modern/InspectorFlags.h +6 -0
  907. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +16 -16
  908. package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +1 -1
  909. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +23 -17
  910. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +9 -8
  911. package/ReactCommon/jsinspector-modern/InspectorUtilities.cpp +8 -0
  912. package/ReactCommon/jsinspector-modern/InspectorUtilities.h +19 -0
  913. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +36 -14
  914. package/ReactCommon/jsinspector-modern/InstanceAgent.h +24 -17
  915. package/ReactCommon/jsinspector-modern/InstanceTarget.cpp +33 -4
  916. package/ReactCommon/jsinspector-modern/InstanceTarget.h +23 -3
  917. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +14 -6
  918. package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +91 -0
  919. package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +59 -0
  920. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +2 -0
  921. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +37 -54
  922. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +23 -7
  923. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +21 -17
  924. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +19 -11
  925. package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +33 -3
  926. package/ReactCommon/jsinspector-modern/SessionState.h +6 -0
  927. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +55 -56
  928. package/ReactCommon/jsinspector-modern/TracingAgent.h +20 -19
  929. package/ReactCommon/jsinspector-modern/Utf8.h +1 -0
  930. package/ReactCommon/jsinspector-modern/network/HttpUtils.cpp +18 -2
  931. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +4 -4
  932. package/ReactCommon/jsinspector-modern/tests/ConsoleApiTest.cpp +4 -3
  933. package/ReactCommon/jsinspector-modern/tests/ConsoleTimeStampTest.cpp +22 -25
  934. package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.cpp +1 -1
  935. package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.h +1 -1
  936. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +24 -2
  937. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +36 -37
  938. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +58 -10
  939. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.h +2 -2
  940. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -2
  941. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +1 -0
  942. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +0 -2
  943. package/ReactCommon/jsinspector-modern/tracing/ConsoleTimeStamp.h +7 -0
  944. package/ReactCommon/jsinspector-modern/tracing/InstanceTracingProfile.h +2 -11
  945. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +347 -242
  946. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +116 -51
  947. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +37 -111
  948. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +254 -122
  949. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +40 -125
  950. package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +33 -0
  951. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +12 -4
  952. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +4 -62
  953. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +111 -0
  954. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.h +93 -0
  955. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +39 -0
  956. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.cpp +68 -0
  957. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.h +42 -0
  958. package/ReactCommon/jsinspector-modern/tracing/TracingMode.h +17 -0
  959. package/ReactCommon/jsinspector-modern/tracing/TracingState.h +24 -0
  960. package/ReactCommon/jsinspector-modern/tracing/tests/RuntimeSamplingProfileTraceEventSerializerTest.cpp +115 -45
  961. package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -0
  962. package/ReactCommon/jsitooling/react/runtime/JSRuntimeFactoryCAPI.cpp +1 -1
  963. package/ReactCommon/logger/react_native_log.h +7 -7
  964. package/ReactCommon/react/bridging/Class.h +5 -0
  965. package/ReactCommon/react/bridging/tests/BridgingTest.h +13 -26
  966. package/ReactCommon/react/bridging/tests/ClassTest.cpp +14 -8
  967. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +53 -17
  968. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +65 -20
  969. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +273 -111
  970. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +30 -12
  971. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +54 -18
  972. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +115 -34
  973. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +5 -1
  974. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -7
  975. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -6
  976. package/ReactCommon/react/nativemodule/core/ReactCommon/CxxTurboModuleUtils.cpp +4 -1
  977. package/ReactCommon/react/nativemodule/core/ReactCommon/CxxTurboModuleUtils.h +3 -3
  978. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +13 -14
  979. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +4 -3
  980. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  981. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +1 -1
  982. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.cpp +2 -55
  983. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +4 -8
  984. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.cpp +5 -4
  985. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +1 -1
  986. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +11 -11
  987. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -0
  988. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +4 -3
  989. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +53 -18
  990. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +1 -5
  991. package/ReactCommon/react/nativemodule/core/tests/TurboModuleTestFixture.h +135 -0
  992. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
  993. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +8 -0
  994. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
  995. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +41 -35
  996. package/ReactCommon/react/nativemodule/dom/NativeDOM.h +15 -3
  997. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +65 -20
  998. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +27 -9
  999. package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.cpp +1 -1
  1000. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +0 -15
  1001. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +0 -13
  1002. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +2 -2
  1003. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +1 -1
  1004. package/ReactCommon/react/nativemodule/samples/ReactCommon/README.md +2 -0
  1005. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +47 -25
  1006. package/ReactCommon/react/nativemodule/samples/platform/android/SampleLegacyModule.kt +6 -2
  1007. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.kt +6 -2
  1008. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +36 -19
  1009. package/ReactCommon/react/nativemodule/webperformance/CMakeLists.txt +2 -2
  1010. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +51 -58
  1011. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +18 -12
  1012. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +58 -0
  1013. package/ReactCommon/react/performance/cdpmetrics/CMakeLists.txt +23 -0
  1014. package/ReactCommon/react/performance/cdpmetrics/CdpInteractionTypes.cpp +63 -0
  1015. package/ReactCommon/react/performance/cdpmetrics/CdpInteractionTypes.h +22 -0
  1016. package/ReactCommon/react/performance/cdpmetrics/CdpMetricsReporter.cpp +98 -0
  1017. package/ReactCommon/react/performance/cdpmetrics/CdpMetricsReporter.h +37 -0
  1018. package/ReactCommon/react/performance/cdpmetrics/React-performancecdpmetrics.podspec +53 -0
  1019. package/ReactCommon/react/performance/timeline/CMakeLists.txt +2 -1
  1020. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +4 -0
  1021. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +1 -3
  1022. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +104 -70
  1023. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +32 -19
  1024. package/ReactCommon/react/performance/timeline/PerformanceEntryReporterListeners.h +26 -0
  1025. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +19 -30
  1026. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +28 -4
  1027. package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +298 -0
  1028. package/ReactCommon/react/renderer/animated/AnimatedModule.h +214 -0
  1029. package/ReactCommon/react/renderer/animated/CMakeLists.txt +33 -0
  1030. package/ReactCommon/react/renderer/animated/EventEmitterListener.h +72 -0
  1031. package/ReactCommon/react/renderer/animated/MergedValueDispatcher.cpp +46 -0
  1032. package/ReactCommon/react/renderer/animated/MergedValueDispatcher.h +56 -0
  1033. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +917 -0
  1034. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +264 -0
  1035. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +154 -0
  1036. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.h +64 -0
  1037. package/ReactCommon/react/renderer/animated/drivers/AnimationDriver.cpp +102 -0
  1038. package/ReactCommon/react/renderer/animated/drivers/AnimationDriver.h +91 -0
  1039. package/ReactCommon/react/renderer/animated/drivers/AnimationDriverUtils.h +64 -0
  1040. package/ReactCommon/react/renderer/animated/drivers/DecayAnimationDriver.cpp +81 -0
  1041. package/ReactCommon/react/renderer/animated/drivers/DecayAnimationDriver.h +40 -0
  1042. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +113 -0
  1043. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.h +40 -0
  1044. package/ReactCommon/react/renderer/animated/drivers/SpringAnimationDriver.cpp +148 -0
  1045. package/ReactCommon/react/renderer/animated/drivers/SpringAnimationDriver.h +50 -0
  1046. package/ReactCommon/react/renderer/animated/event_drivers/EventAnimationDriver.cpp +28 -0
  1047. package/ReactCommon/react/renderer/animated/event_drivers/EventAnimationDriver.h +63 -0
  1048. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +105 -0
  1049. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.h +42 -0
  1050. package/ReactCommon/react/renderer/animated/internal/NativeAnimatedAllowlist.h +63 -0
  1051. package/ReactCommon/react/renderer/animated/internal/primitives.h +16 -0
  1052. package/ReactCommon/react/renderer/animated/nodes/AdditionAnimatedNode.cpp +30 -0
  1053. package/ReactCommon/react/renderer/animated/nodes/AdditionAnimatedNode.h +29 -0
  1054. package/ReactCommon/react/renderer/animated/nodes/AnimatedNode.cpp +81 -0
  1055. package/ReactCommon/react/renderer/animated/nodes/AnimatedNode.h +109 -0
  1056. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +68 -0
  1057. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.h +38 -0
  1058. package/ReactCommon/react/renderer/animated/nodes/DiffClampAnimatedNode.cpp +37 -0
  1059. package/ReactCommon/react/renderer/animated/nodes/DiffClampAnimatedNode.h +34 -0
  1060. package/ReactCommon/react/renderer/animated/nodes/DivisionAnimatedNode.cpp +37 -0
  1061. package/ReactCommon/react/renderer/animated/nodes/DivisionAnimatedNode.h +29 -0
  1062. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +144 -0
  1063. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +44 -0
  1064. package/ReactCommon/react/renderer/animated/nodes/ModulusAnimatedNode.cpp +33 -0
  1065. package/ReactCommon/react/renderer/animated/nodes/ModulusAnimatedNode.h +32 -0
  1066. package/ReactCommon/react/renderer/animated/nodes/MultiplicationAnimatedNode.cpp +36 -0
  1067. package/ReactCommon/react/renderer/animated/nodes/MultiplicationAnimatedNode.h +29 -0
  1068. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +143 -0
  1069. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +50 -0
  1070. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +38 -0
  1071. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.h +38 -0
  1072. package/ReactCommon/react/renderer/animated/nodes/StyleAnimatedNode.cpp +96 -0
  1073. package/ReactCommon/react/renderer/animated/nodes/StyleAnimatedNode.h +34 -0
  1074. package/ReactCommon/react/renderer/animated/nodes/SubtractionAnimatedNode.cpp +37 -0
  1075. package/ReactCommon/react/renderer/animated/nodes/SubtractionAnimatedNode.h +30 -0
  1076. package/ReactCommon/react/renderer/animated/nodes/TrackingAnimatedNode.cpp +43 -0
  1077. package/ReactCommon/react/renderer/animated/nodes/TrackingAnimatedNode.h +33 -0
  1078. package/ReactCommon/react/renderer/animated/nodes/TransformAnimatedNode.cpp +58 -0
  1079. package/ReactCommon/react/renderer/animated/nodes/TransformAnimatedNode.h +34 -0
  1080. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +101 -0
  1081. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.h +63 -0
  1082. package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +217 -0
  1083. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +61 -0
  1084. package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +53 -0
  1085. package/ReactCommon/react/renderer/animated/tests/EventAnimationDriverTests.cpp +70 -0
  1086. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +1 -1
  1087. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +1 -1
  1088. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +2 -2
  1089. package/ReactCommon/react/renderer/animations/utils.h +1 -1
  1090. package/ReactCommon/react/renderer/attributedstring/conversions.h +0 -1
  1091. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorFactory.h +1 -1
  1092. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +2 -2
  1093. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -3
  1094. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +50 -0
  1095. package/ReactCommon/react/renderer/components/image/ImageProps.h +4 -0
  1096. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -12
  1097. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +2 -2
  1098. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryComponentDescriptor.h +3 -2
  1099. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +1 -1
  1100. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.cpp +48 -0
  1101. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +10 -0
  1102. package/ReactCommon/react/renderer/components/modal/ModalHostViewUtils.mm +1 -1
  1103. package/ReactCommon/react/renderer/components/modal/platform/android/ModalHostViewUtils.cpp +1 -2
  1104. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.h +2 -2
  1105. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +1 -0
  1106. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewShadowNode.cpp +2 -1
  1107. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewShadowNode.h +1 -0
  1108. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.cpp +1 -1
  1109. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +6 -3
  1110. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +8 -0
  1111. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.h +2 -2
  1112. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.cpp +1 -0
  1113. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +1 -0
  1114. package/ReactCommon/react/renderer/components/text/{ParagraphProps.cpp → BaseParagraphProps.cpp} +8 -96
  1115. package/ReactCommon/react/renderer/components/text/BaseParagraphProps.h +62 -0
  1116. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +2 -49
  1117. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
  1118. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +198 -0
  1119. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.h +59 -0
  1120. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.cpp +1 -1
  1121. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/conversions.h +52 -0
  1122. package/ReactCommon/react/{nativemodule/core/ReactCommon/LongLivedObject.h → renderer/components/text/platform/android/react/renderer/components/text/primitives.h} +11 -2
  1123. package/ReactCommon/react/renderer/components/text/platform/cxx/react/renderer/components/text/HostPlatformParagraphProps.h +14 -0
  1124. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +5 -9
  1125. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +1 -0
  1126. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewShadowNode.cpp +1 -0
  1127. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +26 -1
  1128. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +14 -2
  1129. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +1 -8
  1130. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +1 -0
  1131. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -0
  1132. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +1 -1
  1133. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +1 -40
  1134. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalComponentDescriptor.h +20 -0
  1135. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalShadowNode.h +39 -0
  1136. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +1 -1
  1137. package/ReactCommon/react/renderer/core/ConcreteState.h +13 -6
  1138. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +1 -1
  1139. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +1 -1
  1140. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +4 -2
  1141. package/ReactCommon/react/renderer/core/EventDispatcher.h +3 -1
  1142. package/ReactCommon/react/renderer/core/EventQueue.cpp +9 -9
  1143. package/ReactCommon/react/renderer/core/EventQueue.h +15 -1
  1144. package/ReactCommon/react/renderer/core/RawProps.cpp +1 -2
  1145. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  1146. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +1 -1
  1147. package/ReactCommon/react/renderer/core/RawValue.h +6 -22
  1148. package/ReactCommon/react/renderer/core/ShadowNode.cpp +2 -1
  1149. package/ReactCommon/react/renderer/core/ShadowNode.h +7 -3
  1150. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +4 -2
  1151. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +3 -1
  1152. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +2 -2
  1153. package/ReactCommon/react/renderer/core/tests/RawValueTest.cpp +26 -0
  1154. package/ReactCommon/react/renderer/css/CSSHexColor.h +2 -2
  1155. package/ReactCommon/react/renderer/css/tests/CSSSyntaxParserTest.cpp +3 -3
  1156. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +16 -0
  1157. package/ReactCommon/react/renderer/dom/DOM.cpp +17 -0
  1158. package/ReactCommon/react/renderer/dom/DOM.h +4 -0
  1159. package/ReactCommon/react/renderer/element/testUtils.h +1 -1
  1160. package/ReactCommon/react/renderer/graphics/BoxShadow.h +20 -0
  1161. package/ReactCommon/react/renderer/graphics/Color.cpp +4 -4
  1162. package/ReactCommon/react/renderer/graphics/Color.h +4 -5
  1163. package/ReactCommon/react/renderer/graphics/Filter.h +47 -16
  1164. package/ReactCommon/react/renderer/graphics/Transform.cpp +24 -21
  1165. package/ReactCommon/react/renderer/graphics/Transform.h +21 -20
  1166. package/ReactCommon/react/renderer/graphics/ValueUnit.h +1 -1
  1167. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/HostPlatformColor.h +5 -5
  1168. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +1 -1
  1169. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/HostPlatformColor.h +1 -1
  1170. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +12 -12
  1171. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +13 -12
  1172. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/PlatformColorParser.mm +4 -4
  1173. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +1 -1
  1174. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +6 -8
  1175. package/ReactCommon/react/renderer/imagemanager/ImageResponse.h +1 -0
  1176. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +15 -1
  1177. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +5 -0
  1178. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +59 -20
  1179. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +25 -12
  1180. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +17 -8
  1181. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +7 -0
  1182. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +50 -44
  1183. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +1 -7
  1184. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageManager.mm +1 -6
  1185. package/ReactCommon/react/renderer/imagemanager/primitives.h +69 -7
  1186. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +9 -0
  1187. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +6 -10
  1188. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +14 -1
  1189. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +8 -1
  1190. package/ReactCommon/react/renderer/mounting/stubs/StubView.cpp +1 -0
  1191. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +3 -2
  1192. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +4 -4
  1193. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +8 -38
  1194. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +6 -39
  1195. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +8 -34
  1196. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +3 -3
  1197. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +10 -6
  1198. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.h +2 -0
  1199. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +1 -1
  1200. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +3 -5
  1201. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +4 -4
  1202. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerEventTimingDelegate.h +2 -0
  1203. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +3 -3
  1204. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +1 -1
  1205. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +6 -4
  1206. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +3 -3
  1207. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
  1208. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +47 -5
  1209. package/ReactCommon/react/renderer/scheduler/Scheduler.h +4 -3
  1210. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +1 -1
  1211. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +1 -1
  1212. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +2 -2
  1213. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +48 -9
  1214. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +2 -1
  1215. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.cpp +1 -1
  1216. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.h +2 -1
  1217. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +41 -34
  1218. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +2 -1
  1219. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +29 -24
  1220. package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.cpp +2 -2
  1221. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +2 -2
  1222. package/ReactCommon/react/renderer/uimanager/UIManager.h +3 -4
  1223. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +11 -0
  1224. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +7 -6
  1225. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +2 -2
  1226. package/ReactCommon/react/renderer/uimanager/primitives.h +2 -1
  1227. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +5 -7
  1228. package/ReactCommon/react/runtime/BridgelessNativeMethodCallInvoker.cpp +2 -2
  1229. package/ReactCommon/react/runtime/BufferedRuntimeExecutor.cpp +3 -5
  1230. package/ReactCommon/react/runtime/CMakeLists.txt +4 -0
  1231. package/ReactCommon/react/runtime/ReactInstance.cpp +18 -10
  1232. package/ReactCommon/react/runtime/ReactInstance.h +1 -2
  1233. package/ReactCommon/react/runtime/TimerManager.cpp +10 -10
  1234. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +5 -1
  1235. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +7 -3
  1236. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +1 -1
  1237. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.h +2 -4
  1238. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.mm +2 -4
  1239. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +12 -11
  1240. package/ReactCommon/react/test_utils/MockClock.h +2 -3
  1241. package/ReactCommon/react/timing/CMakeLists.txt +2 -0
  1242. package/ReactCommon/react/timing/primitives.h +44 -4
  1243. package/ReactCommon/react/utils/ContextContainer.h +3 -2
  1244. package/ReactCommon/react/utils/SimpleThreadSafeCache.h +36 -17
  1245. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +2 -2
  1246. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +1 -1
  1247. package/ReactCommon/reactperflogger/reactperflogger/FuseboxPerfettoDataSource.cpp +6 -2
  1248. package/ReactCommon/reactperflogger/reactperflogger/HermesPerfettoDataSource.cpp +1 -3
  1249. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp +3 -5
  1250. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoCategories.cpp +2 -1
  1251. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoCategories.h +2 -1
  1252. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +32 -8
  1253. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.h +5 -3
  1254. package/ReactCommon/yoga/yoga/Yoga.h +8 -8
  1255. package/cli.js +1 -1
  1256. package/flow/bom.js.flow +223 -1
  1257. package/flow/prettier.js.flow +14 -0
  1258. package/gradle/libs.versions.toml +5 -3
  1259. package/index.js +14 -2
  1260. package/index.js.flow +4 -0
  1261. package/jest/local-setup.js +2 -2
  1262. package/jest/mock.js +1 -1
  1263. package/jest/mockComponent.js +9 -9
  1264. package/jest/mockNativeComponent.js +3 -2
  1265. package/jest/mocks/Modal.js +1 -1
  1266. package/jest/mocks/ScrollView.js +1 -1
  1267. package/jest/mocks/ViewNativeComponent.js +1 -1
  1268. package/jest/setup.js +23 -12
  1269. package/package.json +12 -11
  1270. package/react-native.config.js +1 -1
  1271. package/scripts/cocoapods/codegen.rb +1 -1
  1272. package/scripts/cocoapods/jsengine.rb +2 -1
  1273. package/scripts/cocoapods/new_architecture.rb +8 -4
  1274. package/scripts/cocoapods/utils.rb +8 -2
  1275. package/scripts/codegen/codegen-utils.js +4 -4
  1276. package/scripts/codegen/generate-artifacts-executor/constants.js +29 -29
  1277. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +1 -1
  1278. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
  1279. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +2 -2
  1280. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
  1281. package/scripts/codegen/generate-artifacts-executor/utils.js +23 -3
  1282. package/scripts/codegen/generate-specs-cli-executor.js +18 -15
  1283. package/scripts/generate-provider-cli.js +5 -5
  1284. package/scripts/hermes/hermes-utils.js +12 -6
  1285. package/scripts/react_native_pods.rb +29 -8
  1286. package/sdks/.hermesversion +1 -1
  1287. package/sdks/hermes-engine/hermes-engine.podspec +47 -24
  1288. package/sdks/hermes-engine/hermes-utils.rb +42 -11
  1289. package/sdks/hermes-engine/utils/build-apple-framework.sh +21 -15
  1290. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +11 -4
  1291. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +1 -1
  1292. package/sdks/hermes-engine/utils/build-ios-framework.sh +3 -3
  1293. package/sdks/hermes-engine/utils/build-mac-framework.sh +1 -1
  1294. package/sdks/hermes-engine/utils/create-dummy-hermes-xcframework.sh +5 -5
  1295. package/sdks/hermes-engine/version.properties +1 -0
  1296. package/sdks/hermesc/osx-bin/hermes +0 -0
  1297. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1298. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1299. package/settings.gradle.kts +32 -0
  1300. package/src/private/animated/NativeAnimatedHelper.js +16 -5
  1301. package/src/private/animated/createAnimatedPropsHook.js +11 -60
  1302. package/src/private/animated/createAnimatedPropsMemoHook.js +8 -54
  1303. package/src/private/components/virtualview/VirtualView.js +43 -12
  1304. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
  1305. package/src/private/components/virtualview/VirtualViewNativeComponent.js +6 -0
  1306. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +2 -2
  1307. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -2
  1308. package/src/private/featureflags/ReactNativeFeatureFlags.js +85 -52
  1309. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
  1310. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -6
  1311. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  1312. package/src/private/setup/{setUpPerformanceObserver.js → setUpPerformanceModern.js} +43 -18
  1313. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -0
  1314. package/src/private/types/HostInstance.js +4 -1
  1315. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +22 -2
  1316. package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
  1317. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +5 -3
  1318. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +16 -13
  1319. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +45 -22
  1320. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  1321. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +26 -192
  1322. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -12
  1323. package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -11
  1324. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  1325. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +19 -74
  1326. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -4
  1327. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  1328. package/src/private/webapis/performance/EventTiming.js +40 -25
  1329. package/src/private/webapis/performance/LongTasks.js +35 -2
  1330. package/src/private/webapis/performance/Performance.js +347 -166
  1331. package/src/private/webapis/performance/PerformanceEntry.js +40 -23
  1332. package/src/private/webapis/performance/PerformanceObserver.js +37 -29
  1333. package/src/private/webapis/performance/ReactNativeStartupTiming.js +3 -24
  1334. package/src/private/webapis/performance/ResourceTiming.js +29 -18
  1335. package/src/private/webapis/performance/UserTiming.js +92 -34
  1336. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  1337. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -4
  1338. package/src/private/webapis/performance/internals/Utilities.js +9 -0
  1339. package/src/private/webapis/performance/specs/NativePerformance.js +23 -23
  1340. package/src/private/webapis/structuredClone/structuredClone.js +10 -10
  1341. package/third-party-podspecs/ReactNativeDependencies.podspec +1 -1
  1342. package/types/public/ReactNativeTVTypes.d.ts +1 -43
  1343. package/Libraries/Interaction/InteractionManagerStub.js +0 -184
  1344. package/Libraries/Interaction/TaskQueue.js +0 -183
  1345. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -31
  1346. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.h +0 -28
  1347. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.mm +0 -83
  1348. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +0 -19
  1349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +0 -423
  1350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.kt +0 -78
  1351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.kt +0 -115
  1352. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +0 -28
  1353. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +0 -29
  1354. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.kt +0 -133
  1355. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +0 -1049
  1356. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +0 -30
  1357. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +0 -22
  1358. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewShadowNode.kt +0 -15
  1359. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +0 -669
  1360. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +0 -811
  1361. package/ReactAndroid/src/main/java/com/facebook/yoga/LayoutPassReason.java +0 -43
  1362. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java +0 -29
  1363. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConstants.java +0 -25
  1364. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLayoutType.java +0 -35
  1365. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureFunction.java +0 -20
  1366. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureOutput.java +0 -32
  1367. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +0 -141
  1368. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeFactory.java +0 -18
  1369. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaStyleInputs.java +0 -51
  1370. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaValue.java +0 -80
  1371. package/ReactAndroid/src/main/java/com/facebook/yoga/annotations/DoNotStrip.java +0 -18
  1372. package/ReactAndroid/src/main/jni/react/jni/CxxSharedModuleWrapper.h +0 -37
  1373. package/ReactAndroid/src/main/jni/react/jni/JInspector.cpp +0 -112
  1374. package/ReactAndroid/src/main/jni/react/jni/JInspector.h +0 -77
  1375. package/ReactCommon/cxxreact/SharedProxyCxxModule.h +0 -40
  1376. package/ReactCommon/jsinspector-modern/tracing/CdpTracing.h +0 -21
  1377. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.cpp +0 -151
  1378. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.h +0 -42
  1379. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.cpp +0 -96
  1380. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.h +0 -43
  1381. package/ReactCommon/react/renderer/components/modal/platform/android/JReactModalHostView.h +0 -38
  1382. package/types_generated/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +0 -101
  1383. package/types_generated/Libraries/Alert/Alert.d.ts +0 -55
  1384. package/types_generated/Libraries/Animated/Animated.d.ts +0 -14
  1385. package/types_generated/Libraries/Animated/AnimatedEvent.d.ts +0 -30
  1386. package/types_generated/Libraries/Animated/AnimatedExports.d.ts +0 -190
  1387. package/types_generated/Libraries/Animated/AnimatedImplementation.d.ts +0 -128
  1388. package/types_generated/Libraries/Animated/AnimatedPlatformConfig.d.ts +0 -13
  1389. package/types_generated/Libraries/Animated/Easing.d.ts +0 -171
  1390. package/types_generated/Libraries/Animated/animations/Animation.d.ts +0 -35
  1391. package/types_generated/Libraries/Animated/animations/DecayAnimation.d.ts +0 -42
  1392. package/types_generated/Libraries/Animated/animations/SpringAnimation.d.ts +0 -130
  1393. package/types_generated/Libraries/Animated/animations/TimingAnimation.d.ts +0 -54
  1394. package/types_generated/Libraries/Animated/components/AnimatedFlatList.d.ts +0 -22
  1395. package/types_generated/Libraries/Animated/components/AnimatedImage.d.ts +0 -18
  1396. package/types_generated/Libraries/Animated/components/AnimatedScrollView.d.ts +0 -23
  1397. package/types_generated/Libraries/Animated/components/AnimatedSectionList.d.ts +0 -22
  1398. package/types_generated/Libraries/Animated/components/AnimatedText.d.ts +0 -18
  1399. package/types_generated/Libraries/Animated/components/AnimatedView.d.ts +0 -19
  1400. package/types_generated/Libraries/Animated/createAnimatedComponent.d.ts +0 -42
  1401. package/types_generated/Libraries/Animated/nodes/AnimatedAddition.d.ts +0 -22
  1402. package/types_generated/Libraries/Animated/nodes/AnimatedColor.d.ts +0 -76
  1403. package/types_generated/Libraries/Animated/nodes/AnimatedDiffClamp.d.ts +0 -22
  1404. package/types_generated/Libraries/Animated/nodes/AnimatedDivision.d.ts +0 -22
  1405. package/types_generated/Libraries/Animated/nodes/AnimatedInterpolation.d.ts +0 -36
  1406. package/types_generated/Libraries/Animated/nodes/AnimatedModulo.d.ts +0 -22
  1407. package/types_generated/Libraries/Animated/nodes/AnimatedMultiplication.d.ts +0 -22
  1408. package/types_generated/Libraries/Animated/nodes/AnimatedNode.d.ts +0 -46
  1409. package/types_generated/Libraries/Animated/nodes/AnimatedProps.d.ts +0 -29
  1410. package/types_generated/Libraries/Animated/nodes/AnimatedStyle.d.ts +0 -32
  1411. package/types_generated/Libraries/Animated/nodes/AnimatedSubtraction.d.ts +0 -22
  1412. package/types_generated/Libraries/Animated/nodes/AnimatedTracking.d.ts +0 -21
  1413. package/types_generated/Libraries/Animated/nodes/AnimatedValue.d.ts +0 -126
  1414. package/types_generated/Libraries/Animated/nodes/AnimatedValueXY.d.ts +0 -135
  1415. package/types_generated/Libraries/Animated/nodes/AnimatedWithChildren.d.ts +0 -15
  1416. package/types_generated/Libraries/Animated/useAnimatedValue.d.ts +0 -15
  1417. package/types_generated/Libraries/AppState/AppState.d.ts +0 -63
  1418. package/types_generated/Libraries/BatchedBridge/BatchedBridge.d.ts +0 -17
  1419. package/types_generated/Libraries/BatchedBridge/MessageQueue.d.ts +0 -39
  1420. package/types_generated/Libraries/BatchedBridge/NativeModules.d.ts +0 -20
  1421. package/types_generated/Libraries/Blob/Blob.d.ts +0 -80
  1422. package/types_generated/Libraries/Blob/BlobTypes.d.ts +0 -27
  1423. package/types_generated/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +0 -220
  1424. package/types_generated/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.d.ts +0 -20
  1425. package/types_generated/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +0 -84
  1426. package/types_generated/Libraries/Components/Button.d.ts +0 -251
  1427. package/types_generated/Libraries/Components/Clipboard/Clipboard.d.ts +0 -38
  1428. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +0 -17
  1429. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.d.ts +0 -27
  1430. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.d.ts +0 -176
  1431. package/types_generated/Libraries/Components/Keyboard/Keyboard.d.ts +0 -146
  1432. package/types_generated/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +0 -73
  1433. package/types_generated/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +0 -24
  1434. package/types_generated/Libraries/Components/Pressable/Pressable.d.ts +0 -141
  1435. package/types_generated/Libraries/Components/Pressable/useAndroidRippleForView.d.ts +0 -45
  1436. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +0 -32
  1437. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.d.ts +0 -14
  1438. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.d.ts +0 -50
  1439. package/types_generated/Libraries/Components/RefreshControl/RefreshControl.d.ts +0 -113
  1440. package/types_generated/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +0 -33
  1441. package/types_generated/Libraries/Components/ScrollView/ScrollView.d.ts +0 -560
  1442. package/types_generated/Libraries/Components/ScrollView/ScrollViewContext.d.ts +0 -24
  1443. package/types_generated/Libraries/Components/ScrollView/ScrollViewNativeComponent.d.ts +0 -21
  1444. package/types_generated/Libraries/Components/ScrollView/ScrollViewNativeComponentType.d.ts +0 -134
  1445. package/types_generated/Libraries/Components/ScrollView/ScrollViewStickyHeader.d.ts +0 -36
  1446. package/types_generated/Libraries/Components/StatusBar/StatusBar.d.ts +0 -222
  1447. package/types_generated/Libraries/Components/Switch/AndroidSwitchNativeComponent.d.ts +0 -14
  1448. package/types_generated/Libraries/Components/Switch/Switch.d.ts +0 -138
  1449. package/types_generated/Libraries/Components/Switch/SwitchNativeComponent.d.ts +0 -14
  1450. package/types_generated/Libraries/Components/TV/TVEventControl.d.ts +0 -23
  1451. package/types_generated/Libraries/Components/TV/TVEventHandler.d.ts +0 -21
  1452. package/types_generated/Libraries/Components/TV/TVFocusGuideView.d.ts +0 -71
  1453. package/types_generated/Libraries/Components/TV/TVTextScrollView.d.ts +0 -97
  1454. package/types_generated/Libraries/Components/TV/TVViewPropTypes.d.ts +0 -79
  1455. package/types_generated/Libraries/Components/TV/tagForComponentOrHandle.d.ts +0 -24
  1456. package/types_generated/Libraries/Components/TV/useTVEventHandler.d.ts +0 -20
  1457. package/types_generated/Libraries/Components/TextInput/InputAccessoryView.d.ts +0 -86
  1458. package/types_generated/Libraries/Components/TextInput/TextInput.d.ts +0 -47
  1459. package/types_generated/Libraries/Components/TextInput/TextInput.flow.d.ts +0 -984
  1460. package/types_generated/Libraries/Components/TextInput/TextInputState.d.ts +0 -54
  1461. package/types_generated/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +0 -99
  1462. package/types_generated/Libraries/Components/Touchable/Touchable.d.ts +0 -257
  1463. package/types_generated/Libraries/Components/Touchable/TouchableHighlight.d.ts +0 -71
  1464. package/types_generated/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +0 -228
  1465. package/types_generated/Libraries/Components/Touchable/TouchableOpacity.d.ts +0 -76
  1466. package/types_generated/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +0 -121
  1467. package/types_generated/Libraries/Components/View/View.d.ts +0 -30
  1468. package/types_generated/Libraries/Components/View/ViewAccessibility.d.ts +0 -415
  1469. package/types_generated/Libraries/Components/View/ViewNativeComponent.d.ts +0 -29
  1470. package/types_generated/Libraries/Components/View/ViewPropTypes.d.ts +0 -431
  1471. package/types_generated/Libraries/Core/Devtools/symbolicateStackTrace.d.ts +0 -27
  1472. package/types_generated/Libraries/Core/ExceptionsManager.d.ts +0 -43
  1473. package/types_generated/Libraries/Core/ExtendedError.d.ts +0 -26
  1474. package/types_generated/Libraries/Core/NativeExceptionsManager.d.ts +0 -17
  1475. package/types_generated/Libraries/Core/RawEventEmitter.d.ts +0 -26
  1476. package/types_generated/Libraries/Core/ReactFiberErrorDialog.d.ts +0 -27
  1477. package/types_generated/Libraries/Core/registerCallableModule.d.ts +0 -18
  1478. package/types_generated/Libraries/EventEmitter/NativeEventEmitter.d.ts +0 -42
  1479. package/types_generated/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +0 -19
  1480. package/types_generated/Libraries/EventEmitter/RCTEventEmitter.d.ts +0 -18
  1481. package/types_generated/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +0 -21
  1482. package/types_generated/Libraries/Image/AssetSourceResolver.d.ts +0 -71
  1483. package/types_generated/Libraries/Image/Image.d.ts +0 -18
  1484. package/types_generated/Libraries/Image/ImageBackground.d.ts +0 -44
  1485. package/types_generated/Libraries/Image/ImageProps.d.ts +0 -512
  1486. package/types_generated/Libraries/Image/ImageResizeMode.d.ts +0 -17
  1487. package/types_generated/Libraries/Image/ImageSource.d.ts +0 -94
  1488. package/types_generated/Libraries/Image/ImageTypes.flow.d.ts +0 -64
  1489. package/types_generated/Libraries/Image/ImageViewNativeComponent.d.ts +0 -68
  1490. package/types_generated/Libraries/Image/TextInlineImageNativeComponent.d.ts +0 -42
  1491. package/types_generated/Libraries/Interaction/InteractionManager.d.ts +0 -100
  1492. package/types_generated/Libraries/Interaction/PanResponder.d.ts +0 -231
  1493. package/types_generated/Libraries/Interaction/TaskQueue.d.ts +0 -73
  1494. package/types_generated/Libraries/LayoutAnimation/LayoutAnimation.d.ts +0 -76
  1495. package/types_generated/Libraries/Linking/Linking.d.ts +0 -68
  1496. package/types_generated/Libraries/Lists/FlatList.d.ts +0 -317
  1497. package/types_generated/Libraries/Lists/SectionList.d.ts +0 -172
  1498. package/types_generated/Libraries/Lists/VirtualizedList.d.ts +0 -19
  1499. package/types_generated/Libraries/Lists/VirtualizedSectionList.d.ts +0 -19
  1500. package/types_generated/Libraries/LogBox/Data/LogBoxData.d.ts +0 -78
  1501. package/types_generated/Libraries/LogBox/Data/LogBoxLog.d.ts +0 -88
  1502. package/types_generated/Libraries/LogBox/Data/LogBoxSymbolication.d.ts +0 -17
  1503. package/types_generated/Libraries/LogBox/Data/parseLogBoxLog.d.ts +0 -53
  1504. package/types_generated/Libraries/LogBox/LogBox.d.ts +0 -29
  1505. package/types_generated/Libraries/Modal/Modal.d.ts +0 -110
  1506. package/types_generated/Libraries/NativeModules/specs/NativeDialogManagerAndroid.d.ts +0 -17
  1507. package/types_generated/Libraries/Network/FormData.d.ts +0 -56
  1508. package/types_generated/Libraries/Network/RCTNetworking.d.ts +0 -25
  1509. package/types_generated/Libraries/Network/RCTNetworkingEventDefinitions.flow.d.ts +0 -22
  1510. package/types_generated/Libraries/Network/XMLHttpRequest.d.ts +0 -96
  1511. package/types_generated/Libraries/Network/convertRequestBody.d.ts +0 -21
  1512. package/types_generated/Libraries/Performance/Systrace.d.ts +0 -61
  1513. package/types_generated/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +0 -129
  1514. package/types_generated/Libraries/Pressability/Pressability.d.ts +0 -241
  1515. package/types_generated/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +0 -323
  1516. package/types_generated/Libraries/ReactNative/AppRegistry.d.ts +0 -14
  1517. package/types_generated/Libraries/ReactNative/AppRegistry.flow.d.ts +0 -44
  1518. package/types_generated/Libraries/ReactNative/AppRegistryImpl.d.ts +0 -73
  1519. package/types_generated/Libraries/ReactNative/DisplayMode.d.ts +0 -24
  1520. package/types_generated/Libraries/ReactNative/I18nManager.d.ts +0 -23
  1521. package/types_generated/Libraries/ReactNative/NativeI18nManager.d.ts +0 -17
  1522. package/types_generated/Libraries/ReactNative/NativeUIManager.d.ts +0 -17
  1523. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.d.ts +0 -28
  1524. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.d.ts +0 -32
  1525. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.d.ts +0 -15
  1526. package/types_generated/Libraries/ReactNative/RendererImplementation.d.ts +0 -37
  1527. package/types_generated/Libraries/ReactNative/RendererProxy.d.ts +0 -28
  1528. package/types_generated/Libraries/ReactNative/RootTag.d.ts +0 -22
  1529. package/types_generated/Libraries/ReactNative/UIManager.d.ts +0 -17
  1530. package/types_generated/Libraries/ReactNative/requireNativeComponent.d.ts +0 -25
  1531. package/types_generated/Libraries/ReactPrivate/ReactNativePrivateInterface.d.ts +0 -33
  1532. package/types_generated/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -169
  1533. package/types_generated/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.d.ts +0 -41
  1534. package/types_generated/Libraries/Settings/Settings.d.ts +0 -21
  1535. package/types_generated/Libraries/Share/Share.d.ts +0 -85
  1536. package/types_generated/Libraries/StyleSheet/EdgeInsetsPropType.d.ts +0 -15
  1537. package/types_generated/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +0 -17
  1538. package/types_generated/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +0 -27
  1539. package/types_generated/Libraries/StyleSheet/PointPropType.d.ts +0 -16
  1540. package/types_generated/Libraries/StyleSheet/Rect.d.ts +0 -22
  1541. package/types_generated/Libraries/StyleSheet/StyleSheet.d.ts +0 -153
  1542. package/types_generated/Libraries/StyleSheet/StyleSheetExports.d.ts +0 -107
  1543. package/types_generated/Libraries/StyleSheet/StyleSheetTypes.d.ts +0 -826
  1544. package/types_generated/Libraries/StyleSheet/flattenStyle.d.ts +0 -19
  1545. package/types_generated/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.d.ts +0 -17
  1546. package/types_generated/Libraries/StyleSheet/private/_TransformStyle.d.ts +0 -76
  1547. package/types_generated/Libraries/StyleSheet/processColor.d.ts +0 -18
  1548. package/types_generated/Libraries/Text/Text.d.ts +0 -30
  1549. package/types_generated/Libraries/Text/TextAncestorContext.d.ts +0 -20
  1550. package/types_generated/Libraries/Text/TextNativeComponent.d.ts +0 -31
  1551. package/types_generated/Libraries/Text/TextProps.d.ts +0 -220
  1552. package/types_generated/Libraries/TurboModule/RCTExport.d.ts +0 -35
  1553. package/types_generated/Libraries/TurboModule/TurboModuleRegistry.d.ts +0 -15
  1554. package/types_generated/Libraries/Types/CodegenTypes.d.ts +0 -24
  1555. package/types_generated/Libraries/Types/CodegenTypesNamespace.d.ts +0 -14
  1556. package/types_generated/Libraries/Types/CoreEventTypes.d.ts +0 -327
  1557. package/types_generated/Libraries/Types/RootTagTypes.d.ts +0 -13
  1558. package/types_generated/Libraries/Types/UIManagerJSInterface.d.ts +0 -17
  1559. package/types_generated/Libraries/UTFSequence.d.ts +0 -39
  1560. package/types_generated/Libraries/Utilities/Appearance.d.ts +0 -31
  1561. package/types_generated/Libraries/Utilities/BackHandler.d.ts +0 -23
  1562. package/types_generated/Libraries/Utilities/DevSettings.d.ts +0 -34
  1563. package/types_generated/Libraries/Utilities/DeviceInfo.d.ts +0 -17
  1564. package/types_generated/Libraries/Utilities/Dimensions.d.ts +0 -54
  1565. package/types_generated/Libraries/Utilities/IPerformanceLogger.d.ts +0 -51
  1566. package/types_generated/Libraries/Utilities/NativeAppearance.d.ts +0 -17
  1567. package/types_generated/Libraries/Utilities/NativeDeviceInfo.d.ts +0 -14
  1568. package/types_generated/Libraries/Utilities/PixelRatio.d.ts +0 -110
  1569. package/types_generated/Libraries/Utilities/Platform.d.ts +0 -16
  1570. package/types_generated/Libraries/Utilities/PlatformTypes.d.ts +0 -134
  1571. package/types_generated/Libraries/Utilities/codegenNativeCommands.d.ts +0 -19
  1572. package/types_generated/Libraries/Utilities/codegenNativeComponent.d.ts +0 -24
  1573. package/types_generated/Libraries/Utilities/createPerformanceLogger.d.ts +0 -23
  1574. package/types_generated/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.d.ts +0 -33
  1575. package/types_generated/Libraries/Utilities/differ/deepDiffer.d.ts +0 -19
  1576. package/types_generated/Libraries/Utilities/useColorScheme.d.ts +0 -15
  1577. package/types_generated/Libraries/Utilities/useWindowDimensions.d.ts +0 -15
  1578. package/types_generated/Libraries/Vibration/Vibration.d.ts +0 -29
  1579. package/types_generated/Libraries/vendor/core/ErrorUtils.d.ts +0 -39
  1580. package/types_generated/Libraries/vendor/emitter/EventEmitter.d.ts +0 -67
  1581. package/types_generated/index.d.ts +0 -164
  1582. package/types_generated/src/private/components/virtualview/VirtualView.d.ts +0 -70
  1583. package/types_generated/src/private/components/virtualview/VirtualViewNativeComponent.d.ts +0 -97
  1584. package/types_generated/src/private/devsupport/devmenu/DevMenu.d.ts +0 -28
  1585. package/types_generated/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.d.ts +0 -53
  1586. package/types_generated/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.d.ts +0 -36
  1587. package/types_generated/src/private/specs_DEPRECATED/components/SwitchNativeComponent.d.ts +0 -51
  1588. package/types_generated/src/private/specs_DEPRECATED/modules/NativeAppearance.d.ts +0 -26
  1589. package/types_generated/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.d.ts +0 -46
  1590. package/types_generated/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.d.ts +0 -37
  1591. package/types_generated/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.d.ts +0 -45
  1592. package/types_generated/src/private/specs_DEPRECATED/modules/NativeI18nManager.d.ts +0 -27
  1593. package/types_generated/src/private/specs_DEPRECATED/modules/NativeUIManager.d.ts +0 -109
  1594. package/types_generated/src/private/styles/composeStyles.d.ts +0 -19
  1595. package/types_generated/src/private/types/HostComponent.d.ts +0 -19
  1596. package/types_generated/src/private/types/HostInstance.d.ts +0 -91
  1597. package/types_generated/src/private/webapis/dom/events/CustomEvent.d.ts +0 -27
  1598. package/types_generated/src/private/webapis/dom/events/Event.d.ts +0 -58
  1599. package/types_generated/src/private/webapis/dom/events/EventTarget.d.ts +0 -48
  1600. package/types_generated/src/private/webapis/dom/nodes/ReactNativeDocument.d.ts +0 -32
  1601. package/types_generated/src/private/webapis/dom/nodes/ReactNativeElement.d.ts +0 -36
  1602. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyCharacterData.d.ts +0 -30
  1603. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyElement.d.ts +0 -54
  1604. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyNode.d.ts +0 -126
  1605. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyText.d.ts +0 -24
  1606. package/types_generated/src/private/webapis/dom/nodes/internals/NodeInternals.d.ts +0 -29
  1607. package/types_generated/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.d.ts +0 -23
  1608. package/types_generated/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.d.ts +0 -22
  1609. package/types_generated/src/private/webapis/dom/nodes/specs/NativeDOM.d.ts +0 -222
  1610. package/types_generated/src/private/webapis/dom/oldstylecollections/HTMLCollection.d.ts +0 -22
  1611. package/types_generated/src/private/webapis/dom/oldstylecollections/NodeList.d.ts +0 -25
  1612. package/types_generated/src/private/webapis/geometry/DOMRect.d.ts +0 -46
  1613. package/types_generated/src/private/webapis/geometry/DOMRectReadOnly.d.ts +0 -73
  1614. package/types_generated/src/private/webapis/utils/ArrayLikeUtils.d.ts +0 -27
  1615. package/types_generated/tsconfig.json +0 -3
  1616. package/types_generated/tsconfig.test.json +0 -16
  1617. /package/ReactCommon/react/renderer/components/text/{conversions.h → stateConversions.h} +0 -0
@@ -1,1049 +0,0 @@
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
- package com.facebook.react.uimanager;
9
-
10
- import android.content.Context;
11
- import android.graphics.Rect;
12
- import android.os.Bundle;
13
- import android.os.Handler;
14
- import android.os.Message;
15
- import android.text.TextUtils;
16
- import android.view.View;
17
- import android.view.ViewGroup;
18
- import android.view.accessibility.AccessibilityEvent;
19
- import android.widget.EditText;
20
- import androidx.annotation.NonNull;
21
- import androidx.annotation.Nullable;
22
- import androidx.core.view.ViewCompat;
23
- import androidx.core.view.accessibility.AccessibilityNodeInfoCompat;
24
- import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat;
25
- import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.RangeInfoCompat;
26
- import androidx.core.view.accessibility.AccessibilityNodeProviderCompat;
27
- import androidx.customview.widget.ExploreByTouchHelper;
28
- import com.facebook.react.R;
29
- import com.facebook.react.bridge.Arguments;
30
- import com.facebook.react.bridge.Dynamic;
31
- import com.facebook.react.bridge.ReactContext;
32
- import com.facebook.react.bridge.ReactNoCrashSoftException;
33
- import com.facebook.react.bridge.ReactSoftExceptionLogger;
34
- import com.facebook.react.bridge.ReadableArray;
35
- import com.facebook.react.bridge.ReadableMap;
36
- import com.facebook.react.bridge.ReadableMapKeySetIterator;
37
- import com.facebook.react.bridge.ReadableType;
38
- import com.facebook.react.bridge.UIManager;
39
- import com.facebook.react.bridge.WritableMap;
40
- import com.facebook.react.uimanager.common.ViewUtil;
41
- import com.facebook.react.uimanager.events.Event;
42
- import com.facebook.react.uimanager.events.EventDispatcher;
43
- import com.facebook.react.uimanager.util.ReactFindViewUtil;
44
- import java.util.HashMap;
45
- import java.util.List;
46
-
47
- /**
48
- * Utility class that handles the addition of a "role" for accessibility to either a View or
49
- * AccessibilityNodeInfo.
50
- */
51
- public class ReactAccessibilityDelegate extends ExploreByTouchHelper {
52
-
53
- public static final String TOP_ACCESSIBILITY_ACTION_EVENT = "topAccessibilityAction";
54
- public static final HashMap<String, Integer> sActionIdMap = new HashMap<>();
55
-
56
- private static final String TAG = "ReactAccessibilityDelegate";
57
- private static int sCounter = 0x3f000000;
58
- private static final int TIMEOUT_SEND_ACCESSIBILITY_EVENT = 200;
59
- private static final int SEND_EVENT = 1;
60
- private static final String delimiter = ", ";
61
- private static final int delimiterLength = delimiter.length();
62
- // State constants for states which have analogs in AccessibilityNodeInfo
63
- private static final String STATE_DISABLED = "disabled";
64
- private static final String STATE_SELECTED = "selected";
65
- private static final String STATE_CHECKED = "checked";
66
-
67
- private final View mView;
68
- private Handler mHandler;
69
- private final HashMap<Integer, String> mAccessibilityActionsMap;
70
-
71
- @Nullable View mAccessibilityLabelledBy;
72
-
73
- static {
74
- sActionIdMap.put("activate", AccessibilityActionCompat.ACTION_CLICK.getId());
75
- sActionIdMap.put("longpress", AccessibilityActionCompat.ACTION_LONG_CLICK.getId());
76
- sActionIdMap.put("increment", AccessibilityActionCompat.ACTION_SCROLL_FORWARD.getId());
77
- sActionIdMap.put("decrement", AccessibilityActionCompat.ACTION_SCROLL_BACKWARD.getId());
78
- sActionIdMap.put("expand", AccessibilityActionCompat.ACTION_EXPAND.getId());
79
- sActionIdMap.put("collapse", AccessibilityActionCompat.ACTION_COLLAPSE.getId());
80
- sActionIdMap.put("accessibilityFocus", AccessibilityActionCompat.ACTION_ACCESSIBILITY_FOCUS.getId());
81
- }
82
-
83
- public ReactAccessibilityDelegate(
84
- final View view, boolean originalFocus, int originalImportantForAccessibility) {
85
- super(view);
86
- mView = view;
87
- mAccessibilityActionsMap = new HashMap<Integer, String>();
88
- mHandler =
89
- new Handler() {
90
- @Override
91
- public void handleMessage(Message msg) {
92
- View host = (View) msg.obj;
93
- host.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED);
94
- }
95
- };
96
-
97
- // We need to reset these two properties, as ExploreByTouchHelper sets focusable to "true" and
98
- // importantForAccessibility to "Yes" (if it is Auto). If we don't reset these it would force
99
- // every element that has this delegate attached to be focusable, and not allow for
100
- // announcement coalescing.
101
- mView.setFocusable(originalFocus);
102
- ViewCompat.setImportantForAccessibility(mView, originalImportantForAccessibility);
103
- }
104
-
105
- public static void setDelegate(
106
- final View view, boolean originalFocus, int originalImportantForAccessibility) {
107
- // if a view already has an accessibility delegate, replacing it could cause
108
- // problems, so leave it alone.
109
- if (!ViewCompat.hasAccessibilityDelegate(view)
110
- && (view.getTag(R.id.accessibility_role) != null
111
- || view.getTag(R.id.accessibility_state) != null
112
- || view.getTag(R.id.accessibility_actions) != null
113
- || view.getTag(R.id.react_test_id) != null
114
- || view.getTag(R.id.accessibility_collection_item) != null
115
- || view.getTag(R.id.accessibility_links) != null
116
- || view.getTag(R.id.role) != null)) {
117
- ViewCompat.setAccessibilityDelegate(
118
- view,
119
- new ReactAccessibilityDelegate(view, originalFocus, originalImportantForAccessibility));
120
- }
121
- }
122
-
123
- // Explicitly re-set the delegate, even if one has already been set.
124
- public static void resetDelegate(
125
- final View view, boolean originalFocus, int originalImportantForAccessibility) {
126
- ViewCompat.setAccessibilityDelegate(
127
- view,
128
- new ReactAccessibilityDelegate(view, originalFocus, originalImportantForAccessibility));
129
- }
130
-
131
- // The View this delegate is attached to
132
- protected View getHostView() {
133
- return mView;
134
- }
135
-
136
- @Override
137
- public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
138
- super.onInitializeAccessibilityNodeInfo(host, info);
139
-
140
- if (host.getTag(R.id.accessibility_state_expanded) != null) {
141
- final boolean accessibilityStateExpanded =
142
- (boolean) host.getTag(R.id.accessibility_state_expanded);
143
- info.addAction(
144
- accessibilityStateExpanded
145
- ? AccessibilityNodeInfoCompat.ACTION_COLLAPSE
146
- : AccessibilityNodeInfoCompat.ACTION_EXPAND);
147
- }
148
- final AccessibilityRole accessibilityRole = AccessibilityRole.fromViewTag(host);
149
- final String accessibilityHint = (String) host.getTag(R.id.accessibility_hint);
150
- if (accessibilityRole != null) {
151
- setRole(info, accessibilityRole, host.getContext());
152
- }
153
-
154
- if (accessibilityHint != null) {
155
- info.setTooltipText(accessibilityHint);
156
- }
157
-
158
- final Object accessibilityLabelledBy = host.getTag(R.id.labelled_by);
159
- if (accessibilityLabelledBy != null) {
160
- mAccessibilityLabelledBy =
161
- ReactFindViewUtil.findView(host.getRootView(), (String) accessibilityLabelledBy);
162
- if (mAccessibilityLabelledBy != null) {
163
- info.setLabeledBy(mAccessibilityLabelledBy);
164
- }
165
- }
166
-
167
- // state is changeable.
168
- final ReadableMap accessibilityState = (ReadableMap) host.getTag(R.id.accessibility_state);
169
- if (accessibilityState != null) {
170
- setState(info, accessibilityState, host.getContext());
171
- }
172
- final ReadableArray accessibilityActions =
173
- (ReadableArray) host.getTag(R.id.accessibility_actions);
174
-
175
- final ReadableMap accessibilityCollectionItem =
176
- (ReadableMap) host.getTag(R.id.accessibility_collection_item);
177
- if (accessibilityCollectionItem != null) {
178
- int rowIndex = accessibilityCollectionItem.getInt("rowIndex");
179
- int columnIndex = accessibilityCollectionItem.getInt("columnIndex");
180
- int rowSpan = accessibilityCollectionItem.getInt("rowSpan");
181
- int columnSpan = accessibilityCollectionItem.getInt("columnSpan");
182
- boolean heading = accessibilityCollectionItem.getBoolean("heading");
183
-
184
- AccessibilityNodeInfoCompat.CollectionItemInfoCompat collectionItemCompat =
185
- AccessibilityNodeInfoCompat.CollectionItemInfoCompat.obtain(
186
- rowIndex, rowSpan, columnIndex, columnSpan, heading);
187
- info.setCollectionItemInfo(collectionItemCompat);
188
- }
189
-
190
- if (accessibilityActions != null) {
191
- for (int i = 0; i < accessibilityActions.size(); i++) {
192
- final ReadableMap action = accessibilityActions.getMap(i);
193
- if (!action.hasKey("name")) {
194
- throw new IllegalArgumentException("Unknown accessibility action.");
195
- }
196
- int actionId = sCounter;
197
- String actionLabel = action.hasKey("label") ? action.getString("label") : null;
198
- if (sActionIdMap.containsKey(action.getString("name"))) {
199
- actionId = sActionIdMap.get(action.getString("name"));
200
- } else {
201
- sCounter++;
202
- }
203
- mAccessibilityActionsMap.put(actionId, action.getString("name"));
204
- final AccessibilityActionCompat accessibilityAction =
205
- new AccessibilityActionCompat(actionId, actionLabel);
206
- info.addAction(accessibilityAction);
207
- }
208
- }
209
-
210
- // Process accessibilityValue
211
-
212
- final ReadableMap accessibilityValue = (ReadableMap) host.getTag(R.id.accessibility_value);
213
- if (accessibilityValue != null
214
- && accessibilityValue.hasKey("min")
215
- && accessibilityValue.hasKey("now")
216
- && accessibilityValue.hasKey("max")) {
217
- final Dynamic minDynamic = accessibilityValue.getDynamic("min");
218
- final Dynamic nowDynamic = accessibilityValue.getDynamic("now");
219
- final Dynamic maxDynamic = accessibilityValue.getDynamic("max");
220
- if (minDynamic != null
221
- && minDynamic.getType() == ReadableType.Number
222
- && nowDynamic != null
223
- && nowDynamic.getType() == ReadableType.Number
224
- && maxDynamic != null
225
- && maxDynamic.getType() == ReadableType.Number) {
226
- final int min = minDynamic.asInt();
227
- final int now = nowDynamic.asInt();
228
- final int max = maxDynamic.asInt();
229
- if (max > min && now >= min && max >= now) {
230
- info.setRangeInfo(RangeInfoCompat.obtain(RangeInfoCompat.RANGE_TYPE_INT, min, max, now));
231
- }
232
- }
233
- }
234
-
235
- // Expose the testID prop as the resource-id name of the view. Black-box E2E/UI testing
236
- // frameworks, which interact with the UI through the accessibility framework, do not have
237
- // access to view tags. This allows developers/testers to avoid polluting the
238
- // content-description with test identifiers.
239
- final String testId = (String) host.getTag(R.id.react_test_id);
240
- if (testId != null) {
241
- info.setViewIdResourceName(testId);
242
- }
243
- boolean missingContentDescription = TextUtils.isEmpty(info.getContentDescription());
244
- boolean missingText = TextUtils.isEmpty(info.getText());
245
- boolean missingTextAndDescription = missingContentDescription && missingText;
246
- boolean hasContentToAnnounce =
247
- accessibilityActions != null
248
- || accessibilityState != null
249
- || accessibilityLabelledBy != null
250
- || accessibilityRole != null;
251
- if (missingTextAndDescription && hasContentToAnnounce) {
252
- info.setContentDescription(getTalkbackDescription(host, info));
253
- }
254
- }
255
-
256
- @Override
257
- public void onInitializeAccessibilityEvent(View host, AccessibilityEvent event) {
258
- super.onInitializeAccessibilityEvent(host, event);
259
- // Set item count and current item index on accessibility events for adjustable
260
- // in order to make Talkback announce the value of the adjustable
261
- final ReadableMap accessibilityValue = (ReadableMap) host.getTag(R.id.accessibility_value);
262
- if (accessibilityValue != null
263
- && accessibilityValue.hasKey("min")
264
- && accessibilityValue.hasKey("now")
265
- && accessibilityValue.hasKey("max")) {
266
- final Dynamic minDynamic = accessibilityValue.getDynamic("min");
267
- final Dynamic nowDynamic = accessibilityValue.getDynamic("now");
268
- final Dynamic maxDynamic = accessibilityValue.getDynamic("max");
269
- if (minDynamic != null
270
- && minDynamic.getType() == ReadableType.Number
271
- && nowDynamic != null
272
- && nowDynamic.getType() == ReadableType.Number
273
- && maxDynamic != null
274
- && maxDynamic.getType() == ReadableType.Number) {
275
- final int min = minDynamic.asInt();
276
- final int now = nowDynamic.asInt();
277
- final int max = maxDynamic.asInt();
278
- if (max > min && now >= min && max >= now) {
279
- event.setItemCount(max - min);
280
- event.setCurrentItemIndex(now);
281
- }
282
- }
283
- }
284
- }
285
-
286
- @Override
287
- public boolean performAccessibilityAction(View host, int action, Bundle args) {
288
- if (action == AccessibilityNodeInfoCompat.ACTION_COLLAPSE) {
289
- host.setTag(R.id.accessibility_state_expanded, false);
290
- }
291
- if (action == AccessibilityNodeInfoCompat.ACTION_EXPAND) {
292
- host.setTag(R.id.accessibility_state_expanded, true);
293
- }
294
- if (action == AccessibilityNodeInfoCompat.ACTION_CLICK) {
295
- final WritableMap payload = Arguments.createMap();
296
- final int reactTag = host.getId();
297
- payload.putString("eventType", "select");
298
- payload.putInt("eventKeyAction", 1);
299
- payload.putInt("tag", reactTag);
300
- payload.putInt("target", reactTag);
301
- ReactContext reactContext = (ReactContext) host.getContext();
302
- reactContext.emitDeviceEvent("onHWKeyEvent", payload);
303
- }
304
- if (action == AccessibilityNodeInfoCompat.ACTION_LONG_CLICK) {
305
- final WritableMap payload = Arguments.createMap();
306
- final int reactTag = host.getId();
307
- payload.putString("eventType", "longSelect");
308
- payload.putInt("eventKeyAction", 1);
309
- payload.putInt("tag", reactTag);
310
- payload.putInt("target", reactTag);
311
- ReactContext reactContext = (ReactContext) host.getContext();
312
- reactContext.emitDeviceEvent("onHWKeyEvent", payload);
313
- }
314
- if (mAccessibilityActionsMap.containsKey(action)) {
315
- final WritableMap event = Arguments.createMap();
316
- event.putString("actionName", mAccessibilityActionsMap.get(action));
317
- ReactContext reactContext = (ReactContext) host.getContext();
318
- if (reactContext.hasActiveReactInstance()) {
319
- final int reactTag = host.getId();
320
- final int surfaceId = UIManagerHelper.getSurfaceId(reactContext);
321
- UIManager uiManager =
322
- UIManagerHelper.getUIManager(reactContext, ViewUtil.getUIManagerType(reactTag));
323
- if (uiManager != null) {
324
- EventDispatcher eventDispatcher = (EventDispatcher) uiManager.getEventDispatcher();
325
- eventDispatcher.dispatchEvent(
326
- new Event(surfaceId, reactTag) {
327
- @Override
328
- public String getEventName() {
329
- return TOP_ACCESSIBILITY_ACTION_EVENT;
330
- }
331
-
332
- @Override
333
- public WritableMap getEventData() {
334
- return event;
335
- }
336
- });
337
- }
338
- } else {
339
- ReactSoftExceptionLogger.logSoftException(
340
- TAG, new ReactNoCrashSoftException("Cannot get RCTEventEmitter, no CatalystInstance"));
341
- }
342
-
343
- // In order to make Talkback announce the change of the adjustable's value,
344
- // schedule to send a TYPE_VIEW_SELECTED event after performing the scroll actions.
345
- final AccessibilityRole accessibilityRole =
346
- (AccessibilityRole) host.getTag(R.id.accessibility_role);
347
- final ReadableMap accessibilityValue = (ReadableMap) host.getTag(R.id.accessibility_value);
348
- if (accessibilityRole == AccessibilityRole.ADJUSTABLE
349
- && (action == AccessibilityActionCompat.ACTION_SCROLL_FORWARD.getId()
350
- || action == AccessibilityActionCompat.ACTION_SCROLL_BACKWARD.getId())) {
351
- if (accessibilityValue != null && !accessibilityValue.hasKey("text")) {
352
- scheduleAccessibilityEventSender(host);
353
- }
354
- return super.performAccessibilityAction(host, action, args);
355
- }
356
- // When checking the accessibility focus action, we don't want to intercept the native event
357
- // otherwise it would intercept the change of focus
358
- if (action == AccessibilityActionCompat.ACTION_ACCESSIBILITY_FOCUS.getId()) {
359
- return super.performAccessibilityAction(host, action, args);
360
- }
361
- return true;
362
- }
363
- return super.performAccessibilityAction(host, action, args);
364
- }
365
-
366
- /**
367
- * Schedule a command for sending an accessibility event. </br> Note: A command is used to ensure
368
- * that accessibility events are sent at most one in a given time frame to save system resources
369
- * while the progress changes quickly.
370
- */
371
- private void scheduleAccessibilityEventSender(View host) {
372
- if (mHandler.hasMessages(SEND_EVENT, host)) {
373
- mHandler.removeMessages(SEND_EVENT, host);
374
- }
375
- Message msg = mHandler.obtainMessage(SEND_EVENT, host);
376
- mHandler.sendMessageDelayed(msg, TIMEOUT_SEND_ACCESSIBILITY_EVENT);
377
- }
378
-
379
- private static void setState(
380
- AccessibilityNodeInfoCompat info, ReadableMap accessibilityState, Context context) {
381
- final ReadableMapKeySetIterator i = accessibilityState.keySetIterator();
382
- while (i.hasNextKey()) {
383
- final String state = i.nextKey();
384
- final Dynamic value = accessibilityState.getDynamic(state);
385
- if (state.equals(STATE_SELECTED) && value.getType() == ReadableType.Boolean) {
386
- info.setSelected(value.asBoolean());
387
- } else if (state.equals(STATE_DISABLED) && value.getType() == ReadableType.Boolean) {
388
- info.setEnabled(!value.asBoolean());
389
- } else if (state.equals(STATE_CHECKED) && value.getType() == ReadableType.Boolean) {
390
- final boolean boolValue = value.asBoolean();
391
- info.setCheckable(true);
392
- info.setChecked(boolValue);
393
- }
394
- }
395
- }
396
-
397
- // TODO: Eventually support for other languages on talkback
398
- public static void setRole(
399
- AccessibilityNodeInfoCompat nodeInfo, AccessibilityRole role, final Context context) {
400
- if (role == null) {
401
- role = AccessibilityRole.NONE;
402
- }
403
- nodeInfo.setClassName(AccessibilityRole.getValue(role));
404
- if (role.equals(AccessibilityRole.LINK)) {
405
- nodeInfo.setRoleDescription(context.getString(R.string.link_description));
406
- } else if (role.equals(AccessibilityRole.IMAGE)) {
407
- nodeInfo.setRoleDescription(context.getString(R.string.image_description));
408
- } else if (role.equals(AccessibilityRole.IMAGEBUTTON)) {
409
- nodeInfo.setRoleDescription(context.getString(R.string.imagebutton_description));
410
- nodeInfo.setClickable(true);
411
- } else if (role.equals(AccessibilityRole.BUTTON)) {
412
- nodeInfo.setClickable(true);
413
- } else if (role.equals(AccessibilityRole.TOGGLEBUTTON)) {
414
- nodeInfo.setClickable(true);
415
- nodeInfo.setCheckable(true);
416
- } else if (role.equals(AccessibilityRole.SUMMARY)) {
417
- nodeInfo.setRoleDescription(context.getString(R.string.summary_description));
418
- } else if (role.equals(AccessibilityRole.HEADER)) {
419
- nodeInfo.setHeading(true);
420
- } else if (role.equals(AccessibilityRole.ALERT)) {
421
- nodeInfo.setRoleDescription(context.getString(R.string.alert_description));
422
- } else if (role.equals(AccessibilityRole.COMBOBOX)) {
423
- nodeInfo.setRoleDescription(context.getString(R.string.combobox_description));
424
- } else if (role.equals(AccessibilityRole.MENU)) {
425
- nodeInfo.setRoleDescription(context.getString(R.string.menu_description));
426
- } else if (role.equals(AccessibilityRole.MENUBAR)) {
427
- nodeInfo.setRoleDescription(context.getString(R.string.menubar_description));
428
- } else if (role.equals(AccessibilityRole.MENUITEM)) {
429
- nodeInfo.setRoleDescription(context.getString(R.string.menuitem_description));
430
- } else if (role.equals(AccessibilityRole.PROGRESSBAR)) {
431
- nodeInfo.setRoleDescription(context.getString(R.string.progressbar_description));
432
- } else if (role.equals(AccessibilityRole.RADIOGROUP)) {
433
- nodeInfo.setRoleDescription(context.getString(R.string.radiogroup_description));
434
- } else if (role.equals(AccessibilityRole.SCROLLBAR)) {
435
- nodeInfo.setRoleDescription(context.getString(R.string.scrollbar_description));
436
- } else if (role.equals(AccessibilityRole.SPINBUTTON)) {
437
- nodeInfo.setRoleDescription(context.getString(R.string.spinbutton_description));
438
- } else if (role.equals(AccessibilityRole.TAB)) {
439
- nodeInfo.setRoleDescription(context.getString(R.string.rn_tab_description));
440
- } else if (role.equals(AccessibilityRole.TABLIST)) {
441
- nodeInfo.setRoleDescription(context.getString(R.string.tablist_description));
442
- } else if (role.equals(AccessibilityRole.TIMER)) {
443
- nodeInfo.setRoleDescription(context.getString(R.string.timer_description));
444
- } else if (role.equals(AccessibilityRole.TOOLBAR)) {
445
- nodeInfo.setRoleDescription(context.getString(R.string.toolbar_description));
446
- }
447
- }
448
-
449
- @Override
450
- protected int getVirtualViewAt(float x, float y) {
451
- return INVALID_ID;
452
- }
453
-
454
- @Override
455
- protected void getVisibleVirtualViews(List<Integer> virtualViewIds) {}
456
-
457
- @Override
458
- protected void onPopulateNodeForVirtualView(
459
- int virtualViewId, @NonNull AccessibilityNodeInfoCompat node) {
460
- node.setContentDescription("");
461
- node.setBoundsInParent(new Rect(0, 0, 1, 1));
462
- }
463
-
464
- @Override
465
- protected boolean onPerformActionForVirtualView(
466
- int virtualViewId, int action, @Nullable Bundle arguments) {
467
- return false;
468
- }
469
-
470
- @Override
471
- public @Nullable AccessibilityNodeProviderCompat getAccessibilityNodeProvider(View host) {
472
- return null;
473
- }
474
-
475
- // This exists so classes that extend this can properly call super's impl of this method while
476
- // still being able to override it properly for this class
477
- public @Nullable AccessibilityNodeProviderCompat superGetAccessibilityNodeProvider(View host) {
478
- return super.getAccessibilityNodeProvider(host);
479
- }
480
-
481
- /**
482
- * Determines if the supplied {@link View} and {@link AccessibilityNodeInfoCompat} has any
483
- * children which are not independently accessibility focusable and also have a spoken
484
- * description.
485
- *
486
- * <p>NOTE: Accessibility services will include these children's descriptions in the closest
487
- * focusable ancestor.
488
- *
489
- * @param view The {@link View} to evaluate
490
- * @param node The {@link AccessibilityNodeInfoCompat} to evaluate
491
- * @return {@code true} if it has any non-actionable speaking descendants within its subtree
492
- */
493
- public static boolean hasNonActionableSpeakingDescendants(
494
- @Nullable AccessibilityNodeInfoCompat node, @Nullable View view) {
495
-
496
- if (node == null || view == null || !(view instanceof ViewGroup)) {
497
- return false;
498
- }
499
-
500
- final ViewGroup viewGroup = (ViewGroup) view;
501
- for (int i = 0, count = viewGroup.getChildCount(); i < count; i++) {
502
- final View childView = viewGroup.getChildAt(i);
503
-
504
- if (childView == null) {
505
- continue;
506
- }
507
-
508
- final AccessibilityNodeInfoCompat childNode = AccessibilityNodeInfoCompat.obtain();
509
- try {
510
- ViewCompat.onInitializeAccessibilityNodeInfo(childView, childNode);
511
-
512
- if (!childNode.isVisibleToUser()) {
513
- continue;
514
- }
515
-
516
- if (isAccessibilityFocusable(childNode, childView)) {
517
- continue;
518
- }
519
-
520
- if (isSpeakingNode(childNode, childView)) {
521
- return true;
522
- }
523
- } finally {
524
- if (childNode != null) {
525
- childNode.recycle();
526
- }
527
- }
528
- }
529
-
530
- return false;
531
- }
532
-
533
- /**
534
- * Returns whether the node has valid RangeInfo.
535
- *
536
- * @param node The node to check.
537
- * @return Whether the node has valid RangeInfo.
538
- */
539
- public static boolean hasValidRangeInfo(@Nullable AccessibilityNodeInfoCompat node) {
540
- if (node == null) {
541
- return false;
542
- }
543
-
544
- @Nullable final RangeInfoCompat rangeInfo = node.getRangeInfo();
545
- if (rangeInfo == null) {
546
- return false;
547
- }
548
-
549
- final float maxProgress = rangeInfo.getMax();
550
- final float minProgress = rangeInfo.getMin();
551
- final float currentProgress = rangeInfo.getCurrent();
552
- final float diffProgress = maxProgress - minProgress;
553
- return (diffProgress > 0.0f)
554
- && (currentProgress >= minProgress)
555
- && (currentProgress <= maxProgress);
556
- }
557
-
558
- /**
559
- * Returns whether the specified node has state description.
560
- *
561
- * @param node The node to check.
562
- * @return {@code true} if the node has state description.
563
- */
564
- private static boolean hasStateDescription(@Nullable AccessibilityNodeInfoCompat node) {
565
- return node != null
566
- && (!TextUtils.isEmpty(node.getStateDescription())
567
- || node.isCheckable()
568
- || hasValidRangeInfo(node));
569
- }
570
-
571
- /**
572
- * Returns whether the supplied {@link View} and {@link AccessibilityNodeInfoCompat} would produce
573
- * spoken feedback if it were accessibility focused. NOTE: not all speaking nodes are focusable.
574
- *
575
- * @param view The {@link View} to evaluate
576
- * @param node The {@link AccessibilityNodeInfoCompat} to evaluate
577
- * @return {@code true} if it meets the criterion for producing spoken feedback
578
- */
579
- public static boolean isSpeakingNode(
580
- @Nullable AccessibilityNodeInfoCompat node, @Nullable View view) {
581
- if (node == null || view == null) {
582
- return false;
583
- }
584
-
585
- final int important = ViewCompat.getImportantForAccessibility(view);
586
- if (important == ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS
587
- || (important == ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_NO && node.getChildCount() <= 0)) {
588
- return false;
589
- }
590
-
591
- return hasText(node)
592
- || hasStateDescription(node)
593
- || node.isCheckable()
594
- || hasNonActionableSpeakingDescendants(node, view);
595
- }
596
-
597
- public static boolean hasText(@Nullable AccessibilityNodeInfoCompat node) {
598
- return node != null
599
- && node.getCollectionInfo() == null
600
- && (!TextUtils.isEmpty(node.getText())
601
- || !TextUtils.isEmpty(node.getContentDescription())
602
- || !TextUtils.isEmpty(node.getHintText()));
603
- }
604
-
605
- /**
606
- * Determines if the provided {@link View} and {@link AccessibilityNodeInfoCompat} meet the
607
- * criteria for gaining accessibility focus.
608
- *
609
- * <p>Note: this is evaluating general focusability by accessibility services, and does not mean
610
- * this view will be guaranteed to be focused by specific services such as Talkback. For Talkback
611
- * focusability, see {@link #isTalkbackFocusable(View)}
612
- *
613
- * @param view The {@link View} to evaluate
614
- * @param node The {@link AccessibilityNodeInfoCompat} to evaluate
615
- * @return {@code true} if it is possible to gain accessibility focus
616
- */
617
- public static boolean isAccessibilityFocusable(
618
- @Nullable AccessibilityNodeInfoCompat node, @Nullable View view) {
619
- if (node == null || view == null) {
620
- return false;
621
- }
622
-
623
- // Never focus invisible nodes.
624
- if (!node.isVisibleToUser()) {
625
- return false;
626
- }
627
-
628
- // Always focus "actionable" nodes.
629
- return node.isScreenReaderFocusable() || isActionableForAccessibility(node);
630
- }
631
-
632
- /**
633
- * Returns whether a node is actionable. That is, the node supports one of {@link
634
- * AccessibilityNodeInfoCompat#isClickable()}, {@link AccessibilityNodeInfoCompat#isFocusable()},
635
- * or {@link AccessibilityNodeInfoCompat#isLongClickable()}.
636
- *
637
- * @param node The {@link AccessibilityNodeInfoCompat} to evaluate
638
- * @return {@code true} if node is actionable.
639
- */
640
- public static boolean isActionableForAccessibility(@Nullable AccessibilityNodeInfoCompat node) {
641
- if (node == null) {
642
- return false;
643
- }
644
-
645
- if (node.isClickable() || node.isLongClickable() || node.isFocusable()) {
646
- return true;
647
- }
648
-
649
- final List actionList = node.getActionList();
650
- return actionList.contains(AccessibilityNodeInfoCompat.ACTION_CLICK)
651
- || actionList.contains(AccessibilityNodeInfoCompat.ACTION_LONG_CLICK)
652
- || actionList.contains(AccessibilityNodeInfoCompat.ACTION_FOCUS);
653
- }
654
-
655
- /**
656
- * Returns a cached instance if such is available otherwise a new one.
657
- *
658
- * @param view The {@link View} to derive the AccessibilityNodeInfo properties from.
659
- * @return {@link FlipperObject} containing the properties.
660
- */
661
- @Nullable
662
- public static AccessibilityNodeInfoCompat createNodeInfoFromView(View view) {
663
- if (view == null) {
664
- return null;
665
- }
666
-
667
- final AccessibilityNodeInfoCompat nodeInfo = AccessibilityNodeInfoCompat.obtain();
668
-
669
- // For some unknown reason, Android seems to occasionally throw a NPE from
670
- // onInitializeAccessibilityNodeInfo.
671
- try {
672
- ViewCompat.onInitializeAccessibilityNodeInfo(view, nodeInfo);
673
- } catch (NullPointerException e) {
674
- if (nodeInfo != null) {
675
- nodeInfo.recycle();
676
- }
677
- return null;
678
- }
679
-
680
- return nodeInfo;
681
- }
682
-
683
- /**
684
- * Creates the text that Google's TalkBack screen reader will read aloud for a given {@link View}.
685
- * This may be any combination of the {@link View}'s {@code text}, {@code contentDescription}, and
686
- * the {@code text} and {@code contentDescription} of any ancestor {@link View}.
687
- *
688
- * <p>This description is generally ported over from Google's TalkBack screen reader, and this
689
- * should be kept up to date with their implementation (as much as necessary). Details can be seen
690
- * in their source code here:
691
- *
692
- * <p>https://github.com/google/talkback/compositor/src/main/res/raw/compositor.json - search for
693
- * "get_description_for_tree", "append_description_for_tree", "description_for_tree_nodes"
694
- *
695
- * @param view The {@link View} to evaluate.
696
- * @param info The default {@link AccessibilityNodeInfoCompat}.
697
- * @return {@code String} representing what talkback will say when a {@link View} is focused.
698
- */
699
- @Nullable
700
- public static CharSequence getTalkbackDescription(
701
- View view, @Nullable AccessibilityNodeInfoCompat info) {
702
- final AccessibilityNodeInfoCompat node =
703
- info == null ? createNodeInfoFromView(view) : AccessibilityNodeInfoCompat.obtain(info);
704
-
705
- if (node == null) {
706
- return null;
707
- }
708
- try {
709
- final CharSequence contentDescription = node.getContentDescription();
710
- final CharSequence nodeText = node.getText();
711
-
712
- final boolean hasNodeText = !TextUtils.isEmpty(nodeText);
713
- final boolean isEditText = view instanceof EditText;
714
-
715
- StringBuilder talkbackSegments = new StringBuilder();
716
-
717
- // EditText's prioritize their own text content over a contentDescription so skip this
718
- if (!TextUtils.isEmpty(contentDescription) && (!isEditText || !hasNodeText)) {
719
- // next add content description
720
- talkbackSegments.append(contentDescription);
721
- return talkbackSegments;
722
- }
723
-
724
- // TextView
725
- if (hasNodeText) {
726
- talkbackSegments.append(nodeText);
727
- return talkbackSegments;
728
- }
729
-
730
- // If there are child views and no contentDescription the text of all non-focusable children,
731
- // comma separated, becomes the description.
732
- if (view instanceof ViewGroup) {
733
- final StringBuilder concatChildDescription = new StringBuilder();
734
- final ViewGroup viewGroup = (ViewGroup) view;
735
-
736
- for (int i = 0, count = viewGroup.getChildCount(); i < count; i++) {
737
- final View child = viewGroup.getChildAt(i);
738
-
739
- final AccessibilityNodeInfoCompat childNodeInfo = AccessibilityNodeInfoCompat.obtain();
740
- ViewCompat.onInitializeAccessibilityNodeInfo(child, childNodeInfo);
741
-
742
- if (isSpeakingNode(childNodeInfo, child)
743
- && !isAccessibilityFocusable(childNodeInfo, child)) {
744
- CharSequence childNodeDescription = getTalkbackDescription(child, null);
745
- if (!TextUtils.isEmpty(childNodeDescription)) {
746
- concatChildDescription.append(childNodeDescription + delimiter);
747
- }
748
- }
749
- childNodeInfo.recycle();
750
- }
751
-
752
- return removeFinalDelimiter(concatChildDescription);
753
- }
754
-
755
- return null;
756
- } finally {
757
- node.recycle();
758
- }
759
- }
760
-
761
- private static String removeFinalDelimiter(StringBuilder builder) {
762
- int end = builder.length();
763
- if (end > 0) {
764
- builder.delete(end - delimiterLength, end);
765
- }
766
- return builder.toString();
767
- }
768
-
769
- /**
770
- * An ARIA Role representable by View's `role` prop. Ordinals should be kept in sync with
771
- * `facebook::react::Role`.
772
- */
773
- public enum Role {
774
- ALERT,
775
- ALERTDIALOG,
776
- APPLICATION,
777
- ARTICLE,
778
- BANNER,
779
- BUTTON,
780
- CELL,
781
- CHECKBOX,
782
- COLUMNHEADER,
783
- COMBOBOX,
784
- COMPLEMENTARY,
785
- CONTENTINFO,
786
- DEFINITION,
787
- DIALOG,
788
- DIRECTORY,
789
- DOCUMENT,
790
- FEED,
791
- FIGURE,
792
- FORM,
793
- GRID,
794
- GROUP,
795
- HEADING,
796
- IMG,
797
- LINK,
798
- LIST,
799
- LISTITEM,
800
- LOG,
801
- MAIN,
802
- MARQUEE,
803
- MATH,
804
- MENU,
805
- MENUBAR,
806
- MENUITEM,
807
- METER,
808
- NAVIGATION,
809
- NONE,
810
- NOTE,
811
- OPTION,
812
- PRESENTATION,
813
- PROGRESSBAR,
814
- RADIO,
815
- RADIOGROUP,
816
- REGION,
817
- ROW,
818
- ROWGROUP,
819
- ROWHEADER,
820
- SCROLLBAR,
821
- SEARCHBOX,
822
- SEPARATOR,
823
- SLIDER,
824
- SPINBUTTON,
825
- STATUS,
826
- SUMMARY,
827
- SWITCH,
828
- TAB,
829
- TABLE,
830
- TABLIST,
831
- TABPANEL,
832
- TERM,
833
- TIMER,
834
- TOOLBAR,
835
- TOOLTIP,
836
- TREE,
837
- TREEGRID,
838
- TREEITEM;
839
-
840
- public static @Nullable Role fromValue(@Nullable String value) {
841
- for (Role role : Role.values()) {
842
- if (role.name().equalsIgnoreCase(value)) {
843
- return role;
844
- }
845
- }
846
- return null;
847
- }
848
- }
849
-
850
- /**
851
- * These roles are defined by Google's TalkBack screen reader, and this list should be kept up to
852
- * date with their implementation. Details can be seen in their source code here:
853
- *
854
- * <p>https://github.com/google/talkback/blob/master/utils/src/main/java/Role.java
855
- */
856
- public enum AccessibilityRole {
857
- NONE,
858
- BUTTON,
859
- DROPDOWNLIST,
860
- TOGGLEBUTTON,
861
- LINK,
862
- SEARCH,
863
- IMAGE,
864
- IMAGEBUTTON,
865
- KEYBOARDKEY,
866
- TEXT,
867
- ADJUSTABLE,
868
- SUMMARY,
869
- HEADER,
870
- ALERT,
871
- CHECKBOX,
872
- COMBOBOX,
873
- MENU,
874
- MENUBAR,
875
- MENUITEM,
876
- PROGRESSBAR,
877
- RADIO,
878
- RADIOGROUP,
879
- SCROLLBAR,
880
- SPINBUTTON,
881
- SWITCH,
882
- TAB,
883
- TABLIST,
884
- TIMER,
885
- LIST,
886
- GRID,
887
- PAGER,
888
- SCROLLVIEW,
889
- HORIZONTALSCROLLVIEW,
890
- VIEWGROUP,
891
- WEBVIEW,
892
- DRAWERLAYOUT,
893
- SLIDINGDRAWER,
894
- ICONMENU,
895
- TOOLBAR;
896
-
897
- public static String getValue(AccessibilityRole role) {
898
- switch (role) {
899
- case BUTTON:
900
- return "android.widget.Button";
901
- case DROPDOWNLIST:
902
- return "android.widget.Spinner";
903
- case TOGGLEBUTTON:
904
- return "android.widget.ToggleButton";
905
- case SEARCH:
906
- return "android.widget.EditText";
907
- case IMAGE:
908
- return "android.widget.ImageView";
909
- case IMAGEBUTTON:
910
- return "android.widget.ImageButton";
911
- case KEYBOARDKEY:
912
- return "android.inputmethodservice.Keyboard$Key";
913
- case TEXT:
914
- return "android.widget.TextView";
915
- case ADJUSTABLE:
916
- return "android.widget.SeekBar";
917
- case CHECKBOX:
918
- return "android.widget.CheckBox";
919
- case RADIO:
920
- return "android.widget.RadioButton";
921
- case SPINBUTTON:
922
- return "android.widget.SpinButton";
923
- case SWITCH:
924
- return "android.widget.Switch";
925
- case LIST:
926
- return "android.widget.AbsListView";
927
- case GRID:
928
- return "android.widget.GridView";
929
- case SCROLLVIEW:
930
- return "android.widget.ScrollView";
931
- case HORIZONTALSCROLLVIEW:
932
- return "android.widget.HorizontalScrollView";
933
- case PAGER:
934
- return "androidx.viewpager.widget.ViewPager";
935
- case DRAWERLAYOUT:
936
- return "androidx.drawerlayout.widget.DrawerLayout";
937
- case SLIDINGDRAWER:
938
- return "android.widget.SlidingDrawer";
939
- case ICONMENU:
940
- return "com.android.internal.view.menu.IconMenuView";
941
- case VIEWGROUP:
942
- return "android.view.ViewGroup";
943
- case WEBVIEW:
944
- return "android.webkit.WebView";
945
- case NONE:
946
- case LINK:
947
- case SUMMARY:
948
- case HEADER:
949
- case ALERT:
950
- case COMBOBOX:
951
- case MENU:
952
- case MENUBAR:
953
- case MENUITEM:
954
- case PROGRESSBAR:
955
- case RADIOGROUP:
956
- case SCROLLBAR:
957
- case TAB:
958
- case TABLIST:
959
- case TIMER:
960
- case TOOLBAR:
961
- return "android.view.View";
962
- default:
963
- throw new IllegalArgumentException("Invalid accessibility role value: " + role);
964
- }
965
- }
966
-
967
- public static AccessibilityRole fromValue(@Nullable String value) {
968
- if (value == null) {
969
- return NONE;
970
- }
971
-
972
- for (AccessibilityRole role : AccessibilityRole.values()) {
973
- if (role.name().equalsIgnoreCase(value)) {
974
- return role;
975
- }
976
- }
977
- throw new IllegalArgumentException("Invalid accessibility role value: " + value);
978
- }
979
-
980
- public static @Nullable AccessibilityRole fromRole(Role role) {
981
- switch (role) {
982
- case ALERT:
983
- return AccessibilityRole.ALERT;
984
- case BUTTON:
985
- return AccessibilityRole.BUTTON;
986
- case CHECKBOX:
987
- return AccessibilityRole.CHECKBOX;
988
- case COMBOBOX:
989
- return AccessibilityRole.COMBOBOX;
990
- case GRID:
991
- return AccessibilityRole.GRID;
992
- case HEADING:
993
- return AccessibilityRole.HEADER;
994
- case IMG:
995
- return AccessibilityRole.IMAGE;
996
- case LINK:
997
- return AccessibilityRole.LINK;
998
- case LIST:
999
- return AccessibilityRole.LIST;
1000
- case MENU:
1001
- return AccessibilityRole.MENU;
1002
- case MENUBAR:
1003
- return AccessibilityRole.MENUBAR;
1004
- case MENUITEM:
1005
- return AccessibilityRole.MENUITEM;
1006
- case NONE:
1007
- return AccessibilityRole.NONE;
1008
- case PROGRESSBAR:
1009
- return AccessibilityRole.PROGRESSBAR;
1010
- case RADIO:
1011
- return AccessibilityRole.RADIO;
1012
- case RADIOGROUP:
1013
- return AccessibilityRole.RADIOGROUP;
1014
- case SCROLLBAR:
1015
- return AccessibilityRole.SCROLLBAR;
1016
- case SEARCHBOX:
1017
- return AccessibilityRole.SEARCH;
1018
- case SLIDER:
1019
- return AccessibilityRole.ADJUSTABLE;
1020
- case SPINBUTTON:
1021
- return AccessibilityRole.SPINBUTTON;
1022
- case SUMMARY:
1023
- return AccessibilityRole.SUMMARY;
1024
- case SWITCH:
1025
- return AccessibilityRole.SWITCH;
1026
- case TAB:
1027
- return AccessibilityRole.TAB;
1028
- case TABLIST:
1029
- return AccessibilityRole.TABLIST;
1030
- case TIMER:
1031
- return AccessibilityRole.TIMER;
1032
- case TOOLBAR:
1033
- return AccessibilityRole.TOOLBAR;
1034
- default:
1035
- // No mapping from ARIA role to AccessibilityRole
1036
- return null;
1037
- }
1038
- }
1039
-
1040
- public static @Nullable AccessibilityRole fromViewTag(View view) {
1041
- Role role = (Role) view.getTag(R.id.role);
1042
- if (role != null) {
1043
- return AccessibilityRole.fromRole(role);
1044
- } else {
1045
- return (AccessibilityRole) view.getTag(R.id.accessibility_role);
1046
- }
1047
- }
1048
- }
1049
- }