react-native-tvos 0.74.5-0 → 0.75.2-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.
- package/Libraries/Animated/AnimatedImplementation.js +2 -0
- package/Libraries/Animated/NativeAnimatedHelper.js +4 -0
- package/Libraries/Animated/createAnimatedComponent.js +10 -4
- package/Libraries/Animated/useAnimatedProps.js +56 -28
- package/Libraries/AppDelegate/RCTAppDelegate.h +9 -0
- package/Libraries/AppDelegate/RCTAppDelegate.mm +95 -37
- package/Libraries/AppDelegate/RCTAppSetupUtils.mm +23 -27
- package/Libraries/AppDelegate/RCTRootViewFactory.h +71 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +76 -17
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +3 -4
- package/Libraries/BatchedBridge/MessageQueue.js +1 -0
- package/Libraries/Blob/RCTBlobCollector.mm +4 -1
- package/Libraries/Blob/RCTBlobManager.h +2 -0
- package/Libraries/Blob/RCTBlobManager.mm +6 -0
- package/Libraries/Blob/React-RCTBlob.podspec +2 -2
- package/Libraries/Components/Button.js +10 -5
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +11 -2
- package/Libraries/Components/Pressable/Pressable.js +29 -7
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +4 -0
- package/Libraries/Components/ScrollView/ScrollView.js +109 -29
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +6 -0
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +13 -1
- package/Libraries/Components/StatusBar/StatusBar.js +1 -21
- package/Libraries/Components/TV/TVViewPropTypes.js +1 -1
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +0 -15
- package/Libraries/Components/TextInput/InputAccessoryView.js +10 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +0 -12
- package/Libraries/Components/TextInput/TextInput.d.ts +0 -19
- package/Libraries/Components/TextInput/TextInput.js +14 -70
- package/Libraries/Components/Touchable/Touchable.js +2 -2
- package/Libraries/Components/Touchable/TouchableHighlight.d.ts +4 -10
- package/Libraries/Components/Touchable/TouchableHighlight.js +3 -1
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +4 -32
- package/Libraries/Components/Touchable/TouchableOpacity.js +3 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +8 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +131 -138
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +6 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
- package/Libraries/Components/View/View.js +1 -11
- package/Libraries/Components/View/ViewAccessibility.js +4 -4
- package/Libraries/Components/View/ViewPropTypes.d.ts +7 -49
- package/Libraries/Components/View/ViewPropTypes.js +7 -0
- package/Libraries/Core/Devtools/loadBundleFromServer.js +3 -3
- package/Libraries/Core/Devtools/parseErrorStack.js +5 -5
- package/Libraries/Core/Devtools/parseHermesStack.js +22 -16
- package/Libraries/Core/ErrorHandlers.js +116 -0
- package/Libraries/Core/ExceptionsManager.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/setUpDeveloperTools.js +3 -1
- package/Libraries/Core/setUpPerformance.js +6 -4
- package/Libraries/Core/setUpReactDevTools.js +70 -10
- package/Libraries/Core/setUpTimers.js +50 -31
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
- package/Libraries/Image/Image.android.js +23 -13
- package/Libraries/Image/Image.d.ts +14 -15
- package/Libraries/Image/Image.ios.js +21 -11
- package/Libraries/Image/ImageProps.js +16 -5
- package/Libraries/Image/ImageTypes.flow.js +7 -2
- package/Libraries/Image/ImageUtils.js +1 -0
- package/Libraries/Image/ImageViewNativeComponent.js +2 -1
- package/Libraries/Image/RCTImageLoader.mm +0 -12
- package/Libraries/Image/RCTImageLoaderLoggable.h +3 -1
- package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +0 -3
- package/Libraries/Image/RCTUIImageViewAnimated.mm +21 -17
- package/Libraries/Image/React-RCTImage.podspec +2 -2
- package/Libraries/Inspector/ElementBox.js +6 -3
- package/Libraries/Inspector/ElementProperties.js +1 -1
- package/Libraries/Interaction/TouchHistoryMath.js +4 -4
- package/Libraries/IntersectionObserver/IntersectionObserverManager.js +6 -26
- package/Libraries/JSInspector/NetworkAgent.js +1 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +39 -29
- package/Libraries/LogBox/Data/LogBoxLog.js +114 -2
- package/Libraries/LogBox/Data/parseLogBoxLog.js +168 -53
- package/Libraries/LogBox/LogBox.js +29 -12
- package/Libraries/LogBox/LogBoxNotificationContainer.js +4 -0
- package/Libraries/LogBox/UI/LogBoxInspector.js +8 -70
- package/Libraries/LogBox/UI/LogBoxInspectorBody.js +87 -0
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -42
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +58 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +5 -66
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +76 -0
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +8 -5
- package/Libraries/LogBox/UI/LogBoxNotification.js +20 -164
- package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +63 -0
- package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +67 -0
- package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +57 -0
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
- package/Libraries/NativeAnimation/RCTAnimationUtils.h +1 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +2 -2
- package/Libraries/NativeComponent/BaseViewConfig.android.js +5 -0
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +5 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +12 -5
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +3 -0
- package/Libraries/NativeComponent/TVViewConfig.js +1 -1
- package/Libraries/Network/RCTNetworkTask.mm +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +1 -0
- package/Libraries/Network/React-RCTNetwork.podspec +2 -2
- package/Libraries/Network/XMLHttpRequest.js +5 -1
- package/Libraries/NewAppScreen/components/LearnMoreLinks.js +3 -3
- package/Libraries/Pressability/Pressability.js +3 -51
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.h +0 -7
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +0 -64
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +3 -2
- package/Libraries/ReactNative/AppContainer-prod.js +2 -1
- package/Libraries/ReactNative/AppContainer.js +2 -0
- package/Libraries/ReactNative/AppRegistry.d.ts +7 -0
- package/Libraries/ReactNative/AppRegistry.js +10 -4
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -21
- package/Libraries/ReactNative/FabricUIManager.js +0 -51
- package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -0
- package/Libraries/ReactNative/RendererImplementation.js +20 -2
- package/Libraries/ReactNative/UIManager.d.ts +0 -21
- package/Libraries/ReactNative/UIManagerProperties.js +0 -3
- package/Libraries/ReactNative/__mocks__/FabricUIManager.js +5 -341
- package/Libraries/ReactNative/getNativeComponentAttributes.js +8 -8
- package/Libraries/ReactNative/renderApplication.js +3 -0
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +862 -1553
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3166 -3510
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3512 -3866
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +829 -1552
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3320 -3680
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3669 -4038
- package/Libraries/Renderer/shims/ReactFabric.js +2 -2
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
- package/Libraries/Renderer/shims/ReactNative.js +2 -3
- package/Libraries/Renderer/shims/ReactNativeTypes.js +24 -3
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +2 -2
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
- package/Libraries/Settings/React-RCTSettings.podspec +2 -2
- package/Libraries/Share/Share.d.ts +16 -10
- package/Libraries/Share/Share.js +14 -15
- package/Libraries/StyleSheet/StyleSheet.d.ts +1 -1
- package/Libraries/StyleSheet/StyleSheet.js +3 -10
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +21 -21
- package/Libraries/StyleSheet/StyleSheetTypes.js +24 -18
- package/Libraries/StyleSheet/flattenStyle.js +1 -0
- package/Libraries/StyleSheet/processFilter.js +132 -0
- package/Libraries/StyleSheet/processTransform.js +18 -3
- package/Libraries/Text/Text/NSTextStorage+FontScaling.m +5 -0
- package/Libraries/Text/Text.js +150 -129
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +13 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.h +0 -1
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +61 -6
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +0 -1
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +2 -2
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +13 -0
- package/Libraries/Text/TextNativeComponent.js +5 -4
- package/Libraries/Text/TextProps.js +6 -6
- package/Libraries/TurboModule/TurboModuleRegistry.js +2 -1
- package/Libraries/Types/CodegenTypes.js +3 -0
- package/Libraries/Utilities/DevLoadingView.js +66 -0
- package/Libraries/Utilities/Dimensions.js +1 -0
- package/Libraries/Utilities/HMRClient.js +36 -8
- package/Libraries/Utilities/HMRClientProdShim.js +1 -0
- package/Libraries/Utilities/Platform.android.js +5 -5
- package/Libraries/Utilities/Platform.d.ts +1 -1
- package/Libraries/Utilities/Platform.flow.js +2 -2
- package/Libraries/Utilities/Platform.ios.js +1 -1
- package/Libraries/Utilities/RCTLog.js +1 -0
- package/Libraries/Utilities/ReactNativeTestTools.js +12 -24
- package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +11 -6
- package/Libraries/Vibration/React-RCTVibration.podspec +2 -2
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +1 -1
- package/Libraries/promiseRejectionTrackingOptions.js +1 -0
- package/README-core.md +5 -5
- package/README.md +76 -41
- package/React/Base/RCTBridge+Inspector.h +1 -1
- package/React/Base/RCTBridge.h +0 -4
- package/React/Base/RCTBridge.mm +59 -30
- package/React/Base/RCTBridgeModule.h +7 -6
- package/React/Base/RCTBridgeModuleDecorator.m +1 -1
- package/React/Base/RCTBundleManager.h +2 -0
- package/React/Base/RCTBundleURLProvider.mm +8 -0
- package/React/Base/RCTCallInvoker.h +27 -0
- package/React/Base/RCTCallInvoker.mm +28 -0
- package/React/Base/RCTCallInvokerModule.h +17 -0
- package/React/Base/RCTConvert.h +18 -0
- package/React/Base/RCTConvert.mm +67 -6
- package/React/Base/RCTDefines.h +0 -9
- package/React/Base/RCTJavaScriptLoader.mm +4 -2
- package/React/Base/RCTModuleData.h +10 -8
- package/React/Base/RCTModuleData.mm +23 -17
- package/React/Base/RCTModuleRegistry.m +6 -1
- package/React/Base/RCTRootView.h +1 -1
- package/React/Base/RCTRootView.m +0 -9
- package/React/Base/RCTRuntimeExecutorModule.h +4 -3
- package/React/Base/RCTUtils.h +4 -4
- package/React/Base/RCTUtils.m +4 -4
- package/React/Base/RCTVersion.m +2 -2
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +3 -4
- package/React/CoreModules/RCTAccessibilityManager+Internal.h +1 -1
- package/React/CoreModules/RCTAppearance.h +1 -0
- package/React/CoreModules/RCTAppearance.mm +20 -1
- package/React/CoreModules/RCTDevSettings.mm +12 -0
- package/React/CoreModules/RCTDeviceInfo.mm +4 -4
- package/React/CoreModules/RCTEventDispatcher.mm +15 -0
- package/React/CoreModules/RCTPerfMonitor.mm +1 -2
- package/React/CoreModules/RCTPlatform.mm +11 -11
- package/React/CoreModules/RCTRedBox.h +0 -18
- package/React/CoreModules/RCTRedBox.mm +1 -38
- package/React/CoreModules/React-CoreModules.podspec +2 -2
- package/React/CxxBridge/NSDataBigString.mm +1 -1
- package/React/CxxBridge/RCTCxxBridge.mm +19 -8
- package/React/CxxBridge/RCTObjcExecutor.mm +1 -1
- package/React/CxxModule/RCTCxxModule.h +1 -1
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +8 -3
- package/React/DevSupport/RCTPausedInDebuggerOverlayController.h +15 -0
- package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +134 -0
- package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +28 -8
- package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +2 -2
- package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +4 -5
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.h +1 -2
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +1 -8
- package/React/Fabric/Mounting/ComponentViews/Root/RCTRootComponentView.mm +0 -5
- package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +2 -2
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +17 -5
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +63 -38
- package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +42 -14
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +80 -45
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +45 -3
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +2 -2
- package/React/Fabric/Mounting/RCTMountingManager.mm +1 -1
- package/React/Fabric/RCTImageResponseDelegate.h +5 -2
- package/React/Fabric/RCTImageResponseObserverProxy.h +3 -3
- package/React/Fabric/RCTImageResponseObserverProxy.mm +5 -4
- package/React/Fabric/RCTScheduler.h +0 -2
- package/React/Fabric/RCTScheduler.mm +7 -4
- package/React/Fabric/RCTSurfacePresenter.mm +1 -22
- package/React/Fabric/Utils/RCTColorSpaceUtils.h +16 -0
- package/React/Fabric/Utils/RCTColorSpaceUtils.mm +23 -0
- package/React/I18n/strings/es.lproj/fbt_language_pack.bin +0 -0
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +1 -1
- package/React/Modules/RCTUIManager.m +0 -18
- package/React/Modules/RCTUIManagerUtils.m +2 -1
- package/React/React-RCTFabric.podspec +8 -3
- package/React/Resources/PrivacyInfo.xcprivacy +29 -0
- package/React/Tests/Text/RCTParagraphComponentViewTests.mm +45 -45
- package/React/Views/RCTActivityIndicatorViewManager.m +0 -3
- package/React/Views/RCTBorderDrawing.m +0 -10
- package/React/Views/RCTFont.mm +3 -1
- package/React/Views/RCTModalHostViewManager.h +0 -6
- package/React/Views/RCTModalHostViewManager.m +0 -17
- package/React/Views/RCTViewManager.m +143 -3
- package/React/Views/ScrollView/RCTScrollView.m +4 -5
- package/React/Views/ScrollView/RCTScrollViewManager.m +1 -2
- package/React-Core.podspec +3 -1
- package/ReactAndroid/api/ReactAndroid.api +1063 -696
- package/ReactAndroid/build.gradle.kts +48 -9
- package/ReactAndroid/cmake-utils/ReactNative-application.cmake +11 -6
- package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +17 -7
- package/ReactAndroid/gradle.properties +1 -4
- package/ReactAndroid/hermes-engine/build.gradle.kts +36 -17
- package/ReactAndroid/publish.gradle +8 -14
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/hermes/unicode/AndroidUnicodeUtils.kt +77 -0
- package/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackageTurboModuleManagerDelegate.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +43 -35
- package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +31 -21
- package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.java +8 -12
- package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +40 -26
- package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +26 -31
- package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +100 -14
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +18 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +22 -5
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +20 -39
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +11 -9
- package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/FrameBasedAnimationDriver.java +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/ModulusAnimatedNode.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +20 -13
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +292 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Callback.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +137 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +28 -22
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +88 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.kt +32 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/FallbackJSBundleLoader.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSExceptionHandler.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.kt +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java +14 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java +15 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/LifecycleEventListener.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressureListener.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArrayInterface.kt +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +69 -154
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.java +59 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMethod.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.kt +40 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapKeySetIterator.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +190 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableType.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerListener.kt +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UnexpectedNativeTypeException.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WindowFocusChangeListener.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.kt +69 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadImpl.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/common/ClassFinder.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.java +9 -4
- package/ReactAndroid/src/main/java/com/facebook/react/common/JavascriptException.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/LifecycleState.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/ReactConstants.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/StandardCharsets.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/SystemClock.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +19 -1
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +43 -22
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +0 -29
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultComponentsRegistry.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +49 -3
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +0 -8
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +21 -7
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +10 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java +22 -21
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +117 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevInternalSettings.kt +114 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +38 -21
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSettingsActivity.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +41 -20
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.kt +39 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +101 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialog.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +73 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PausedInDebuggerOverlayDialogManager.java +75 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerftestDevSupportManager.java +5 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.java +214 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +35 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/WindowOverlayCompat.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/BundleLoadCallback.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevOptionHandler.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSplitBundleCallback.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +127 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorCustomizer.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorType.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PackagerStatusCallback.kt +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PausedInDebuggerOverlayManager.kt +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +40 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.kt +44 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.kt +72 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/BindingImpl.kt +113 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/ComponentFactory.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/CoreComponentsRegistry.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricSoLoader.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +71 -41
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +18 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/SynchronousEvent.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.java +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +16 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +4 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListener.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +53 -33
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +42 -28
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchCommandMountItem.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/FabricNameComponentMapping.kt +45 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +49 -33
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +70 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +2 -5
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +34 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/AndroidChoreographerProvider.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/ChoreographerProvider.kt +32 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +87 -15
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +156 -36
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +32 -8
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +32 -8
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +175 -43
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +32 -8
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/NativeModuleSoLoader.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/interfaces/TurboModuleRegistry.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +5 -13
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/ReactModule.kt +42 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/ReactModuleList.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfo.kt +56 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfoProvider.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +212 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +100 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/AppRegistry.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.kt +97 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.kt +84 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ChoreographerCompat.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +21 -56
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +79 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +158 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +172 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/interfaces/DeveloperSettings.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +85 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +44 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/DevToolsSettingsManagerModule.kt +40 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +67 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +43 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nUtil.kt +101 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +305 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientFactory.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +66 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +185 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +80 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.kt +64 -0
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.kt +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/NativeModulePerfLogger.kt +48 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +31 -57
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessDevSupportManager.java +7 -15
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.java +39 -10
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactStateTracker.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.java +39 -29
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSCInstance.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSRuntimeFactory.kt +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSTimerExecutor.kt +39 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +223 -139
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +57 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +109 -94
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +183 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/cxxreactpackage/CxxReactPackage.kt +3 -14
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Executors.java +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.java +25 -492
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainPackageConfig.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +62 -49
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BindingsInstallerHolder.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModuleWithJSIBindings.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +64 -13
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerInterface.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverBinding.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +102 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +329 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FloatUtil.kt +32 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IViewGroupManager.java +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IllegalViewOperationException.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +127 -15
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +73 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MatrixMathHelper.kt +496 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MeasureSpecAssertions.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +3 -87
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +58 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PointerEvents.kt +50 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactInvalidPropertyException.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.java +12 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +18 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +28 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootView.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +45 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SimpleViewManager.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +203 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +96 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +76 -11
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +47 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +10 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -47
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +3 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +8 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -59
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewDefaults.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewHierarchyDumper.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +305 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +79 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BoxShadowDrawable.kt +102 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +1395 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +21 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +36 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/NativeGestureUtil.kt +44 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +207 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventType.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +32 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +146 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ComputedBorderRadius.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/ExceptionDataHelper.kt +36 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +67 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/RCTLog.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/RNLog.kt +108 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.kt +43 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/ViewUtils.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.kt +86 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.kt +151 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/TraceUpdate.kt +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +41 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +44 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/GlobalImageLoadListener.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.kt +156 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMethod.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.kt +66 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactCallerContextFactory.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageDownloadListener.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +16 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +32 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ScaleTypeStartInside.kt +41 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +73 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +89 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +81 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostHelper.kt +62 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.kt +34 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +149 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +554 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +59 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +10 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerView.java +15 -21
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +76 -46
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +13 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +80 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +8 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +570 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +13 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +174 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEventType.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +7 -196
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +61 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +27 -56
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +5 -22
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +328 -133
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.kt +69 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +79 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactAbsoluteSizeSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactBackgroundColorSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactForegroundColorSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactSpan.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTagSpan.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +58 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +58 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.kt +52 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +14 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +13 -41
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +37 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ColorUtil.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/MeasureUtil.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactClippingViewManager.java +7 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +6 -1422
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +66 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +124 -205
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +28 -19
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +85 -0
- package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +88 -0
- package/ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +5 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +11 -6
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/log.h +1 -1
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedGlobalRef.h +7 -6
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedLocalRef.h +7 -5
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNI.h +1 -1
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +31 -12
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YogaJniException.cpp +1 -1
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YogaJniException.h +2 -2
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/common.cpp +8 -8
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/corefunctions.cpp +5 -5
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/yogajni.cpp +2 -2
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +3 -14
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +1 -3
- package/ReactAndroid/src/main/jni/react/fabric/AsyncEventBeat.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/fabric/Binding.cpp +20 -35
- package/ReactAndroid/src/main/jni/react/fabric/Binding.h +0 -1
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +19 -1
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +1 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +26 -14
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +1 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +211 -43
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +44 -8
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -1
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +15 -2
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +11 -1
- package/ReactAndroid/src/main/jni/react/jni/JExecutor.cpp +18 -0
- package/ReactAndroid/src/main/jni/react/jni/JExecutor.h +21 -0
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -0
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +122 -0
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +76 -0
- package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.h +73 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +5 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +9 -4
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +13 -1
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +2 -0
- package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +3 -4
- package/ReactAndroid/src/main/jni/react/reactperflogger/reactperflogger/JNativeModulePerfLogger.h +1 -1
- package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/CMakeLists.txt +4 -3
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +44 -4
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +2 -2
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +104 -0
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +78 -0
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +29 -18
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.h +9 -2
- package/ReactAndroid/src/main/jni/react/runtime/jni/OnLoad.cpp +2 -0
- package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +1 -0
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.cpp +22 -0
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.h +30 -0
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +42 -30
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +8 -6
- package/ReactAndroid/src/main/jni/react/uimanager/ComponentNameResolverBinding.cpp +59 -0
- package/ReactAndroid/src/main/jni/react/uimanager/ComponentNameResolverBinding.h +29 -0
- package/ReactAndroid/src/main/jni/react/uimanager/OnLoad.cpp +4 -4
- package/ReactAndroid/src/main/jni/react/uimanager/UIConstantsProviderBinding.cpp +66 -0
- package/ReactAndroid/src/main/jni/react/uimanager/UIConstantsProviderBinding.h +83 -0
- package/ReactAndroid/src/main/res/devsupport/drawable/paused_in_debugger_background.xml +27 -0
- package/ReactAndroid/src/main/res/devsupport/drawable/ripple_effect.xml +10 -0
- package/ReactAndroid/src/main/res/devsupport/drawable-hdpi/ic_resume.png +0 -0
- package/ReactAndroid/src/main/res/devsupport/drawable-mdpi/ic_resume.png +0 -0
- package/ReactAndroid/src/main/res/devsupport/drawable-xhdpi/ic_resume.png +0 -0
- package/ReactAndroid/src/main/res/devsupport/drawable-xxhdpi/ic_resume.png +0 -0
- package/ReactAndroid/src/main/res/devsupport/drawable-xxxhdpi/ic_resume.png +0 -0
- package/ReactAndroid/src/main/res/devsupport/layout/paused_in_debugger_view.xml +35 -0
- package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +6 -0
- package/ReactAndroid/src/main/res/views/uimanager/values-es/strings.xml +3 -3
- package/ReactCommon/React-Fabric.podspec +50 -100
- package/ReactCommon/React-FabricComponents.podspec +205 -0
- package/ReactCommon/React-FabricImage.podspec +1 -1
- package/ReactCommon/ReactCommon.podspec +2 -1
- package/ReactCommon/callinvoker/ReactCommon/CallInvoker.h +21 -3
- package/ReactCommon/cxxreact/CMakeLists.txt +4 -4
- package/ReactCommon/cxxreact/ErrorUtils.h +2 -0
- package/ReactCommon/cxxreact/Instance.cpp +69 -30
- package/ReactCommon/cxxreact/Instance.h +7 -7
- package/ReactCommon/cxxreact/JSExecutor.cpp +6 -10
- package/ReactCommon/cxxreact/JSExecutor.h +14 -11
- package/ReactCommon/cxxreact/MoveWrapper.h +1 -1
- package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -4
- package/ReactCommon/cxxreact/PrivacyInfo.xcprivacy +21 -0
- package/ReactCommon/cxxreact/React-cxxreact.podspec +3 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
- package/ReactCommon/cxxreact/SharedProxyCxxModule.h +2 -0
- package/ReactCommon/cxxreact/SystraceSection.h +101 -4
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +14 -38
- package/ReactCommon/hermes/executor/HermesExecutorFactory.h +4 -10
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.cpp +44 -146
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.h +23 -11
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +237 -0
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.h +75 -0
- package/ReactCommon/jsc/JSCRuntime.cpp +1 -2
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +40 -34
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +21 -17
- package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +0 -1
- package/ReactCommon/jsi/React-jsi.podspec +1 -1
- package/ReactCommon/jsi/jsi/decorator.h +14 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +1 -1
- package/ReactCommon/jsi/jsi/jsi.h +6 -1
- package/ReactCommon/jsi/jsi/test/testlib.cpp +32 -0
- package/ReactCommon/jsiexecutor/CMakeLists.txt +1 -1
- package/ReactCommon/jsinspector-modern/CONCEPTS.md +2 -2
- package/ReactCommon/jsinspector-modern/CdpJson.cpp +72 -0
- package/ReactCommon/jsinspector-modern/CdpJson.h +138 -0
- package/ReactCommon/jsinspector-modern/ConsoleMessage.cpp +40 -0
- package/ReactCommon/jsinspector-modern/ConsoleMessage.h +89 -0
- package/ReactCommon/jsinspector-modern/FallbackRuntimeAgentDelegate.cpp +9 -10
- package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.cpp +47 -0
- package/ReactCommon/jsinspector-modern/FallbackRuntimeTargetDelegate.h +47 -0
- package/ReactCommon/jsinspector-modern/ForwardingConsoleMethods.def +38 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +269 -0
- package/ReactCommon/jsinspector-modern/HostAgent.h +109 -0
- package/ReactCommon/jsinspector-modern/HostCommand.h +19 -0
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +231 -0
- package/ReactCommon/jsinspector-modern/HostTarget.h +256 -0
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +28 -30
- package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -10
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +2 -1
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +3 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +0 -1
- package/ReactCommon/jsinspector-modern/InspectorUtilities.h +8 -0
- package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +86 -6
- package/ReactCommon/jsinspector-modern/InstanceAgent.h +9 -2
- package/ReactCommon/jsinspector-modern/InstanceTarget.cpp +1 -1
- package/ReactCommon/jsinspector-modern/InstanceTarget.h +13 -0
- package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
- package/ReactCommon/jsinspector-modern/ReactCdp.h +2 -2
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +16 -24
- package/ReactCommon/jsinspector-modern/RuntimeAgent.h +2 -3
- package/ReactCommon/jsinspector-modern/RuntimeAgentDelegate.h +1 -1
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +8 -1
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +65 -12
- package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +486 -0
- package/ReactCommon/jsinspector-modern/SessionState.h +12 -0
- package/ReactCommon/jsinspector-modern/StackTrace.h +39 -0
- package/ReactCommon/jsinspector-modern/tests/ConsoleApiTest.cpp +851 -0
- package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.h +28 -1
- package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +701 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +26 -5
- package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +0 -1
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +266 -153
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.h +192 -0
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +239 -0
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +78 -0
- package/ReactCommon/jsinspector-modern/tests/ReactNativeMocks.cpp +94 -0
- package/ReactCommon/jsinspector-modern/tests/ReactNativeMocks.h +65 -0
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +13 -15
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.h +8 -7
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +18 -23
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.h +10 -9
- package/ReactCommon/jsinspector-modern/tests/prelude.js.h +636 -0
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +49 -0
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +42 -0
- package/ReactCommon/react/bridging/Base.h +3 -3
- package/ReactCommon/react/bridging/Bridging.h +1 -0
- package/ReactCommon/react/bridging/CallbackWrapper.h +6 -7
- package/ReactCommon/react/bridging/EventEmitter.h +134 -0
- package/ReactCommon/react/bridging/Function.h +22 -8
- package/ReactCommon/react/bridging/LongLivedObject.cpp +18 -4
- package/ReactCommon/react/bridging/LongLivedObject.h +4 -2
- package/ReactCommon/react/bridging/Promise.h +5 -3
- package/ReactCommon/react/bridging/tests/BridgingTest.cpp +112 -2
- package/ReactCommon/react/bridging/tests/BridgingTest.h +6 -6
- package/ReactCommon/react/bridging/tests/ClassTest.cpp +2 -4
- package/ReactCommon/react/debug/react_native_assert.h +2 -0
- package/ReactCommon/react/debug/react_native_expect.h +2 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +63 -15
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +86 -22
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +256 -40
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +40 -16
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +56 -8
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +20 -8
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +15 -16
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +7 -10
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +21 -7
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +9 -5
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +5 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.cpp +3 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +2 -4
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +17 -12
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +6 -0
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTRuntimeExecutor.h +2 -0
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +4 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +51 -34
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleWithJSIBindings.h +20 -0
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +27 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +38 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.h +18 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +51 -0
- package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +28 -0
- package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +355 -0
- package/ReactCommon/react/nativemodule/dom/NativeDOM.h +110 -0
- package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +50 -0
- package/ReactCommon/react/nativemodule/featureflags/CMakeLists.txt +26 -0
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +77 -15
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +39 -10
- package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +48 -0
- package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +26 -0
- package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.cpp +168 -0
- package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.h +42 -0
- package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +49 -0
- package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +89 -0
- package/ReactCommon/react/nativemodule/microtasks/CMakeLists.txt +25 -0
- package/ReactCommon/react/nativemodule/microtasks/NativeMicrotasks.cpp +31 -0
- package/ReactCommon/react/nativemodule/microtasks/NativeMicrotasks.h +27 -0
- package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +48 -0
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +170 -0
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +94 -0
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -1
- package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +2 -1
- package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +64 -50
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleJSIBindings.cpp +31 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleJSIBindings.h +32 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +41 -39
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +2 -1
- package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.java +21 -7
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +2 -2
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +14 -14
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +21 -8
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModulePlugin.h +37 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +167 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +52 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformanceObserver.cpp +123 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformanceObserver.h +91 -0
- package/ReactCommon/react/performance/timeline/BoundedConsumableBuffer.h +247 -0
- package/ReactCommon/react/performance/timeline/CMakeLists.txt +22 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +296 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +193 -0
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +56 -0
- package/ReactCommon/react/performance/timeline/tests/BoundedConsumableBufferTest.cpp +219 -0
- package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +368 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +7 -5
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +2 -1
- package/ReactCommon/react/renderer/animations/conversions.h +2 -0
- package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +1 -1
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +8 -0
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -0
- package/ReactCommon/react/renderer/attributedstring/conversions.h +57 -166
- package/ReactCommon/react/renderer/attributedstring/primitives.h +7 -0
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -1
- package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +27 -0
- package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +6 -15
- package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +35 -6
- package/ReactCommon/react/renderer/components/image/ImageEventEmitter.h +4 -3
- package/ReactCommon/react/renderer/components/image/ImageProps.h +2 -0
- package/ReactCommon/react/renderer/components/image/ImageState.h +1 -4
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +4 -3
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +1 -1
- package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +0 -6
- package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/conversions.h +2 -0
- package/ReactCommon/react/renderer/components/rncore/ComponentDescriptors.cpp +29 -0
- package/ReactCommon/react/renderer/components/rncore/ComponentDescriptors.h +31 -0
- package/ReactCommon/react/renderer/components/rncore/EventEmitters.cpp +132 -0
- package/ReactCommon/react/renderer/components/rncore/EventEmitters.h +169 -0
- package/ReactCommon/react/renderer/components/rncore/Props.cpp +155 -0
- package/ReactCommon/react/renderer/components/rncore/Props.h +396 -0
- package/ReactCommon/react/renderer/components/rncore/RCTComponentViewHelpers.h +293 -0
- package/ReactCommon/react/renderer/components/rncore/ShadowNodes.cpp +24 -0
- package/ReactCommon/react/renderer/components/rncore/ShadowNodes.h +109 -0
- package/ReactCommon/react/renderer/components/rncore/States.cpp +16 -0
- package/ReactCommon/react/renderer/components/rncore/States.h +113 -0
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +1 -1
- package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewComponentDescriptor.h +0 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +21 -16
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +16 -17
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +32 -6
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +3 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +8 -3
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +0 -5
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +12 -0
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +34 -21
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +5 -1
- package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +1 -1
- package/ReactCommon/react/renderer/components/text/ParagraphState.h +7 -6
- package/ReactCommon/react/renderer/components/text/conversions.h +2 -9
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +186 -0
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +68 -0
- package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +3 -6
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +2 -116
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +2 -22
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +20 -2
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +11 -5
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +4 -15
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputEventEmitter.cpp +23 -54
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputEventEmitter.h +28 -34
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +1 -77
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +3 -33
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +20 -2
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +4 -0
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +98 -24
- package/ReactCommon/react/renderer/components/view/BaseViewProps.h +13 -1
- package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +20 -3
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +14 -64
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +0 -2
- package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +6 -3
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +6 -1
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +21 -14
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/view/conversions.h +278 -50
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +0 -4
- package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +0 -4
- package/ReactCommon/react/renderer/components/view/primitives.h +40 -2
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +2 -2
- package/ReactCommon/react/renderer/consistency/CMakeLists.txt +20 -0
- package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +45 -0
- package/ReactCommon/react/renderer/consistency/ScopedShadowTreeRevisionLock.h +54 -0
- package/ReactCommon/react/renderer/consistency/ShadowTreeRevisionConsistencyManager.cpp +14 -0
- package/ReactCommon/react/renderer/consistency/ShadowTreeRevisionConsistencyManager.h +24 -0
- package/ReactCommon/react/renderer/core/CMakeLists.txt +2 -0
- package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +3 -2
- package/ReactCommon/react/renderer/core/ComponentDescriptor.h +3 -3
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +1 -0
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +3 -2
- package/ReactCommon/react/renderer/core/ConcreteState.h +17 -15
- package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +6 -1
- package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +29 -2
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +25 -38
- package/ReactCommon/react/renderer/core/EventDispatcher.h +19 -14
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +6 -13
- package/ReactCommon/react/renderer/core/EventEmitter.h +14 -4
- package/ReactCommon/react/renderer/core/EventLogger.h +1 -3
- package/ReactCommon/react/renderer/core/EventQueue.cpp +25 -2
- package/ReactCommon/react/renderer/core/EventQueue.h +14 -4
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +5 -3
- package/ReactCommon/react/renderer/core/EventQueueProcessor.h +3 -1
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +27 -76
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +7 -1
- package/ReactCommon/react/renderer/core/PropsMacros.h +1 -1
- package/ReactCommon/react/renderer/core/RawProps.cpp +1 -1
- package/ReactCommon/react/renderer/core/RawProps.h +1 -1
- package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +1 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +1 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.h +1 -1
- package/ReactCommon/react/renderer/core/ReactPrimitives.h +0 -2
- package/ReactCommon/react/renderer/core/ReactRootViewTagGenerator.cpp +22 -0
- package/ReactCommon/react/renderer/core/ReactRootViewTagGenerator.h +16 -0
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +61 -16
- package/ReactCommon/react/renderer/core/ShadowNode.h +61 -4
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +2 -4
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +3 -4
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +0 -11
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.h +2 -24
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +5 -2
- package/ReactCommon/react/renderer/core/State.h +0 -1
- package/ReactCommon/react/renderer/core/propsConversions.h +6 -6
- package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +19 -5
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +12 -1
- package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +140 -0
- package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +155 -106
- package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +9 -12
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +118 -8
- package/ReactCommon/react/renderer/core/tests/TestComponent.h +2 -7
- package/ReactCommon/react/renderer/css/CSSAngleUnit.h +66 -0
- package/ReactCommon/react/renderer/css/CSSColorUtils.h +373 -0
- package/ReactCommon/react/renderer/css/CSSDeclaredStyle.h +43 -13
- package/ReactCommon/react/renderer/css/CSSKeywords.h +9 -13
- package/ReactCommon/react/renderer/css/CSSLengthUnit.h +1 -1
- package/ReactCommon/react/renderer/css/CSSProperties.h +280 -80
- package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +322 -0
- package/ReactCommon/react/renderer/css/CSSToken.h +84 -0
- package/ReactCommon/react/renderer/css/CSSTokenizer.h +98 -86
- package/ReactCommon/react/renderer/css/CSSValue.h +12 -197
- package/ReactCommon/react/renderer/css/CSSValueParser.h +317 -0
- package/ReactCommon/react/renderer/css/CSSValueVariant.h +267 -0
- package/ReactCommon/react/renderer/css/tests/CSSDeclaredStyleTest.cpp +22 -9
- package/ReactCommon/react/renderer/css/tests/CSSSyntaxParserTest.cpp +269 -0
- package/ReactCommon/react/renderer/css/tests/CSSTokenizerTest.cpp +150 -82
- package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +419 -0
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +8 -8
- package/ReactCommon/react/renderer/debug/flags.h +7 -9
- package/ReactCommon/react/renderer/dom/CMakeLists.txt +26 -0
- package/ReactCommon/react/renderer/dom/DOM.cpp +574 -0
- package/ReactCommon/react/renderer/dom/DOM.h +123 -0
- package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +1 -1
- package/ReactCommon/react/renderer/element/Element.h +4 -4
- package/ReactCommon/react/renderer/graphics/ColorComponents.cpp +23 -0
- package/ReactCommon/react/renderer/graphics/ColorComponents.h +6 -0
- package/ReactCommon/react/renderer/graphics/Filter.h +61 -0
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -1
- package/ReactCommon/react/renderer/graphics/Transform.cpp +96 -32
- package/ReactCommon/react/renderer/graphics/Transform.h +8 -5
- package/ReactCommon/react/renderer/graphics/ValueUnit.h +11 -0
- package/ReactCommon/react/renderer/graphics/fromRawValueShared.h +18 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +6 -0
- package/ReactCommon/react/renderer/graphics/tests/TransformTest.cpp +44 -0
- package/ReactCommon/react/renderer/imagemanager/ImageResponse.cpp +7 -0
- package/ReactCommon/react/renderer/imagemanager/ImageResponse.h +9 -0
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserver.h +3 -2
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +10 -5
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +11 -2
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +4 -3
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +3 -2
- package/ReactCommon/react/renderer/imagemanager/primitives.h +7 -0
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +8 -0
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +3 -0
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +9 -0
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +1 -1
- package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +21 -0
- package/ReactCommon/react/renderer/mounting/CMakeLists.txt +3 -1
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +55 -99
- package/ReactCommon/react/renderer/mounting/Differentiator.h +2 -9
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +38 -25
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +6 -4
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +81 -84
- package/ReactCommon/react/renderer/mounting/ShadowView.cpp +0 -10
- package/ReactCommon/react/renderer/mounting/ShadowView.h +9 -25
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +313 -0
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +54 -0
- package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +106 -0
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +1 -1
- package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +2 -2
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +3 -5
- package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +174 -3
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +726 -98
- package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +69 -0
- package/ReactCommon/react/renderer/mounting/updateMountedFlag.h +19 -0
- package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +25 -0
- package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +200 -0
- package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.h +63 -0
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +7 -1
- package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +1 -1
- package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +1 -1
- package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +20 -5
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +27 -9
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +3 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +5 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +3 -3
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +67 -24
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +27 -10
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +131 -61
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +29 -12
- package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +4 -4
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +111 -12
- package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +2 -2
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +1 -2
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +2 -0
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +3 -0
- package/ReactCommon/react/renderer/scheduler/InspectorData.h +2 -0
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +27 -14
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +5 -0
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +1 -2
- package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +0 -6
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +1 -1
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +1 -1
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutContext.h +4 -4
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +12 -150
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -16
- package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +8 -9
- package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +10 -7
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +47 -2
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +3 -9
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +83 -87
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +1 -7
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +3 -24
- package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +7 -2
- package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +1 -1
- package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +1 -0
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +86 -170
- package/ReactCommon/react/renderer/uimanager/UIManager.h +18 -14
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +117 -695
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +1 -0
- package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +26 -0
- package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.cpp +29 -0
- package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.h +35 -0
- package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.cpp +90 -0
- package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.h +54 -0
- package/ReactCommon/react/renderer/uimanager/consistency/ShadowTreeRevisionProvider.h +27 -0
- package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +395 -0
- package/ReactCommon/react/renderer/uimanager/primitives.h +9 -77
- package/ReactCommon/react/runtime/BridgelessNativeMethodCallInvoker.cpp +2 -2
- package/ReactCommon/react/runtime/BridgelessNativeMethodCallInvoker.h +4 -2
- package/ReactCommon/react/runtime/BufferedRuntimeExecutor.cpp +1 -1
- package/ReactCommon/react/runtime/BufferedRuntimeExecutor.h +2 -1
- package/ReactCommon/react/runtime/JSRuntimeFactory.cpp +6 -10
- package/ReactCommon/react/runtime/JSRuntimeFactory.h +16 -8
- package/ReactCommon/react/runtime/ReactInstance.cpp +105 -73
- package/ReactCommon/react/runtime/ReactInstance.h +7 -15
- package/ReactCommon/react/runtime/TimerManager.cpp +81 -105
- package/ReactCommon/react/runtime/TimerManager.h +11 -34
- package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +17 -47
- package/ReactCommon/react/runtime/nativeviewconfig/LegacyUIManagerConstantsProviderBinding.cpp +4 -4
- package/ReactCommon/react/runtime/nativeviewconfig/LegacyUIManagerConstantsProviderBinding.h +2 -4
- package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +1 -0
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +0 -6
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +55 -32
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +1 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +18 -42
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTLegacyUIManagerConstantsProvider.mm +1 -2
- package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +10 -13
- package/ReactCommon/react/test_utils/ios/Shims/ShimRCTInstance.mm +1 -1
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +3 -3
- package/ReactCommon/react/utils/ContextContainer.h +1 -1
- package/ReactCommon/react/utils/CoreFeatures.cpp +0 -4
- package/ReactCommon/react/utils/CoreFeatures.h +0 -16
- package/ReactCommon/react/utils/ManagedObjectWrapper.h +1 -1
- package/ReactCommon/react/utils/OnScopeExit.h +36 -0
- package/ReactCommon/react/utils/SimpleThreadSafeCache.h +2 -0
- package/ReactCommon/react/utils/fnv1a.h +14 -1
- package/ReactCommon/react/utils/jsi-utils.cpp +39 -0
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -0
- package/ReactCommon/reactperflogger/reactperflogger/HermesPerfettoDataSource.cpp +120 -0
- package/ReactCommon/reactperflogger/reactperflogger/HermesPerfettoDataSource.h +34 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp +56 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.h +22 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoCategories.cpp +14 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoCategories.h +18 -0
- package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +0 -40
- package/ReactCommon/yoga/Yoga.podspec +2 -3
- package/ReactCommon/yoga/cmake/project-defaults.cmake +0 -2
- package/ReactCommon/yoga/yoga/YGConfig.h +4 -4
- package/ReactCommon/yoga/yoga/YGMacros.h +6 -0
- package/ReactCommon/yoga/yoga/YGNode.cpp +2 -2
- package/ReactCommon/yoga/yoga/YGNode.h +4 -4
- package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +5 -0
- package/ReactCommon/yoga/yoga/YGNodeStyle.h +2 -0
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +2 -0
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.h +9 -9
- package/ReactCommon/yoga/yoga/algorithm/Align.h +43 -0
- package/ReactCommon/yoga/yoga/algorithm/BoundAxis.h +5 -5
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +200 -178
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +16 -16
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +16 -6
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +4 -1
- package/ReactCommon/yoga/yoga/algorithm/PixelGrid.h +7 -7
- package/ReactCommon/yoga/yoga/config/Config.cpp +0 -4
- package/ReactCommon/yoga/yoga/config/Config.h +3 -3
- package/ReactCommon/yoga/yoga/debug/Log.h +1 -1
- package/ReactCommon/yoga/yoga/event/event.cpp +2 -2
- package/ReactCommon/yoga/yoga/event/event.h +7 -4
- package/ReactCommon/yoga/yoga/node/Node.cpp +57 -35
- package/ReactCommon/yoga/yoga/node/Node.h +15 -15
- package/ReactCommon/yoga/yoga/style/SmallValueBuffer.h +3 -3
- package/ReactCommon/yoga/yoga/style/Style.h +2 -4
- package/ReactCommon/yoga/yoga/style/StyleValuePool.h +2 -2
- package/build.gradle.kts +2 -0
- package/cli.js +133 -4
- package/gradle/libs.versions.toml +4 -4
- package/jest/mockComponent.js +7 -0
- package/jest/renderer.js +25 -14
- package/jest/setup.js +19 -13
- package/package.json +23 -23
- package/react-native.config.js +54 -22
- package/rn-get-polyfills.js +1 -0
- package/scripts/bundle.js +69 -0
- package/scripts/cocoapods/autolinking.rb +205 -0
- package/scripts/cocoapods/autolinking_utils.rb +25 -0
- package/scripts/cocoapods/codegen_utils.rb +7 -7
- package/scripts/cocoapods/fabric.rb +1 -0
- package/scripts/cocoapods/new_architecture.rb +1 -1
- package/scripts/cocoapods/spm.rb +94 -0
- package/scripts/cocoapods/utils.rb +8 -19
- package/scripts/codegen/generate-artifacts-executor.js +64 -23
- package/scripts/hermes/hermes-utils.js +24 -3
- package/scripts/hermes/prepare-hermes-for-build.js +2 -0
- package/scripts/react-native-xcode.sh +12 -3
- package/scripts/react_native_pods.rb +29 -20
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +8 -2
- package/sdks/hermes-engine/utils/build-apple-framework.sh +10 -4
- package/sdks/hermes-engine/utils/build-ios-framework.sh +1 -1
- package/sdks/hermesc/linux64-bin/hermesc +0 -0
- package/sdks/hermesc/osx-bin/hermes +0 -0
- package/sdks/hermesc/osx-bin/hermes-lit +1 -1
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
- package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
- package/src/private/core/composeStyles.js +27 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +93 -33
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +56 -0
- package/src/private/fusebox/README.md +12 -0
- package/src/private/fusebox/setUpFuseboxReactDevToolsDispatcher.js +108 -0
- package/src/private/specs/modules/NativeBlobModule.js +4 -2
- package/src/private/specs/modules/NativeDevSettings.js +1 -0
- package/src/private/specs/modules/NativePlatformConstantsAndroid.js +1 -1
- package/src/private/specs/modules/NativePlatformConstantsIOS.js +1 -1
- package/src/private/specs/modules/NativePushNotificationManagerIOS.js +0 -4
- package/src/private/specs/modules/NativeUIManager.js +0 -7
- package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +24 -24
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +11 -14
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +2 -3
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +24 -54
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +5 -13
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +468 -0
- package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +413 -0
- package/src/private/webapis/dom/oldstylecollections/DOMRectList.js +4 -4
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +4 -4
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +5 -5
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +34 -0
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +21 -0
- package/src/private/webapis/performance/EventCounts.js +1 -1
- package/src/private/webapis/performance/MemoryInfo.js +9 -9
- package/src/private/webapis/performance/Performance.js +10 -56
- package/src/private/webapis/performance/PerformanceObserver.js +30 -22
- package/src/private/webapis/performance/RawPerformanceEntry.js +2 -7
- package/src/private/webapis/performance/ReactNativeStartupTiming.js +18 -18
- package/src/private/webapis/performance/UserTiming.js +63 -0
- package/src/private/webapis/performance/specs/NativePerformance.js +34 -0
- package/src/private/webapis/performance/specs/NativePerformanceObserver.js +61 -0
- package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +67 -0
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +127 -0
- package/third-party-podspecs/RCT-Folly/PrivacyInfo.xcprivacy +21 -0
- package/third-party-podspecs/RCT-Folly.podspec +2 -0
- package/third-party-podspecs/boost/PrivacyInfo.xcprivacy +29 -0
- package/third-party-podspecs/boost.podspec +7 -3
- package/third-party-podspecs/glog/PrivacyInfo.xcprivacy +21 -0
- package/third-party-podspecs/glog.podspec +2 -13
- package/types/modules/globals.d.ts +4 -0
- package/Libraries/Components/View/ReactNativeViewViewConfigAppleTV.js +0 -20
- package/Libraries/IntersectionObserver/NativeIntersectionObserver.h +0 -91
- package/Libraries/MutationObserver/NativeMutationObserver.cpp +0 -164
- package/Libraries/MutationObserver/NativeMutationObserver.h +0 -92
- package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -13
- package/Libraries/Utilities/LoadingView.android.js +0 -44
- package/Libraries/Utilities/LoadingView.ios.js +0 -50
- package/Libraries/Utilities/LoadingView.js +0 -16
- package/React/Views/RCTSegmentedControl.h +0 -18
- package/React/Views/RCTSegmentedControl.m +0 -68
- package/React/Views/RCTSegmentedControlManager.h +0 -12
- package/React/Views/RCTSegmentedControlManager.m +0 -36
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.java +0 -29
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -13
- package/ReactAndroid/src/main/java/com/facebook/hermes/unicode/AndroidUnicodeUtils.java +0 -82
- package/ReactAndroid/src/main/java/com/facebook/react/animated/ModulusAnimatedNode.java +0 -50
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Callback.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +0 -156
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.java +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSExceptionHandler.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModule.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleHolder.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModulePackage.java +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleProvider.java +0 -13
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleRegistry.java +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleSpec.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleType.java +0 -17
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.java +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/LifecycleEventListener.java +0 -50
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.java +0 -14
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressureListener.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArrayInterface.java +0 -13
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.java +0 -14
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMethod.java +0 -38
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.java +0 -55
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapKeySetIterator.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java +0 -293
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableType.java +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +0 -53
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.java +0 -17
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UnexpectedNativeTypeException.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WindowFocusChangeListener.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableArray.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableMap.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.java +0 -81
- package/ReactAndroid/src/main/java/com/facebook/react/common/JavascriptException.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/common/LifecycleState.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/common/ReactConstants.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/common/StandardCharsets.java +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/common/SystemClock.java +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +0 -113
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevInternalSettings.java +0 -137
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSettingsActivity.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +0 -207
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.java +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.java +0 -104
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialog.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.java +0 -93
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +0 -90
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/WindowOverlayCompat.java +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/BundleLoadCallback.java +0 -12
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.java +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.java +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevOptionHandler.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSplitBundleCallback.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +0 -131
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorCustomizer.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorType.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/PackagerStatusCallback.java +0 -12
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.java +0 -40
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.java +0 -44
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/.clang-tidy +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +0 -69
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/BindingImpl.java +0 -121
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/ComponentFactory.java +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/CoreComponentsRegistry.java +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricSoLoader.java +0 -34
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.java +0 -43
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.java +0 -54
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.java +0 -14
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchCommandMountItem.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.java +0 -47
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.java +0 -47
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/FabricNameComponentMapping.java +0 -52
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.java +0 -60
- package/ReactAndroid/src/main/java/com/facebook/react/internal/AndroidChoreographerProvider.java +0 -41
- package/ReactAndroid/src/main/java/com/facebook/react/internal/ChoreographerProvider.java +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/.clang-tidy +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.java +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/ReactModule.java +0 -53
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/ReactModuleList.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfo.java +0 -93
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfoProvider.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/modules/.clang-tidy +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +0 -238
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.java +0 -125
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/AppRegistry.java +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +0 -120
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.java +0 -102
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.java +0 -53
- package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.java +0 -64
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +0 -106
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.java +0 -111
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.java +0 -169
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.java +0 -225
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/interfaces/DeveloperSettings.java +0 -42
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +0 -109
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java +0 -63
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/DevToolsSettingsManagerModule.java +0 -53
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +0 -61
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nUtil.java +0 -98
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +0 -319
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.java +0 -75
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +0 -210
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.java +0 -98
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.java +0 -72
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/NotificationOnlyHandler.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/NativeModulePerfLogger.java +0 -58
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/.clang-tidy +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BoltsFutureTask.java +0 -93
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactStateTracker.java +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSCInstance.java +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSRuntimeFactory.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSTimerExecutor.java +0 -50
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.java +0 -253
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/AggregateException.java +0 -129
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/AndroidExecutors.java +0 -137
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/BoltsExecutors.java +0 -120
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/CancellationToken.java +0 -74
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/CancellationTokenRegistration.java +0 -60
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/CancellationTokenSource.java +0 -216
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Capture.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainPackageConfig.java +0 -38
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.java +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.java +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverManager.java +0 -41
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +0 -95
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FloatUtil.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.java +0 -40
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IllegalViewOperationException.java +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MatrixMathHelper.java +0 -539
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MeasureSpecAssertions.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +0 -58
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PointerEvents.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactInvalidPropertyException.java +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.java +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.java +0 -49
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SimpleViewManager.java +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.java +0 -197
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderManager.java +0 -73
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewDefaults.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +0 -334
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.java +0 -67
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/NativeGestureUtil.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +0 -249
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventType.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.java +0 -40
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.java +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.java +0 -49
- package/ReactAndroid/src/main/java/com/facebook/react/util/ExceptionDataHelper.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.java +0 -74
- package/ReactAndroid/src/main/java/com/facebook/react/util/RCTLog.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/util/RNLog.java +0 -115
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/ViewUtils.java +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.java +0 -97
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.java +0 -162
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/TraceUpdate.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +0 -49
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/GlobalImageLoadListener.java +0 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java +0 -176
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMethod.java +0 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java +0 -81
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactCallerContextFactory.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageDownloadListener.java +0 -80
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ScaleTypeStartInside.java +0 -40
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +0 -92
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.java +0 -105
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java +0 -83
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostHelper.java +0 -65
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +0 -180
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +0 -638
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.java +0 -42
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.java +0 -42
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.java +0 -81
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.java +0 -34
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +0 -601
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +0 -183
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEventType.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +0 -52
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/BasicTextAttributeProvider.kt +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.java +0 -64
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/EffectiveTextAttributeProvider.kt +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/HierarchicTextAttributeProvider.kt +0 -63
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +0 -604
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutUtils.kt +0 -379
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragment.kt +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragmentList.kt +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/MapBufferTextFragment.kt +0 -42
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/MapBufferTextFragmentList.kt +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/TextFragment.kt +0 -29
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/TextFragmentList.kt +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.java +0 -66
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.java +0 -93
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactAbsoluteSizeSpan.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactBackgroundColorSpan.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.java +0 -69
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactForegroundColorSpan.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactSpan.java +0 -14
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTagSpan.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.java +0 -64
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.java +0 -59
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.java +0 -67
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.java +0 -41
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ColorUtil.java +0 -75
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/MeasureUtil.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.java +0 -46
- package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.java +0 -89
- package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.java +0 -117
- package/ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.java +0 -14
- package/ReactAndroid/src/main/jni/first-party/.clang-tidy +0 -6
- package/ReactAndroid/src/main/jni/first-party/yogajni/.clang-tidy +0 -5
- package/ReactAndroid/src/main/jni/react/hermes/.clang-tidy +0 -6
- package/ReactAndroid/src/main/jni/react/jni/.clang-tidy +0 -6
- package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/.clang-tidy +0 -3
- package/ReactAndroid/src/main/jni/react/reactperflogger/reactperflogger/.clang-tidy +0 -6
- package/ReactAndroid/src/main/jni/react/reactperflogger/reactperflogger/OnLoad.cpp +0 -14
- package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/ReactCommon/OnLoad.cpp +0 -14
- package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/.clang-tidy +0 -20
- package/ReactAndroid/src/main/jni/react/runtime/jni/.clang-tidy +0 -20
- package/ReactAndroid/src/main/jni/react/uimanager/ComponentNameResolverManager.cpp +0 -74
- package/ReactAndroid/src/main/jni/react/uimanager/ComponentNameResolverManager.h +0 -52
- package/ReactAndroid/src/main/jni/react/uimanager/UIConstantsProviderManager.cpp +0 -95
- package/ReactAndroid/src/main/jni/react/uimanager/UIConstantsProviderManager.h +0 -113
- package/ReactCommon/.clang-tidy +0 -7
- package/ReactCommon/butter/.clang-tidy +0 -6
- package/ReactCommon/butter/CMakeLists.txt +0 -21
- package/ReactCommon/butter/butter.h +0 -76
- package/ReactCommon/butter/map.h +0 -45
- package/ReactCommon/callinvoker/.clang-tidy +0 -6
- package/ReactCommon/cxxreact/.clang-tidy +0 -6
- package/ReactCommon/hermes/.clang-tidy +0 -6
- package/ReactCommon/jsc/.clang-tidy +0 -6
- package/ReactCommon/jsengineinstance/.clang-tidy +0 -6
- package/ReactCommon/jsi/.clang-tidy +0 -6
- package/ReactCommon/jsiexecutor/.clang-tidy +0 -6
- package/ReactCommon/jsinspector-modern/.clang-tidy +0 -6
- package/ReactCommon/jsinspector-modern/PageAgent.cpp +0 -153
- package/ReactCommon/jsinspector-modern/PageAgent.h +0 -89
- package/ReactCommon/jsinspector-modern/PageTarget.cpp +0 -166
- package/ReactCommon/jsinspector-modern/PageTarget.h +0 -190
- package/ReactCommon/jsinspector-modern/Parsing.cpp +0 -32
- package/ReactCommon/jsinspector-modern/Parsing.h +0 -69
- package/ReactCommon/jsinspector-modern/tests/PageTargetTest.cpp +0 -517
- package/ReactCommon/react/config/.clang-tidy +0 -6
- package/ReactCommon/react/nativemodule/.clang-tidy +0 -6
- package/ReactCommon/react/renderer/.clang-tidy +0 -195
- package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +0 -45
- package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +0 -34
- package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +0 -37
- package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.cpp +0 -100
- package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.h +0 -94
- package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +0 -52
- package/ReactCommon/react/renderer/components/text/tests/TextTest.cpp +0 -14
- package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +0 -20
- package/ReactCommon/react/renderer/core/BatchedEventQueue.h +0 -28
- package/ReactCommon/react/renderer/core/EventLogger.cpp +0 -22
- package/ReactCommon/react/renderer/core/EventPriority.h +0 -24
- package/ReactCommon/react/renderer/core/UnbatchedEventQueue.cpp +0 -17
- package/ReactCommon/react/renderer/core/UnbatchedEventQueue.h +0 -25
- package/ReactCommon/react/renderer/css/CSSParser.h +0 -220
- package/ReactCommon/react/renderer/css/tests/CSSParserTest.cpp +0 -317
- package/ReactCommon/react/renderer/debug/SystraceSection.h +0 -59
- package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +0 -313
- package/ReactCommon/react/renderer/mounting/StubViewTree.h +0 -54
- package/ReactCommon/react/renderer/mounting/stubs.cpp +0 -98
- package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +0 -59
- package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +0 -45
- package/ReactCommon/react/renderer/timeline/Timeline.cpp +0 -120
- package/ReactCommon/react/renderer/timeline/Timeline.h +0 -60
- package/ReactCommon/react/renderer/timeline/TimelineController.cpp +0 -74
- package/ReactCommon/react/renderer/timeline/TimelineController.h +0 -75
- package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +0 -23
- package/ReactCommon/react/renderer/timeline/TimelineFrame.h +0 -44
- package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +0 -95
- package/ReactCommon/react/renderer/timeline/TimelineHandler.h +0 -78
- package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +0 -30
- package/ReactCommon/react/renderer/timeline/TimelineSnapshot.h +0 -32
- package/ReactCommon/react/runtime/.clang-tidy +0 -17
- package/ReactCommon/react/runtime/BridgelessJSCallInvoker.cpp +0 -29
- package/ReactCommon/react/runtime/BridgelessJSCallInvoker.h +0 -28
- package/ReactCommon/react/utils/.clang-tidy +0 -6
- package/ReactCommon/react/utils/jsi.cpp +0 -39
- package/ReactCommon/reactperflogger/.clang-tidy +0 -6
- package/ReactCommon/runtimeexecutor/.clang-tidy +0 -6
- package/ReactCommon/yoga/.clang-tidy +0 -5
- package/jest/ReactNativeInternalFeatureFlagsMock.js +0 -13
- package/local-cli/cli.js +0 -18
- package/scripts/cocoapods/FlipperConfiguration.rb +0 -31
- package/scripts/native_modules.rb +0 -6
- package/src/private/featureflags/NativeReactNativeFeatureFlags.js +0 -44
- package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +0 -92
- package/src/private/specs/modules/NativeAnimationsDebugModule.js +0 -20
- package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +0 -85
- package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +0 -80
- package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +0 -161
- package/src/private/webapis/performance/BoundedConsumableBuffer.h +0 -244
- package/src/private/webapis/performance/NativePerformance.cpp +0 -95
- package/src/private/webapis/performance/NativePerformance.h +0 -60
- package/src/private/webapis/performance/NativePerformance.js +0 -33
- package/src/private/webapis/performance/NativePerformanceObserver.cpp +0 -140
- package/src/private/webapis/performance/NativePerformanceObserver.h +0 -98
- package/src/private/webapis/performance/NativePerformanceObserver.js +0 -61
- package/src/private/webapis/performance/PerformanceEntryReporter.cpp +0 -470
- package/src/private/webapis/performance/PerformanceEntryReporter.h +0 -207
- package/src/private/webapis/performance/__mocks__/NativePerformance.js +0 -67
- package/src/private/webapis/performance/__mocks__/NativePerformanceObserver.js +0 -128
- package/src/private/webapis/performance/__tests__/BoundedConsumableBufferTest.cpp +0 -201
- package/src/private/webapis/performance/__tests__/EventCounts-test.js +0 -116
- package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +0 -82
- package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +0 -108
- package/src/private/webapis/performance/__tests__/Performance-test.js +0 -117
- package/src/private/webapis/performance/__tests__/PerformanceEntryReporterTest.cpp +0 -373
- package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +0 -208
- package/template/App.tsx +0 -118
- package/template/Gemfile +0 -9
- package/template/README.md +0 -79
- package/template/__tests__/App.test.tsx +0 -17
- package/template/_bundle/config +0 -2
- package/template/_eslintrc.js +0 -4
- package/template/_gitignore +0 -74
- package/template/_prettierrc.js +0 -7
- package/template/_watchmanconfig +0 -1
- package/template/android/app/build.gradle +0 -121
- package/template/android/app/debug.keystore +0 -0
- package/template/android/app/proguard-rules.pro +0 -10
- package/template/android/app/src/debug/AndroidManifest.xml +0 -9
- package/template/android/app/src/main/AndroidManifest.xml +0 -32
- package/template/android/app/src/main/java/com/helloworld/MainActivity.kt +0 -22
- package/template/android/app/src/main/java/com/helloworld/MainApplication.kt +0 -43
- package/template/android/app/src/main/res/drawable/rn_edit_text_material.xml +0 -37
- package/template/android/app/src/main/res/drawable/tv_banner.png +0 -0
- package/template/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/template/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
- package/template/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/template/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
- package/template/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/template/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
- package/template/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/template/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
- package/template/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/template/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
- package/template/android/app/src/main/res/values/strings.xml +0 -3
- package/template/android/app/src/main/res/values/styles.xml +0 -9
- package/template/android/build.gradle +0 -21
- package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/template/android/gradle/wrapper/gradle-wrapper.properties +0 -7
- package/template/android/gradle.properties +0 -41
- package/template/android/gradlew +0 -249
- package/template/android/gradlew.bat +0 -92
- package/template/android/settings.gradle +0 -4
- package/template/app.json +0 -4
- package/template/babel.config.js +0 -3
- package/template/index.js +0 -9
- package/template/ios/HelloWorld/AppDelegate.h +0 -6
- package/template/ios/HelloWorld/AppDelegate.mm +0 -31
- package/template/ios/HelloWorld/Images.xcassets/AppIcon.appiconset/Contents.json +0 -53
- package/template/ios/HelloWorld/Images.xcassets/Contents.json +0 -6
- package/template/ios/HelloWorld/Info.plist +0 -52
- package/template/ios/HelloWorld/LaunchScreen.storyboard +0 -47
- package/template/ios/HelloWorld/PrivacyInfo.xcprivacy +0 -38
- package/template/ios/HelloWorld/main.m +0 -10
- package/template/ios/HelloWorld-tvOS/Info.plist +0 -53
- package/template/ios/HelloWorld-tvOSTests/Info.plist +0 -24
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +0 -1154
- package/template/ios/HelloWorld.xcodeproj/xcshareddata/xcschemes/HelloWorld-tvOS.xcscheme +0 -88
- package/template/ios/HelloWorld.xcodeproj/xcshareddata/xcschemes/HelloWorld.xcscheme +0 -88
- package/template/ios/HelloWorldTests/HelloWorldTests.m +0 -66
- package/template/ios/HelloWorldTests/Info.plist +0 -24
- package/template/ios/Podfile +0 -61
- package/template/ios/_xcode.env +0 -11
- package/template/jest.config.js +0 -3
- package/template/metro.config.js +0 -32
- package/template/package.json +0 -38
- package/template/react-native.config.js +0 -12
- package/template/tsconfig.json +0 -3
- package/template.config.js +0 -12
- /package/{Libraries/IntersectionObserver → ReactCommon/react/nativemodule/intersectionobserver}/NativeIntersectionObserver.cpp +0 -0
- /package/ReactCommon/react/renderer/mounting/{StubView.cpp → stubs/StubView.cpp} +0 -0
- /package/ReactCommon/react/renderer/mounting/{StubView.h → stubs/StubView.h} +0 -0
- /package/ReactCommon/react/renderer/mounting/{stubs.h → stubs/stubs.h} +0 -0
- /package/ReactCommon/react/utils/{jsi.h → jsi-utils.h} +0 -0
|
@@ -34,6 +34,7 @@ import java.lang.ref.WeakReference;
|
|
|
34
34
|
@Nullsafe(Nullsafe.Mode.LOCAL)
|
|
35
35
|
class MaintainVisibleScrollPositionHelper<ScrollViewT extends ViewGroup & HasSmoothScroll>
|
|
36
36
|
implements UIManagerListener {
|
|
37
|
+
|
|
37
38
|
private final ScrollViewT mScrollView;
|
|
38
39
|
private final boolean mHorizontal;
|
|
39
40
|
private @Nullable Config mConfig;
|
|
@@ -42,6 +43,7 @@ class MaintainVisibleScrollPositionHelper<ScrollViewT extends ViewGroup & HasSmo
|
|
|
42
43
|
private boolean mListening = false;
|
|
43
44
|
|
|
44
45
|
public static class Config {
|
|
46
|
+
|
|
45
47
|
public final int minIndexForVisible;
|
|
46
48
|
public final @Nullable Integer autoScrollToTopThreshold;
|
|
47
49
|
|
|
@@ -116,7 +118,7 @@ class MaintainVisibleScrollPositionHelper<ScrollViewT extends ViewGroup & HasSmo
|
|
|
116
118
|
int deltaX = newFrame.left - mPrevFirstVisibleFrame.left;
|
|
117
119
|
if (deltaX != 0) {
|
|
118
120
|
int scrollX = mScrollView.getScrollX();
|
|
119
|
-
mScrollView.
|
|
121
|
+
mScrollView.scrollToPreservingMomentum(scrollX + deltaX, mScrollView.getScrollY());
|
|
120
122
|
mPrevFirstVisibleFrame = newFrame;
|
|
121
123
|
if (mConfig.autoScrollToTopThreshold != null
|
|
122
124
|
&& scrollX <= mConfig.autoScrollToTopThreshold) {
|
|
@@ -127,7 +129,7 @@ class MaintainVisibleScrollPositionHelper<ScrollViewT extends ViewGroup & HasSmo
|
|
|
127
129
|
int deltaY = newFrame.top - mPrevFirstVisibleFrame.top;
|
|
128
130
|
if (deltaY != 0) {
|
|
129
131
|
int scrollY = mScrollView.getScrollY();
|
|
130
|
-
mScrollView.
|
|
132
|
+
mScrollView.scrollToPreservingMomentum(mScrollView.getScrollX(), scrollY + deltaY);
|
|
131
133
|
mPrevFirstVisibleFrame = newFrame;
|
|
132
134
|
if (mConfig.autoScrollToTopThreshold != null
|
|
133
135
|
&& scrollY <= mConfig.autoScrollToTopThreshold) {
|
|
@@ -160,7 +162,12 @@ class MaintainVisibleScrollPositionHelper<ScrollViewT extends ViewGroup & HasSmo
|
|
|
160
162
|
int currentScroll = mHorizontal ? mScrollView.getScrollX() : mScrollView.getScrollY();
|
|
161
163
|
for (int i = mConfig.minIndexForVisible; i < contentView.getChildCount(); i++) {
|
|
162
164
|
View child = contentView.getChildAt(i);
|
|
163
|
-
|
|
165
|
+
|
|
166
|
+
// Compute the position of the end of the child
|
|
167
|
+
float position =
|
|
168
|
+
mHorizontal ? child.getX() + child.getWidth() : child.getY() + child.getHeight();
|
|
169
|
+
|
|
170
|
+
// If the child is partially visible or this is the last child, select it as the anchor.
|
|
164
171
|
if (position > currentScroll || i == contentView.getChildCount() - 1) {
|
|
165
172
|
mFirstVisibleView = new WeakReference<>(child);
|
|
166
173
|
Rect frame = new Rect();
|
|
@@ -11,6 +11,7 @@ import android.content.Context;
|
|
|
11
11
|
import android.widget.HorizontalScrollView;
|
|
12
12
|
import androidx.core.view.ViewCompat;
|
|
13
13
|
import com.facebook.infer.annotation.Nullsafe;
|
|
14
|
+
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
|
|
14
15
|
import com.facebook.react.modules.i18nmanager.I18nUtil;
|
|
15
16
|
import com.facebook.react.views.view.ReactViewGroup;
|
|
16
17
|
|
|
@@ -34,6 +35,14 @@ public class ReactHorizontalScrollContainerView extends ReactViewGroup {
|
|
|
34
35
|
: ViewCompat.LAYOUT_DIRECTION_LTR;
|
|
35
36
|
}
|
|
36
37
|
|
|
38
|
+
@Override
|
|
39
|
+
public int getLayoutDirection() {
|
|
40
|
+
if (ReactNativeFeatureFlags.setAndroidLayoutDirection()) {
|
|
41
|
+
return super.getLayoutDirection();
|
|
42
|
+
}
|
|
43
|
+
return mLayoutDirection;
|
|
44
|
+
}
|
|
45
|
+
|
|
37
46
|
@Override
|
|
38
47
|
public void setRemoveClippedSubviews(boolean removeClippedSubviews) {
|
|
39
48
|
// Clipping doesn't work well for horizontal scroll views in RTL mode - in both
|
|
@@ -41,7 +50,7 @@ public class ReactHorizontalScrollContainerView extends ReactViewGroup {
|
|
|
41
50
|
// is TextInputs being blurred immediately after being focused. So, for now,
|
|
42
51
|
// it's easier to just disable this for these specific RTL views.
|
|
43
52
|
// TODO T86027499: support `setRemoveClippedSubviews` in RTL mode
|
|
44
|
-
if (
|
|
53
|
+
if (getLayoutDirection() == LAYOUT_DIRECTION_RTL) {
|
|
45
54
|
super.setRemoveClippedSubviews(false);
|
|
46
55
|
return;
|
|
47
56
|
}
|
|
@@ -51,31 +60,16 @@ public class ReactHorizontalScrollContainerView extends ReactViewGroup {
|
|
|
51
60
|
|
|
52
61
|
@Override
|
|
53
62
|
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
|
|
54
|
-
|
|
55
|
-
final HorizontalScrollView parent = (HorizontalScrollView) getParent();
|
|
56
|
-
parent.setClipChildren(false);
|
|
57
|
-
this.setClipChildren(false);
|
|
58
|
-
|
|
59
|
-
if (mLayoutDirection == LAYOUT_DIRECTION_RTL) {
|
|
63
|
+
if (getLayoutDirection() == LAYOUT_DIRECTION_RTL) {
|
|
60
64
|
// When the layout direction is RTL, we expect Yoga to give us a layout
|
|
61
65
|
// that extends off the screen to the left so we re-center it with left=0
|
|
62
66
|
int newLeft = 0;
|
|
63
67
|
int width = right - left;
|
|
64
68
|
int newRight = newLeft + width;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
final int offsetX = this.getMeasuredWidth() - mLastWidth + parent.getScrollX();
|
|
70
|
-
|
|
71
|
-
// Call with the present values in order to re-layout if necessary
|
|
72
|
-
parent.scrollTo(offsetX, parent.getScrollY());
|
|
73
|
-
mLastWidth = this.getMeasuredWidth();
|
|
74
|
-
|
|
75
|
-
// Use the listener to adjust the scrollposition if new data was appended
|
|
76
|
-
if (rtlListener != null) {
|
|
77
|
-
rtlListener.onLayout();
|
|
78
|
-
}
|
|
69
|
+
setLeft(newLeft);
|
|
70
|
+
setTop(top);
|
|
71
|
+
setRight(newRight);
|
|
72
|
+
setBottom(bottom);
|
|
79
73
|
}
|
|
80
74
|
}
|
|
81
75
|
public int getLastWidth() {
|
|
@@ -0,0 +1,28 @@
|
|
|
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.views.scroll
|
|
9
|
+
|
|
10
|
+
import com.facebook.react.module.annotations.ReactModule
|
|
11
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
12
|
+
import com.facebook.react.views.view.ReactClippingViewManager
|
|
13
|
+
|
|
14
|
+
/** View manager for {@link ReactHorizontalScrollContainerView} components. */
|
|
15
|
+
@ReactModule(name = ReactHorizontalScrollContainerViewManager.REACT_CLASS)
|
|
16
|
+
public class ReactHorizontalScrollContainerViewManager :
|
|
17
|
+
ReactClippingViewManager<ReactHorizontalScrollContainerView>() {
|
|
18
|
+
|
|
19
|
+
override public fun getName(): String = REACT_CLASS
|
|
20
|
+
|
|
21
|
+
override public fun createViewInstance(
|
|
22
|
+
context: ThemedReactContext
|
|
23
|
+
): ReactHorizontalScrollContainerView = ReactHorizontalScrollContainerView(context)
|
|
24
|
+
|
|
25
|
+
public companion object {
|
|
26
|
+
public const val REACT_CLASS: String = "AndroidHorizontalScrollContentView"
|
|
27
|
+
}
|
|
28
|
+
}
|
package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java
CHANGED
|
@@ -32,8 +32,10 @@ import androidx.annotation.Nullable;
|
|
|
32
32
|
import androidx.core.view.ViewCompat;
|
|
33
33
|
import com.facebook.common.logging.FLog;
|
|
34
34
|
import com.facebook.infer.annotation.Assertions;
|
|
35
|
+
import com.facebook.infer.annotation.Nullsafe;
|
|
35
36
|
import com.facebook.react.common.ReactConstants;
|
|
36
37
|
import com.facebook.react.common.build.ReactBuildConfig;
|
|
38
|
+
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
|
|
37
39
|
import com.facebook.react.modules.i18nmanager.I18nUtil;
|
|
38
40
|
import com.facebook.react.uimanager.MeasureSpecAssertions;
|
|
39
41
|
import com.facebook.react.uimanager.PointerEvents;
|
|
@@ -55,6 +57,7 @@ import java.util.ArrayList;
|
|
|
55
57
|
import java.util.List;
|
|
56
58
|
|
|
57
59
|
/** Similar to {@link ReactScrollView} but only supports horizontal scrolling. */
|
|
60
|
+
@Nullsafe(Nullsafe.Mode.LOCAL)
|
|
58
61
|
public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
59
62
|
implements ReactClippingViewGroup,
|
|
60
63
|
ViewGroup.OnHierarchyChangeListener,
|
|
@@ -81,7 +84,6 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
81
84
|
private final OnScrollDispatchHelper mOnScrollDispatchHelper = new OnScrollDispatchHelper();
|
|
82
85
|
private final @Nullable OverScroller mScroller;
|
|
83
86
|
private final VelocityHelper mVelocityHelper = new VelocityHelper();
|
|
84
|
-
private final Rect mRect = new Rect();
|
|
85
87
|
private final Rect mOverflowInset = new Rect();
|
|
86
88
|
|
|
87
89
|
private boolean mActivelyScrolling;
|
|
@@ -92,6 +94,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
92
94
|
private @Nullable Runnable mPostTouchRunnable;
|
|
93
95
|
private boolean mRemoveClippedSubviews;
|
|
94
96
|
private boolean mScrollEnabled = true;
|
|
97
|
+
private boolean mPreventReentry = false;
|
|
98
|
+
private boolean mEnableSyncOnScroll = false;
|
|
95
99
|
private boolean mSendMomentumEvents;
|
|
96
100
|
private @Nullable FpsListener mFpsListener = null;
|
|
97
101
|
private @Nullable String mScrollPerfTag;
|
|
@@ -107,7 +111,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
107
111
|
private boolean mPagedArrowScrolling = false;
|
|
108
112
|
private int pendingContentOffsetX = UNSET_CONTENT_OFFSET;
|
|
109
113
|
private int pendingContentOffsetY = UNSET_CONTENT_OFFSET;
|
|
110
|
-
private StateWrapper mStateWrapper = null;
|
|
114
|
+
private @Nullable StateWrapper mStateWrapper = null;
|
|
111
115
|
private final ReactScrollViewScrollState mReactScrollViewScrollState;
|
|
112
116
|
private final ValueAnimator DEFAULT_FLING_ANIMATOR = ObjectAnimator.ofInt(this, "scrollX", 0, 0);
|
|
113
117
|
private PointerEvents mPointerEvents = PointerEvents.AUTO;
|
|
@@ -139,6 +143,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
139
143
|
: ViewCompat.LAYOUT_DIRECTION_LTR);
|
|
140
144
|
|
|
141
145
|
setOnHierarchyChangeListener(this);
|
|
146
|
+
setClipChildren(false);
|
|
147
|
+
mReactBackgroundManager.setOverflow(ViewProps.SCROLL);
|
|
142
148
|
}
|
|
143
149
|
|
|
144
150
|
public boolean getScrollEnabled() {
|
|
@@ -175,8 +181,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
175
181
|
} else {
|
|
176
182
|
FLog.w(
|
|
177
183
|
TAG,
|
|
178
|
-
"Failed to cast mScroller field in HorizontalScrollView (probably due to OEM changes
|
|
179
|
-
+ "This app will exhibit the bounce-back scrolling bug :(");
|
|
184
|
+
"Failed to cast mScroller field in HorizontalScrollView (probably due to OEM changes"
|
|
185
|
+
+ " to AOSP)! This app will exhibit the bounce-back scrolling bug :(");
|
|
180
186
|
scroller = null;
|
|
181
187
|
}
|
|
182
188
|
} catch (IllegalAccessException e) {
|
|
@@ -219,6 +225,10 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
219
225
|
mScrollEnabled = scrollEnabled;
|
|
220
226
|
}
|
|
221
227
|
|
|
228
|
+
public void setEnableSyncOnScroll(boolean enableSyncOnScroll) {
|
|
229
|
+
mEnableSyncOnScroll = enableSyncOnScroll;
|
|
230
|
+
}
|
|
231
|
+
|
|
222
232
|
public void setPagingEnabled(boolean pagingEnabled) {
|
|
223
233
|
mPagingEnabled = pagingEnabled;
|
|
224
234
|
}
|
|
@@ -241,7 +251,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
241
251
|
mSnapInterval = snapInterval;
|
|
242
252
|
}
|
|
243
253
|
|
|
244
|
-
public void setSnapOffsets(List<Integer> snapOffsets) {
|
|
254
|
+
public void setSnapOffsets(@Nullable List<Integer> snapOffsets) {
|
|
245
255
|
mSnapOffsets = snapOffsets;
|
|
246
256
|
}
|
|
247
257
|
|
|
@@ -261,9 +271,9 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
261
271
|
awakenScrollBars();
|
|
262
272
|
}
|
|
263
273
|
|
|
264
|
-
public void setOverflow(String overflow) {
|
|
274
|
+
public void setOverflow(@Nullable String overflow) {
|
|
265
275
|
mOverflow = overflow;
|
|
266
|
-
|
|
276
|
+
mReactBackgroundManager.setOverflow(overflow == null ? ViewProps.SCROLL : overflow);
|
|
267
277
|
}
|
|
268
278
|
|
|
269
279
|
public void setMaintainVisibleContentPosition(
|
|
@@ -296,21 +306,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
296
306
|
}
|
|
297
307
|
|
|
298
308
|
@Override
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
FLog.i(TAG, "onDraw[%d]", getId());
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
getDrawingRect(mRect);
|
|
305
|
-
|
|
306
|
-
switch (mOverflow) {
|
|
307
|
-
case ViewProps.VISIBLE:
|
|
308
|
-
break;
|
|
309
|
-
default:
|
|
310
|
-
canvas.clipRect(mRect);
|
|
311
|
-
break;
|
|
312
|
-
}
|
|
313
|
-
|
|
309
|
+
public void onDraw(Canvas canvas) {
|
|
310
|
+
mReactBackgroundManager.maybeClipToPaddingBox(canvas);
|
|
314
311
|
super.onDraw(canvas);
|
|
315
312
|
}
|
|
316
313
|
|
|
@@ -477,11 +474,16 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
477
474
|
if (mRemoveClippedSubviews) {
|
|
478
475
|
updateClippingRect();
|
|
479
476
|
}
|
|
480
|
-
|
|
477
|
+
if (mPreventReentry) {
|
|
478
|
+
return;
|
|
479
|
+
}
|
|
480
|
+
mPreventReentry = true;
|
|
481
481
|
ReactScrollViewHelper.updateStateOnScrollChanged(
|
|
482
482
|
this,
|
|
483
483
|
mOnScrollDispatchHelper.getXFlingVelocity(),
|
|
484
|
-
mOnScrollDispatchHelper.getYFlingVelocity()
|
|
484
|
+
mOnScrollDispatchHelper.getYFlingVelocity(),
|
|
485
|
+
mEnableSyncOnScroll);
|
|
486
|
+
mPreventReentry = false;
|
|
485
487
|
}
|
|
486
488
|
}
|
|
487
489
|
|
|
@@ -648,13 +650,13 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
648
650
|
}
|
|
649
651
|
|
|
650
652
|
@Override
|
|
651
|
-
public boolean
|
|
652
|
-
// We do not dispatch the
|
|
653
|
+
public boolean dispatchGenericMotionEvent(MotionEvent ev) {
|
|
654
|
+
// We do not dispatch the motion event if its children are not supposed to receive it
|
|
653
655
|
if (!PointerEvents.canChildrenBeTouchTarget(mPointerEvents)) {
|
|
654
656
|
return false;
|
|
655
657
|
}
|
|
656
658
|
|
|
657
|
-
return super.
|
|
659
|
+
return super.dispatchGenericMotionEvent(ev);
|
|
658
660
|
}
|
|
659
661
|
|
|
660
662
|
@Override
|
|
@@ -835,8 +837,10 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
835
837
|
}
|
|
836
838
|
|
|
837
839
|
@Override
|
|
838
|
-
public void onChildViewRemoved(View parent, View child) {
|
|
839
|
-
mContentView
|
|
840
|
+
public @Nullable void onChildViewRemoved(View parent, View child) {
|
|
841
|
+
if (mContentView != null) {
|
|
842
|
+
mContentView.removeOnLayoutChangeListener(this);
|
|
843
|
+
}
|
|
840
844
|
mContentView = null;
|
|
841
845
|
}
|
|
842
846
|
|
|
@@ -1060,7 +1064,10 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
1060
1064
|
int firstOffset = 0;
|
|
1061
1065
|
int lastOffset = maximumOffset;
|
|
1062
1066
|
int width = getWidth() - ViewCompat.getPaddingStart(this) - ViewCompat.getPaddingEnd(this);
|
|
1063
|
-
int layoutDirection =
|
|
1067
|
+
int layoutDirection =
|
|
1068
|
+
ReactNativeFeatureFlags.setAndroidLayoutDirection()
|
|
1069
|
+
? getLayoutDirection()
|
|
1070
|
+
: mReactScrollViewScrollState.getLayoutDirection();
|
|
1064
1071
|
|
|
1065
1072
|
// offsets are from the right edge in RTL layouts
|
|
1066
1073
|
if (layoutDirection == LAYOUT_DIRECTION_RTL) {
|
|
@@ -1331,6 +1338,13 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
1331
1338
|
setPendingContentOffsets(x, y);
|
|
1332
1339
|
}
|
|
1333
1340
|
|
|
1341
|
+
/** Scrolls to a new position preserving any momentum scrolling animation. */
|
|
1342
|
+
@Override
|
|
1343
|
+
public void scrollToPreservingMomentum(int x, int y) {
|
|
1344
|
+
scrollTo(x, y);
|
|
1345
|
+
recreateFlingAnimation(x, Integer.MAX_VALUE);
|
|
1346
|
+
}
|
|
1347
|
+
|
|
1334
1348
|
private boolean isContentReady() {
|
|
1335
1349
|
View child = getContentView();
|
|
1336
1350
|
return child != null && child.getWidth() != 0 && child.getHeight() != 0;
|
|
@@ -1377,31 +1391,32 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
1377
1391
|
// does not shift layout. If `maintainVisibleContentPosition` is enabled, we try to adjust
|
|
1378
1392
|
// position so that the viewport keeps the same insets to previously visible views. TODO: MVCP
|
|
1379
1393
|
// does not work in RTL.
|
|
1380
|
-
|
|
1394
|
+
int layoutDirection =
|
|
1395
|
+
ReactNativeFeatureFlags.setAndroidLayoutDirection()
|
|
1396
|
+
? v.getLayoutDirection()
|
|
1397
|
+
: mReactScrollViewScrollState.getLayoutDirection();
|
|
1398
|
+
if (layoutDirection == LAYOUT_DIRECTION_RTL) {
|
|
1381
1399
|
adjustPositionForContentChangeRTL(left, right, oldLeft, oldRight);
|
|
1382
1400
|
} else if (mMaintainVisibleContentPositionHelper != null) {
|
|
1383
1401
|
mMaintainVisibleContentPositionHelper.updateScrollPosition();
|
|
1384
1402
|
}
|
|
1385
1403
|
}
|
|
1386
1404
|
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1405
|
+
/**
|
|
1406
|
+
* If we are in the middle of a fling animation from the user removing their finger (OverScroller
|
|
1407
|
+
* is in `FLING_MODE`), recreate the existing fling animation since it was calculated against
|
|
1408
|
+
* outdated scroll offsets.
|
|
1409
|
+
*/
|
|
1410
|
+
private void recreateFlingAnimation(int scrollX, int maxX) {
|
|
1411
|
+
// If we have any pending custom flings (e.g. from animated `scrollTo`, or flinging to a snap
|
|
1412
|
+
// point), cancel them.
|
|
1390
1413
|
// TODO: Can we be more graceful (like OverScroller flings)?
|
|
1391
1414
|
if (getFlingAnimator().isRunning()) {
|
|
1392
|
-
getFlingAnimator().
|
|
1415
|
+
getFlingAnimator().cancel();
|
|
1393
1416
|
}
|
|
1394
1417
|
|
|
1395
|
-
int distanceToRightEdge = oldRight - getScrollX();
|
|
1396
|
-
int newWidth = right - left;
|
|
1397
|
-
int scrollX = newWidth - distanceToRightEdge;
|
|
1398
|
-
scrollTo(scrollX, getScrollY());
|
|
1399
|
-
|
|
1400
|
-
// If we are in the middle of a fling animation from the user removing their finger
|
|
1401
|
-
// (OverScroller is in `FLING_MODE`), we must cancel and recreate the existing fling animation
|
|
1402
|
-
// since it was calculated against outdated scroll offsets.
|
|
1403
1418
|
if (mScroller != null && !mScroller.isFinished()) {
|
|
1404
|
-
// Calculate the
|
|
1419
|
+
// Calculate the velocity and position of the fling animation at the time of this layout
|
|
1405
1420
|
// event, which may be later than the last ScrollView tick. These values are not commited to
|
|
1406
1421
|
// the underlying ScrollView, which will recalculate positions on its next tick.
|
|
1407
1422
|
int scrollerXBeforeTick = mScroller.getCurrX();
|
|
@@ -1420,14 +1435,29 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
1420
1435
|
float direction = Math.signum(mScroller.getFinalX() - mScroller.getStartX());
|
|
1421
1436
|
float flingVelocityX = mScroller.getCurrVelocity() * direction;
|
|
1422
1437
|
|
|
1423
|
-
mScroller.fling(
|
|
1424
|
-
scrollX, getScrollY(), (int) flingVelocityX, 0, 0, newWidth - getWidth(), 0, 0);
|
|
1438
|
+
mScroller.fling(scrollX, getScrollY(), (int) flingVelocityX, 0, 0, maxX, 0, 0);
|
|
1425
1439
|
} else {
|
|
1426
1440
|
scrollTo(scrollX + (mScroller.getCurrX() - scrollerXBeforeTick), getScrollY());
|
|
1427
1441
|
}
|
|
1428
1442
|
}
|
|
1429
1443
|
}
|
|
1430
1444
|
|
|
1445
|
+
private void adjustPositionForContentChangeRTL(int left, int right, int oldLeft, int oldRight) {
|
|
1446
|
+
// If we have any pending custom flings (e.g. from animated `scrollTo`, or flinging to a snap
|
|
1447
|
+
// point), finish them, committing the final `scrollX`.
|
|
1448
|
+
// TODO: Can we be more graceful (like OverScroller flings)?
|
|
1449
|
+
if (getFlingAnimator().isRunning()) {
|
|
1450
|
+
getFlingAnimator().end();
|
|
1451
|
+
}
|
|
1452
|
+
|
|
1453
|
+
int distanceToRightEdge = oldRight - getScrollX();
|
|
1454
|
+
int newWidth = right - left;
|
|
1455
|
+
int scrollX = newWidth - distanceToRightEdge;
|
|
1456
|
+
scrollTo(scrollX, getScrollY());
|
|
1457
|
+
|
|
1458
|
+
recreateFlingAnimation(scrollX, newWidth - getWidth());
|
|
1459
|
+
}
|
|
1460
|
+
|
|
1431
1461
|
@Nullable
|
|
1432
1462
|
public StateWrapper getStateWrapper() {
|
|
1433
1463
|
return mStateWrapper;
|
|
@@ -11,6 +11,7 @@ import android.graphics.Color;
|
|
|
11
11
|
import android.view.View;
|
|
12
12
|
import androidx.annotation.Nullable;
|
|
13
13
|
import androidx.core.view.ViewCompat;
|
|
14
|
+
import com.facebook.infer.annotation.Nullsafe;
|
|
14
15
|
import com.facebook.react.modules.i18nmanager.I18nUtil;
|
|
15
16
|
import com.facebook.react.bridge.ReadableArray;
|
|
16
17
|
import com.facebook.react.bridge.ReadableMap;
|
|
@@ -37,6 +38,7 @@ import java.util.List;
|
|
|
37
38
|
* <p>Note that {@link ReactScrollView} and {@link ReactHorizontalScrollView} are exposed to JS as a
|
|
38
39
|
* single ScrollView component, configured via the {@code horizontal} boolean property.
|
|
39
40
|
*/
|
|
41
|
+
@Nullsafe(Nullsafe.Mode.LOCAL)
|
|
40
42
|
@ReactModule(name = ReactHorizontalScrollViewManager.REACT_CLASS)
|
|
41
43
|
public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHorizontalScrollView>
|
|
42
44
|
implements ReactScrollViewCommandHelper.ScrollCommandHandler<ReactHorizontalScrollView> {
|
|
@@ -68,7 +70,7 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
|
|
|
68
70
|
}
|
|
69
71
|
|
|
70
72
|
@Override
|
|
71
|
-
public Object updateState(
|
|
73
|
+
public @Nullable Object updateState(
|
|
72
74
|
ReactHorizontalScrollView view, ReactStylesDiffMap props, StateWrapper stateWrapper) {
|
|
73
75
|
view.setStateWrapper(stateWrapper);
|
|
74
76
|
return null;
|
|
@@ -93,6 +95,11 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
|
|
|
93
95
|
view.setDecelerationRate(decelerationRate);
|
|
94
96
|
}
|
|
95
97
|
|
|
98
|
+
@ReactProp(name = "enableSyncOnScroll")
|
|
99
|
+
public void setEnableSyncOnScroll(ReactHorizontalScrollView view, boolean enableSyncOnScroll) {
|
|
100
|
+
view.setEnableSyncOnScroll(enableSyncOnScroll);
|
|
101
|
+
}
|
|
102
|
+
|
|
96
103
|
@ReactProp(name = "disableIntervalMomentum")
|
|
97
104
|
public void setDisableIntervalMomentum(
|
|
98
105
|
ReactHorizontalScrollView view, boolean disableIntervalMomentum) {
|
|
@@ -380,4 +387,9 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
|
|
|
380
387
|
public void setScrollEventThrottle(ReactHorizontalScrollView view, int scrollEventThrottle) {
|
|
381
388
|
view.setScrollEventThrottle(scrollEventThrottle);
|
|
382
389
|
}
|
|
390
|
+
|
|
391
|
+
@ReactProp(name = "horizontal")
|
|
392
|
+
public void setHorizontal(ReactHorizontalScrollView view, boolean horizontal) {
|
|
393
|
+
// Do Nothing: Align with static ViewConfigs
|
|
394
|
+
}
|
|
383
395
|
}
|
|
@@ -33,6 +33,7 @@ import androidx.annotation.Nullable;
|
|
|
33
33
|
import androidx.core.view.ViewCompat;
|
|
34
34
|
import com.facebook.common.logging.FLog;
|
|
35
35
|
import com.facebook.infer.annotation.Assertions;
|
|
36
|
+
import com.facebook.infer.annotation.Nullsafe;
|
|
36
37
|
import com.facebook.react.R;
|
|
37
38
|
import com.facebook.react.bridge.ReadableMap;
|
|
38
39
|
import com.facebook.react.common.ReactConstants;
|
|
@@ -62,6 +63,7 @@ import java.util.List;
|
|
|
62
63
|
* <p>ReactScrollView only supports vertical scrolling. For horizontal scrolling, use {@link
|
|
63
64
|
* ReactHorizontalScrollView}.
|
|
64
65
|
*/
|
|
66
|
+
@Nullsafe(Nullsafe.Mode.LOCAL)
|
|
65
67
|
public class ReactScrollView extends ScrollView
|
|
66
68
|
implements ReactClippingViewGroup,
|
|
67
69
|
ViewGroup.OnHierarchyChangeListener,
|
|
@@ -81,7 +83,6 @@ public class ReactScrollView extends ScrollView
|
|
|
81
83
|
private final OnScrollDispatchHelper mOnScrollDispatchHelper = new OnScrollDispatchHelper();
|
|
82
84
|
private final @Nullable OverScroller mScroller;
|
|
83
85
|
private final VelocityHelper mVelocityHelper = new VelocityHelper();
|
|
84
|
-
private final Rect mRect = new Rect(); // for reuse to avoid allocation
|
|
85
86
|
private final Rect mTempRect = new Rect();
|
|
86
87
|
private final Rect mOverflowInset = new Rect();
|
|
87
88
|
|
|
@@ -93,9 +94,11 @@ public class ReactScrollView extends ScrollView
|
|
|
93
94
|
private @Nullable Runnable mPostTouchRunnable;
|
|
94
95
|
private boolean mRemoveClippedSubviews;
|
|
95
96
|
private boolean mScrollEnabled = true;
|
|
97
|
+
private boolean mPreventReentry = false;
|
|
96
98
|
private boolean mSendMomentumEvents;
|
|
97
99
|
private @Nullable FpsListener mFpsListener = null;
|
|
98
100
|
private @Nullable String mScrollPerfTag;
|
|
101
|
+
private boolean mEnableSyncOnScroll = false;
|
|
99
102
|
private @Nullable Drawable mEndBackground;
|
|
100
103
|
private int mEndFillColor = Color.TRANSPARENT;
|
|
101
104
|
private boolean mDisableIntervalMomentum = false;
|
|
@@ -109,7 +112,7 @@ public class ReactScrollView extends ScrollView
|
|
|
109
112
|
private @Nullable ReadableMap mCurrentContentOffset = null;
|
|
110
113
|
private int pendingContentOffsetX = UNSET_CONTENT_OFFSET;
|
|
111
114
|
private int pendingContentOffsetY = UNSET_CONTENT_OFFSET;
|
|
112
|
-
private StateWrapper mStateWrapper = null;
|
|
115
|
+
private @Nullable StateWrapper mStateWrapper = null;
|
|
113
116
|
private final ReactScrollViewScrollState mReactScrollViewScrollState =
|
|
114
117
|
new ReactScrollViewScrollState(ViewCompat.LAYOUT_DIRECTION_LTR);
|
|
115
118
|
private final ValueAnimator DEFAULT_FLING_ANIMATOR = ObjectAnimator.ofInt(this, "scrollY", 0, 0);
|
|
@@ -131,6 +134,8 @@ public class ReactScrollView extends ScrollView
|
|
|
131
134
|
mScroller = getOverScrollerFromParent();
|
|
132
135
|
setOnHierarchyChangeListener(this);
|
|
133
136
|
setScrollBarStyle(SCROLLBARS_OUTSIDE_OVERLAY);
|
|
137
|
+
setClipChildren(false);
|
|
138
|
+
mReactBackgroundManager.setOverflow(ViewProps.SCROLL);
|
|
134
139
|
|
|
135
140
|
ViewCompat.setAccessibilityDelegate(this, new ReactScrollViewAccessibilityDelegate());
|
|
136
141
|
}
|
|
@@ -200,6 +205,10 @@ public class ReactScrollView extends ScrollView
|
|
|
200
205
|
mScrollPerfTag = scrollPerfTag;
|
|
201
206
|
}
|
|
202
207
|
|
|
208
|
+
public void setEnableSyncOnScroll(boolean enableSyncOnScroll) {
|
|
209
|
+
mEnableSyncOnScroll = enableSyncOnScroll;
|
|
210
|
+
}
|
|
211
|
+
|
|
203
212
|
public void setScrollEnabled(boolean scrollEnabled) {
|
|
204
213
|
mScrollEnabled = scrollEnabled;
|
|
205
214
|
}
|
|
@@ -230,7 +239,7 @@ public class ReactScrollView extends ScrollView
|
|
|
230
239
|
mSnapInterval = snapInterval;
|
|
231
240
|
}
|
|
232
241
|
|
|
233
|
-
public void setSnapOffsets(List<Integer> snapOffsets) {
|
|
242
|
+
public void setSnapOffsets(@Nullable List<Integer> snapOffsets) {
|
|
234
243
|
mSnapOffsets = snapOffsets;
|
|
235
244
|
}
|
|
236
245
|
|
|
@@ -250,9 +259,9 @@ public class ReactScrollView extends ScrollView
|
|
|
250
259
|
awakenScrollBars();
|
|
251
260
|
}
|
|
252
261
|
|
|
253
|
-
public void setOverflow(String overflow) {
|
|
262
|
+
public void setOverflow(@Nullable String overflow) {
|
|
254
263
|
mOverflow = overflow;
|
|
255
|
-
|
|
264
|
+
mReactBackgroundManager.setOverflow(overflow == null ? ViewProps.SCROLL : overflow);
|
|
256
265
|
}
|
|
257
266
|
|
|
258
267
|
public void setMaintainVisibleContentPosition(
|
|
@@ -395,11 +404,16 @@ public class ReactScrollView extends ScrollView
|
|
|
395
404
|
if (mRemoveClippedSubviews) {
|
|
396
405
|
updateClippingRect();
|
|
397
406
|
}
|
|
398
|
-
|
|
407
|
+
if (mPreventReentry) {
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
mPreventReentry = true;
|
|
399
411
|
ReactScrollViewHelper.updateStateOnScrollChanged(
|
|
400
412
|
this,
|
|
401
413
|
mOnScrollDispatchHelper.getXFlingVelocity(),
|
|
402
|
-
mOnScrollDispatchHelper.getYFlingVelocity()
|
|
414
|
+
mOnScrollDispatchHelper.getYFlingVelocity(),
|
|
415
|
+
mEnableSyncOnScroll);
|
|
416
|
+
mPreventReentry = false;
|
|
403
417
|
}
|
|
404
418
|
}
|
|
405
419
|
|
|
@@ -471,13 +485,13 @@ public class ReactScrollView extends ScrollView
|
|
|
471
485
|
}
|
|
472
486
|
|
|
473
487
|
@Override
|
|
474
|
-
public boolean
|
|
475
|
-
// We do not dispatch the
|
|
488
|
+
public boolean dispatchGenericMotionEvent(MotionEvent ev) {
|
|
489
|
+
// We do not dispatch the motion event if its children are not supposed to receive it
|
|
476
490
|
if (!PointerEvents.canChildrenBeTouchTarget(mPointerEvents)) {
|
|
477
491
|
return false;
|
|
478
492
|
}
|
|
479
493
|
|
|
480
|
-
return super.
|
|
494
|
+
return super.dispatchGenericMotionEvent(ev);
|
|
481
495
|
}
|
|
482
496
|
|
|
483
497
|
@Override
|
|
@@ -611,7 +625,7 @@ public class ReactScrollView extends ScrollView
|
|
|
611
625
|
}
|
|
612
626
|
|
|
613
627
|
private int getMaxScrollY() {
|
|
614
|
-
int contentHeight = mContentView.getHeight();
|
|
628
|
+
int contentHeight = mContentView == null ? 0 : mContentView.getHeight();
|
|
615
629
|
int viewportHeight = getHeight() - getPaddingBottom() - getPaddingTop();
|
|
616
630
|
return Math.max(0, contentHeight - viewportHeight);
|
|
617
631
|
}
|
|
@@ -634,15 +648,16 @@ public class ReactScrollView extends ScrollView
|
|
|
634
648
|
mEndBackground.draw(canvas);
|
|
635
649
|
}
|
|
636
650
|
}
|
|
637
|
-
getDrawingRect(mRect);
|
|
638
|
-
|
|
639
|
-
if (!ViewProps.VISIBLE.equals(mOverflow)) {
|
|
640
|
-
canvas.clipRect(mRect);
|
|
641
|
-
}
|
|
642
651
|
|
|
643
652
|
super.draw(canvas);
|
|
644
653
|
}
|
|
645
654
|
|
|
655
|
+
@Override
|
|
656
|
+
public void onDraw(Canvas canvas) {
|
|
657
|
+
mReactBackgroundManager.maybeClipToPaddingBox(canvas);
|
|
658
|
+
super.onDraw(canvas);
|
|
659
|
+
}
|
|
660
|
+
|
|
646
661
|
/**
|
|
647
662
|
* This handles any sort of scrolling that may occur after a touch is finished. This may be
|
|
648
663
|
* momentum scrolling (fling) or because you have pagingEnabled on the scroll view. Because we
|
|
@@ -1098,6 +1113,53 @@ public class ReactScrollView extends ScrollView
|
|
|
1098
1113
|
setPendingContentOffsets(x, y);
|
|
1099
1114
|
}
|
|
1100
1115
|
|
|
1116
|
+
/**
|
|
1117
|
+
* If we are in the middle of a fling animation from the user removing their finger (OverScroller
|
|
1118
|
+
* is in `FLING_MODE`), recreate the existing fling animation since it was calculated against
|
|
1119
|
+
* outdated scroll offsets.
|
|
1120
|
+
*/
|
|
1121
|
+
private void recreateFlingAnimation(int scrollY) {
|
|
1122
|
+
// If we have any pending custom flings (e.g. from animated `scrollTo`, or flinging to a snap
|
|
1123
|
+
// point), cancel them.
|
|
1124
|
+
// TODO: Can we be more graceful (like OverScroller flings)?
|
|
1125
|
+
if (getFlingAnimator().isRunning()) {
|
|
1126
|
+
getFlingAnimator().cancel();
|
|
1127
|
+
}
|
|
1128
|
+
|
|
1129
|
+
if (mScroller != null && !mScroller.isFinished()) {
|
|
1130
|
+
// Calculate the velocity and position of the fling animation at the time of this layout
|
|
1131
|
+
// event, which may be later than the last ScrollView tick. These values are not committed to
|
|
1132
|
+
// the underlying ScrollView, which will recalculate positions on its next tick.
|
|
1133
|
+
int scrollerYBeforeTick = mScroller.getCurrY();
|
|
1134
|
+
boolean hasMoreTicks = mScroller.computeScrollOffset();
|
|
1135
|
+
|
|
1136
|
+
// Stop the existing animation at the current state of the scroller. We will then recreate
|
|
1137
|
+
// it starting at the adjusted y offset.
|
|
1138
|
+
mScroller.forceFinished(true);
|
|
1139
|
+
|
|
1140
|
+
if (hasMoreTicks) {
|
|
1141
|
+
// OverScroller.getCurrVelocity() returns an absolute value of the velocity a current fling
|
|
1142
|
+
// animation (only FLING_MODE animations). We derive direction along the Y axis from the
|
|
1143
|
+
// start and end of the, animation assuming ScrollView never fires horizontal fling
|
|
1144
|
+
// animations.
|
|
1145
|
+
// TODO: This does not fully handle overscroll.
|
|
1146
|
+
float direction = Math.signum(mScroller.getFinalY() - mScroller.getStartY());
|
|
1147
|
+
float flingVelocityY = mScroller.getCurrVelocity() * direction;
|
|
1148
|
+
|
|
1149
|
+
mScroller.fling(getScrollX(), scrollY, 0, (int) flingVelocityY, 0, 0, 0, Integer.MAX_VALUE);
|
|
1150
|
+
} else {
|
|
1151
|
+
scrollTo(getScrollX(), scrollY + (mScroller.getCurrX() - scrollerYBeforeTick));
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
/** Scrolls to a new position preserving any momentum scrolling animation. */
|
|
1157
|
+
@Override
|
|
1158
|
+
public void scrollToPreservingMomentum(int x, int y) {
|
|
1159
|
+
scrollTo(x, y);
|
|
1160
|
+
recreateFlingAnimation(y);
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1101
1163
|
private boolean isContentReady() {
|
|
1102
1164
|
View child = getContentView();
|
|
1103
1165
|
return child != null && child.getWidth() != 0 && child.getHeight() != 0;
|
|
@@ -1196,7 +1258,8 @@ public class ReactScrollView extends ScrollView
|
|
|
1196
1258
|
|
|
1197
1259
|
Assertions.assertCondition(
|
|
1198
1260
|
count <= 1,
|
|
1199
|
-
"React Native ScrollView should not have more than one child, it should have exactly 1
|
|
1261
|
+
"React Native ScrollView should not have more than one child, it should have exactly 1"
|
|
1262
|
+
+ " child; a content View");
|
|
1200
1263
|
|
|
1201
1264
|
if (count > 0) {
|
|
1202
1265
|
for (int i = 0; i < count; i++) {
|