react-native-tvos 0.76.6-0 → 0.77.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +1 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +13 -0
- package/Libraries/Animated/AnimatedEvent.js +1 -1
- package/Libraries/Animated/AnimatedImplementation.js +2 -2
- package/Libraries/Animated/NativeAnimatedAllowlist.js +20 -9
- package/Libraries/Animated/animations/Animation.js +60 -25
- package/Libraries/Animated/animations/DecayAnimation.js +26 -38
- package/Libraries/Animated/animations/SpringAnimation.js +33 -39
- package/Libraries/Animated/animations/TimingAnimation.js +34 -42
- package/Libraries/Animated/components/AnimatedFlatList.js +1 -1
- package/Libraries/Animated/components/AnimatedSectionList.js +3 -1
- package/Libraries/Animated/createAnimatedComponent.js +60 -33
- package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +1 -1
- package/Libraries/Animated/nodes/AnimatedNode.js +39 -45
- package/Libraries/Animated/nodes/AnimatedObject.js +13 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +104 -46
- package/Libraries/Animated/nodes/AnimatedStyle.js +116 -39
- package/Libraries/Animated/nodes/AnimatedTransform.js +56 -23
- package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -3
- package/Libraries/Animated/useAnimatedProps.js +41 -35
- package/Libraries/AppDelegate/RCTAppDelegate.h +10 -64
- package/Libraries/AppDelegate/RCTAppDelegate.mm +23 -21
- package/Libraries/AppDelegate/RCTAppSetupUtils.h +5 -1
- package/Libraries/AppDelegate/RCTAppSetupUtils.mm +8 -14
- package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +32 -0
- package/Libraries/AppDelegate/RCTDependencyProvider.h +26 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.h +6 -2
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +27 -43
- package/Libraries/AppDelegate/RCTUIConfiguratorProtocol.h +56 -0
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +2 -1
- package/Libraries/Blob/React-RCTBlob.podspec +3 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +19 -3
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +77 -5
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +4 -4
- package/Libraries/Components/Button.js +9 -4
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +7 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
- package/Libraries/Components/Pressable/Pressable.js +7 -7
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +13 -7
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +3 -2
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +4 -4
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +0 -1
- package/Libraries/Components/ScrollView/ScrollView.js +51 -90
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +0 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +8 -9
- package/Libraries/Components/Switch/Switch.js +8 -6
- package/Libraries/Components/TV/TVFocusGuideView.js +2 -5
- package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +4 -4
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -4
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +27 -4
- package/Libraries/Components/TextInput/TextInput.flow.js +36 -19
- package/Libraries/Components/TextInput/TextInput.js +38 -14
- package/Libraries/Components/TextInput/TextInputState.js +11 -13
- package/Libraries/Components/Touchable/BoundingDimensions.js +11 -3
- package/Libraries/Components/Touchable/Position.js +7 -2
- package/Libraries/Components/Touchable/Touchable.js +4 -0
- package/Libraries/Components/Touchable/TouchableBounce.js +6 -2
- package/Libraries/Components/Touchable/TouchableHighlight.js +5 -5
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +7 -7
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -2
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +6 -1
- package/Libraries/Components/View/View.js +6 -11
- package/Libraries/Components/View/ViewNativeComponent.js +8 -111
- package/Libraries/Components/View/ViewPropTypes.d.ts +7 -0
- package/Libraries/Components/View/ViewPropTypes.js +0 -3
- package/Libraries/Core/ExceptionsManager.js +50 -29
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -1
- package/Libraries/Core/setUpBatchedBridge.js +1 -10
- package/Libraries/Core/setUpDeveloperTools.js +1 -5
- package/Libraries/Core/setUpErrorHandling.js +20 -18
- package/Libraries/Core/setUpReactDevTools.js +107 -8
- package/Libraries/Core/setUpSegmentFetcher.js +1 -0
- package/Libraries/Core/setUpTimers.js +21 -18
- package/Libraries/Debugging/DebuggingOverlay.js +4 -5
- package/Libraries/Image/AssetSourceResolver.js +12 -1
- package/Libraries/Image/Image.android.js +1 -5
- package/Libraries/Image/Image.d.ts +20 -29
- package/Libraries/Image/Image.ios.js +0 -2
- package/Libraries/Image/ImageBackground.js +2 -5
- package/Libraries/Image/ImageProps.js +7 -6
- package/Libraries/Image/ImageResizeMode.d.ts +8 -1
- package/Libraries/Image/ImageResizeMode.js +4 -1
- package/Libraries/Image/ImageSource.d.ts +0 -2
- package/Libraries/Image/ImageSource.js +0 -2
- package/Libraries/Image/ImageTypes.flow.js +11 -9
- package/Libraries/Image/ImageUtils.js +6 -3
- package/Libraries/Image/ImageViewNativeComponent.js +5 -3
- package/Libraries/Image/RCTImageUtils.mm +2 -0
- package/Libraries/Image/RCTResizeMode.h +4 -1
- package/Libraries/Image/RCTResizeMode.mm +1 -0
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/Inspector/Inspector.js +1 -0
- package/Libraries/Inspector/NetworkOverlay.js +4 -0
- package/Libraries/Inspector/ReactDevToolsOverlay.js +8 -14
- package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +3 -5
- package/Libraries/Interaction/InteractionManager.js +6 -1
- package/Libraries/Interaction/InteractionManagerStub.js +176 -0
- package/Libraries/Interaction/TouchHistoryMath.js +22 -19
- package/Libraries/JSInspector/NetworkAgent.js +1 -1
- package/Libraries/LinkingIOS/RCTLinkingManager.mm +2 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/Lists/FlatList.d.ts +1 -2
- package/Libraries/Lists/FlatList.js +2 -2
- package/Libraries/Lists/SectionListModern.js +7 -7
- package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +2 -2
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +3 -3
- package/Libraries/LogBox/LogBox.js +18 -5
- package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
- package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
- package/Libraries/LogBox/UI/AnsiHighlight.js +26 -17
- package/Libraries/LogBox/UI/LogBoxButton.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +1 -1
- package/Libraries/LogBox/UI/LogBoxMessage.js +2 -2
- package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
- package/Libraries/Modal/Modal.d.ts +12 -0
- package/Libraries/Modal/Modal.js +31 -4
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +72 -1
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -1
- package/Libraries/NativeComponent/NativeComponentRegistry.js +3 -3
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +0 -1
- package/Libraries/NativeComponent/TVViewConfig.js +1 -0
- package/Libraries/Network/FormData.js +11 -3
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/Network/XHRInterceptor.js +63 -14
- package/Libraries/Network/XMLHttpRequest.js +26 -1
- package/Libraries/NewAppScreen/components/HermesBadge.js +1 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +49 -2
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -4
- package/Libraries/Pressability/HoverState.js +2 -0
- package/Libraries/Pressability/Pressability.js +4 -5
- package/Libraries/Pressability/usePressability.js +4 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.js +1 -11
- package/Libraries/ReactNative/DisplayMode.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -3
- package/Libraries/ReactNative/RendererImplementation.js +18 -17
- package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -3
- package/Libraries/ReactNative/renderApplication.js +9 -8
- package/Libraries/ReactNative/requireNativeComponent.js +5 -2
- package/Libraries/Renderer/shims/ReactFabric.js +3 -3
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
- package/Libraries/Renderer/shims/ReactNative.js +3 -3
- package/Libraries/Renderer/shims/ReactNativeTypes.js +22 -35
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +5 -6
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/StyleSheet/StyleSheet.js +7 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +13 -2
- package/Libraries/StyleSheet/StyleSheetTypes.js +24 -6
- package/Libraries/StyleSheet/processBackgroundImage.js +87 -110
- package/Libraries/StyleSheet/processTransform.js +3 -34
- package/Libraries/Text/RCTTextAttributes.h +1 -2
- package/Libraries/Text/RCTTextAttributes.mm +9 -13
- package/Libraries/Text/Text.js +248 -249
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +1 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.h +1 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +24 -2
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +1 -0
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -0
- package/Libraries/Text/TextNativeComponent.js +0 -1
- package/Libraries/TurboModule/TurboModuleRegistry.js +5 -5
- package/Libraries/Types/CoreEventTypes.d.ts +3 -10
- package/Libraries/Types/CoreEventTypes.js +4 -6
- package/Libraries/Utilities/Appearance.js +3 -1
- package/Libraries/Utilities/BackHandler.android.js +6 -18
- package/Libraries/Utilities/BackHandler.d.ts +0 -4
- package/Libraries/Utilities/BackHandler.ios.js +3 -16
- package/Libraries/Utilities/BackHandler.js.flow +0 -4
- package/Libraries/Utilities/HMRClient.js +3 -4
- package/Libraries/Utilities/Platform.flow.js +2 -2
- package/Libraries/Utilities/__mocks__/BackHandler.js +3 -8
- package/Libraries/Utilities/codegenNativeComponent.js +1 -1
- package/Libraries/Utilities/setAndForwardRef.js +2 -2
- package/Libraries/Utilities/useMergeRefs.js +26 -7
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/Libraries/WebSocket/WebSocketEvent.js +4 -1
- package/Libraries/WebSocket/WebSocketInterceptor.js +31 -13
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +6 -5
- package/Libraries/promiseRejectionTrackingOptions.js +1 -1
- package/React/Base/RCTBridge.h +3 -0
- package/React/Base/RCTBridge.mm +12 -11
- package/React/Base/RCTBridgeModule.h +1 -9
- package/React/Base/RCTBridgeProxy.h +3 -0
- package/React/Base/RCTBridgeProxy.mm +10 -0
- package/React/Base/RCTCallInvoker.mm +5 -0
- package/React/Base/RCTConstants.h +2 -12
- package/React/Base/RCTConstants.m +3 -31
- package/React/Base/RCTConvert.mm +3 -0
- package/React/Base/RCTKeyCommands.m +0 -2
- package/React/Base/RCTModuleData.h +1 -7
- package/React/Base/RCTModuleData.mm +27 -34
- package/React/Base/RCTModuleMethod.mm +1 -1
- package/React/Base/RCTTouchEvent.m +1 -1
- package/React/Base/RCTUtils.h +1 -1
- package/React/Base/RCTUtils.m +9 -10
- package/React/Base/RCTVersion.m +2 -2
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +7 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -5
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +1 -1
- package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +57 -0
- package/React/CoreModules/RCTAccessibilityManager.h +1 -0
- package/React/CoreModules/RCTAccessibilityManager.mm +27 -0
- package/React/CoreModules/RCTActionSheetManager.mm +14 -7
- package/React/CoreModules/RCTAppearance.h +1 -1
- package/React/CoreModules/RCTAppearance.mm +8 -2
- package/React/CoreModules/RCTDevLoadingView.mm +42 -25
- package/React/CoreModules/RCTDevMenu.mm +5 -1
- package/{ReactAndroid/src/main/java/com/facebook/perftest/PerfTestConfig.java → React/CoreModules/RCTDevToolsRuntimeSettingsModule.h} +3 -7
- package/React/CoreModules/RCTDevToolsRuntimeSettingsModule.mm +58 -0
- package/React/CoreModules/RCTDeviceInfo.mm +4 -1
- package/React/CoreModules/RCTEventDispatcher.mm +1 -1
- package/React/CoreModules/RCTExceptionsManager.h +2 -6
- package/React/CoreModules/RCTExceptionsManager.mm +35 -30
- package/React/CoreModules/React-CoreModules.podspec +12 -2
- package/React/CxxBridge/RCTCxxBridge.mm +20 -23
- package/React/CxxModule/RCTCxxMethod.mm +10 -2
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -5
- package/React/DevSupport/RCTPackagerConnection.mm +11 -0
- package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +5 -1
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +2395 -0
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +2854 -0
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +2982 -0
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +8201 -0
- package/React/Fabric/AppleEventBeat.cpp +31 -0
- package/{ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h → React/Fabric/AppleEventBeat.h} +8 -11
- package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +0 -8
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +0 -1
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +3 -1
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +106 -59
- package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +2 -1
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +35 -15
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +9 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +161 -96
- package/React/Fabric/Mounting/RCTMountingManager.h +1 -1
- package/React/Fabric/Mounting/RCTMountingManager.mm +1 -2
- package/React/Fabric/RCTScheduler.h +3 -2
- package/React/Fabric/RCTScheduler.mm +5 -8
- package/React/Fabric/RCTSurfacePointerHandler.mm +8 -6
- package/React/Fabric/RCTSurfacePresenter.mm +6 -18
- package/React/Fabric/Surface/RCTFabricSurface.mm +7 -6
- package/React/Fabric/Utils/PlatformRunLoopObserver.h +6 -3
- package/React/Fabric/Utils/PlatformRunLoopObserver.mm +2 -5
- package/React/Fabric/Utils/RCTLinearGradient.h +19 -0
- package/React/Fabric/Utils/RCTLinearGradient.mm +134 -0
- package/React/I18n/FBXXHashUtils.h +10 -8
- package/React/Inspector/RCTCxxInspectorPackagerConnection.mm +3 -0
- package/React/Inspector/RCTCxxInspectorPackagerConnectionDelegate.mm +3 -0
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +12 -1
- package/React/Inspector/RCTInspector.mm +1 -1
- package/React/Modules/{RCTUIManager.m → RCTUIManager.mm} +7 -4
- package/React/React-RCTFBReactNativeSpec.podspec +87 -0
- package/React/React-RCTFabric.podspec +3 -1
- package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +274 -0
- package/React/Tests/Text/RCTParagraphComponentViewTests.mm +20 -20
- package/React/Tests/Text/RCTTextAttributesTest.mm +49 -0
- package/React/Views/RCTBorderDrawing.h +5 -5
- package/React/Views/RCTBorderDrawing.m +21 -23
- package/React/Views/{RCTComponentData.m → RCTComponentData.mm} +5 -4
- package/React/Views/RCTLayout.m +3 -0
- package/React/Views/RCTModalHostViewController.m +1 -1
- package/React/Views/RCTModalHostViewManager.m +3 -23
- package/React/Views/RCTView.m +9 -10
- package/React/Views/RCTViewManager.m +1 -1
- package/React/Views/ScrollView/RCTScrollEvent.m +3 -0
- package/React/Views/ScrollView/RCTScrollView.h +1 -1
- package/React/Views/ScrollView/RCTScrollView.m +80 -26
- package/React/Views/ScrollView/RCTScrollViewManager.m +1 -0
- package/React/third-party.xcconfig +1 -1
- package/React-Core.podspec +4 -2
- package/ReactAndroid/api/ReactAndroid.api +339 -814
- package/ReactAndroid/build.gradle.kts +48 -13
- package/ReactAndroid/cmake-utils/ReactNative-application.cmake +1 -1
- package/ReactAndroid/gradle.properties +8 -2
- package/ReactAndroid/hermes-engine/build.gradle.kts +28 -26
- package/ReactAndroid/src/main/AndroidManifest.xml +1 -1
- package/ReactAndroid/src/main/java/com/facebook/debug/debugoverlay/model/DebugOverlayTag.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt +4 -5
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt +4 -4
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/debug/tags/ReactDebugOverlayTags.kt +45 -0
- package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/KeepGettersAndSetters.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +131 -0
- package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +61 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +74 -34
- package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +109 -27
- package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +25 -7
- package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +35 -3
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +43 -27
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.kt +53 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +43 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/{ViewManagerOnDemandReactPackage.java → ViewManagerOnDemandReactPackage.kt} +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +22 -30
- package/ReactAndroid/src/main/java/com/facebook/react/animated/ObjectAnimatedNode.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/TransformAnimatedNode.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/AssertionException.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +9 -10
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.java +3 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicNative.kt +2 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{InvalidIteratorException.java → InvalidIteratorException.kt} +4 -9
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{JSApplicationCausedNativeException.java → JSApplicationCausedNativeException.kt} +7 -16
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationIllegalArgumentException.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.kt +148 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.kt +180 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArray.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NoSuchKeyException.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ObjectAlreadyConsumedException.java → ObjectAlreadyConsumedException.kt} +4 -9
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactIgnorableMountingException.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashSoftException.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +65 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArray.kt +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMap.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +92 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +8 -13
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{RetryableMountingLayerException.java → RetryableMountingLayerException.kt} +6 -11
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +1 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.kt +52 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeMap.kt +6 -9
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/{SurfaceDelegate.java → SurfaceDelegate.kt} +11 -11
- package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegateFactory.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/futures/SimpleSettableFuture.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/common/network/OkHttpCallUtil.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +14 -15
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +52 -3
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +14 -18
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.java +124 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +33 -26
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +6 -3
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSettingsActivity.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +28 -38
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialog.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.java +12 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.java +37 -3
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +3 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +23 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +6 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +24 -26
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/{BindingImpl.kt → FabricUIManagerBinding.kt} +26 -20
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/LongStreamingStats.kt +62 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +10 -14
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.java +10 -57
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +5 -17
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +45 -62
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +10 -18
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DestroyUnmountedViewMountItem.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/FabricNameComponentMapping.kt +3 -9
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +27 -11
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +63 -0
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +20 -10
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/fabric/ReactSurface.kt +10 -10
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/fabric/SurfaceHandler.kt +0 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +80 -66
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsAccessor.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +107 -124
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +25 -27
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +25 -29
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +136 -144
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +23 -27
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +25 -22
- package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/ReactModuleInfo.kt +11 -16
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +121 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.kt +0 -11
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +7 -8
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolsruntimesettings/ReactDevToolsRuntimeSettingsModule.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +57 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogTitle.kt +55 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +21 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ImageCacheControl.kt +31 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactNetworkImageRequest.kt +6 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +19 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +21 -14
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/XmlFormat.kt +143 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +270 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/reactdevtoolssettings/ReactDevToolsSettingsManagerModule.kt +34 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +126 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.kt +87 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.kt +8 -4
- package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/NativeModulePerfLogger.kt +11 -11
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +15 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +153 -81
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +75 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.java +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/cxxreactpackage/CxxReactPackage.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/{Continuation.java → Continuation.kt} +4 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/{ExecutorException.java → ExecutorException.kt} +3 -9
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +50 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/{UnobservedTaskException.java → UnobservedTaskException.kt} +2 -8
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +272 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +398 -62
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +42 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +40 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +12 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +13 -14
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactClippingProhibitedView.java → ReactClippingProhibitedView.kt} +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactCompoundView.java → ReactCompoundView.kt} +3 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactCompoundViewGroup.java → ReactCompoundViewGroup.kt} +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +257 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +1071 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +11 -9
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +200 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +16 -20
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +189 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutsetBoxShadowDrawable.kt +15 -11
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +107 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +53 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BoxShadow.kt +14 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ComputedBorderRadius.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +20 -29
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +137 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/OutlineStyle.kt +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/ReactFindViewUtil.kt +129 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.kt +96 -90
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMethod.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.kt +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageDownloadListener.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.kt +8 -56
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +74 -171
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +7 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +24 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +25 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +27 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +56 -100
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +15 -93
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +44 -81
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.kt +101 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +28 -49
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +12 -63
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +5 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +131 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +153 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +72 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.kt +60 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +45 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +12 -59
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +92 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +20 -54
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManagerCallback.kt +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +114 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/{ReactVirtualTextShadowNode.java → ReactVirtualTextShadowNode.kt} +3 -8
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +38 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +161 -56
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.kt +48 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.kt +25 -38
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/LegacyLineHeightSpan.kt +69 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTextPaintHolderSpan.kt +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +54 -58
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +16 -60
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +14 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.kt +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactClippingViewManager.kt +82 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +9 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +149 -351
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +489 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +42 -0
- package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +11 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.java +33 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +4 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +1 -0
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +7 -0
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnection.cpp +4 -2
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnection.h +2 -0
- package/ReactAndroid/src/main/jni/react/fabric/{AsyncEventBeat.cpp → AndroidEventBeat.cpp} +10 -32
- package/ReactAndroid/src/main/jni/react/fabric/{AsyncEventBeat.h → AndroidEventBeat.h} +6 -9
- package/ReactAndroid/src/main/jni/react/fabric/Binding.h +3 -156
- package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +1 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +422 -313
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +2 -4
- package/ReactAndroid/src/main/jni/react/fabric/{Binding.cpp → FabricUIManagerBinding.cpp} +233 -151
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +174 -0
- package/ReactAndroid/src/main/jni/react/fabric/JFabricUIManager.cpp +5 -6
- package/ReactAndroid/src/main/jni/react/fabric/JFabricUIManager.h +2 -2
- package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +2 -2
- package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +16 -48
- package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -3
- package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +8 -36
- package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +2 -9
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +149 -163
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +32 -34
- package/ReactAndroid/src/main/jni/react/jni/JCallback.h +1 -1
- package/ReactAndroid/src/main/jni/react/jni/JInspector.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +2 -3
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +1 -1
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +2 -3
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +1 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +29 -8
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +3 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.cpp +12 -3
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.h +15 -4
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/OnLoad.cpp +0 -3
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +1 -1
- package/ReactAndroid/src/main/jni/third-party/fast_float/CMakeLists.txt +13 -0
- package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +5 -6
- package/ReactAndroid/src/main/res/views/alert/layout/alert_title_layout.xml +22 -0
- package/ReactCommon/React-Fabric.podspec +4 -2
- package/ReactCommon/React-FabricComponents.podspec +7 -4
- package/ReactCommon/React-FabricImage.podspec +6 -2
- package/ReactCommon/ReactCommon.podspec +5 -3
- package/ReactCommon/callinvoker/React-callinvoker.podspec +0 -6
- package/ReactCommon/cxxreact/CMakeLists.txt +0 -1
- package/ReactCommon/cxxreact/CxxNativeModule.cpp +6 -3
- package/ReactCommon/cxxreact/JSBigString.cpp +4 -4
- package/ReactCommon/cxxreact/JSExecutor.cpp +2 -4
- package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -2
- package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
- package/ReactCommon/devtoolsruntimesettings/CMakeLists.txt +22 -0
- package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +27 -0
- package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.h +56 -0
- package/ReactCommon/hermes/React-hermes.podspec +3 -1
- package/ReactCommon/jsc/JSCRuntime.cpp +9 -9
- package/ReactCommon/jserrorhandler/CMakeLists.txt +2 -1
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +369 -98
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +34 -8
- package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +8 -4
- package/ReactCommon/jserrorhandler/StackTraceParser.cpp +317 -0
- package/ReactCommon/jserrorhandler/StackTraceParser.h +23 -0
- package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +1196 -0
- package/ReactCommon/jsi/React-jsi.podspec +8 -3
- package/ReactCommon/jsi/jsi/decorator.h +16 -0
- package/ReactCommon/jsi/jsi/jsi.cpp +113 -2
- package/ReactCommon/jsi/jsi/jsi.h +19 -6
- package/ReactCommon/jsi/jsi/test/testlib.cpp +59 -0
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -2
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +6 -40
- package/ReactCommon/jsinspector-modern/HostAgent.h +4 -1
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +2 -0
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +8 -7
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +2 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -9
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.h +4 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +6 -3
- package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +59 -0
- package/ReactCommon/jsinspector-modern/TracingAgent.h +41 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +29 -33
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +130 -0
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +4 -13
- package/ReactCommon/logger/React-logger.podspec +2 -1
- package/ReactCommon/react/bridging/Base.h +29 -4
- package/ReactCommon/react/bridging/Convert.h +2 -2
- package/ReactCommon/react/config/ReactNativeConfig.cpp +0 -3
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +66 -59
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +67 -60
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +191 -218
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +31 -33
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +37 -45
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -17
- package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsTest.cpp +23 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +4 -16
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +1 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +22 -22
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +65 -45
- package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +5 -2
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +2 -2
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +0 -8
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +4 -22
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleWithJSIBindings.h +9 -1
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +10 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +18 -2
- package/ReactCommon/react/nativemodule/devtoolsruntimesettings/CMakeLists.txt +24 -0
- package/ReactCommon/react/nativemodule/devtoolsruntimesettings/DevToolsRuntimeSettingsModule.cpp +35 -0
- package/ReactCommon/react/nativemodule/devtoolsruntimesettings/DevToolsRuntimeSettingsModule.h +27 -0
- package/ReactCommon/react/nativemodule/devtoolsruntimesettings/README.md +6 -0
- package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +21 -3
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +54 -57
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +24 -26
- package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +19 -3
- package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +18 -3
- package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +6 -1
- package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +3 -1
- package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +18 -3
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +2 -1
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +6 -3
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleJSIBindings.cpp +5 -4
- package/ReactCommon/react/nativemodule/samples/platform/android/SampleLegacyModule.kt +277 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.kt +245 -0
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +4 -0
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.mm +2 -2
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +3 -2
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +261 -28
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +131 -0
- package/ReactCommon/react/performance/timeline/CircularBuffer.h +133 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntry.h +53 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryBuffer.h +40 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.cpp +38 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.h +34 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +59 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.h +39 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +140 -206
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +82 -131
- package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +92 -0
- package/ReactCommon/react/performance/timeline/PerformanceObserver.h +139 -0
- package/ReactCommon/react/performance/timeline/PerformanceObserverRegistry.cpp +34 -0
- package/ReactCommon/react/performance/timeline/PerformanceObserverRegistry.h +54 -0
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
- package/ReactCommon/react/performance/timeline/tests/CircularBufferTest.cpp +127 -0
- package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +238 -254
- package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +272 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +4 -4
- package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +13 -28
- package/ReactCommon/react/renderer/attributedstring/AttributedString.h +8 -6
- package/ReactCommon/react/renderer/attributedstring/conversions.h +4 -0
- package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +3 -3
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +5 -18
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +110 -36
- package/ReactCommon/react/renderer/components/image/ImageProps.h +8 -1
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/image/conversions.h +27 -0
- package/ReactCommon/react/renderer/components/rncore/ComponentDescriptors.cpp +0 -1
- package/ReactCommon/react/renderer/components/rncore/ComponentDescriptors.h +0 -1
- package/ReactCommon/react/renderer/components/rncore/Props.cpp +1 -0
- package/ReactCommon/react/renderer/components/rncore/Props.h +1 -0
- package/ReactCommon/react/renderer/components/rncore/ShadowNodes.cpp +0 -1
- package/ReactCommon/react/renderer/components/rncore/ShadowNodes.h +0 -11
- package/ReactCommon/react/renderer/components/rncore/States.h +0 -12
- package/ReactCommon/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewComponentDescriptor.h +18 -0
- package/ReactCommon/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.cpp +29 -0
- package/ReactCommon/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h +26 -0
- package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +8 -6
- package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +5 -0
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +0 -8
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +98 -100
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +0 -1
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +2 -2
- package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +19 -10
- package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +18 -16
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
- package/ReactCommon/react/renderer/components/text/tests/BaseTextShadowNodeTest.cpp +93 -0
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +38 -2
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +10 -0
- package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputEventEmitter.cpp → TextInputEventEmitter.cpp} +3 -1
- package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputEventEmitter.h → TextInputEventEmitter.h} +1 -0
- package/ReactCommon/react/renderer/components/textinput/baseConversions.h +46 -0
- package/ReactCommon/react/{utils/CoreFeatures.cpp → renderer/components/textinput/basePrimitives.h} +7 -4
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +8 -6
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +44 -57
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +1 -3
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +3 -20
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +0 -4
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +8 -1
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +1 -0
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +1 -18
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +1 -5
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +0 -20
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/primitives.h +1 -20
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/propsConversions.h +0 -12
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +36 -34
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +206 -149
- package/ReactCommon/react/renderer/components/view/BaseViewProps.h +8 -2
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +48 -36
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +18 -18
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +2 -2
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +60 -60
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +23 -17
- package/ReactCommon/react/renderer/components/view/conversions.h +136 -68
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +22 -20
- package/ReactCommon/react/renderer/components/view/primitives.h +2 -0
- package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +20 -20
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +2 -2
- package/ReactCommon/react/renderer/core/EventBeat.cpp +47 -14
- package/ReactCommon/react/renderer/core/EventBeat.h +87 -31
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +4 -9
- package/ReactCommon/react/renderer/core/EventDispatcher.h +1 -3
- package/ReactCommon/react/renderer/core/EventEmitter.h +0 -2
- package/ReactCommon/react/renderer/core/EventLogger.h +4 -1
- package/ReactCommon/react/renderer/core/EventQueue.cpp +3 -18
- package/ReactCommon/react/renderer/core/EventQueue.h +1 -8
- package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -1
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +4 -4
- package/ReactCommon/react/renderer/core/Props.cpp +3 -2
- package/ReactCommon/react/renderer/core/RawEvent.h +6 -0
- package/ReactCommon/react/renderer/core/RawValue.h +20 -20
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +21 -28
- package/ReactCommon/react/renderer/core/ShadowNode.h +4 -13
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +24 -1
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +38 -1
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.h +0 -1
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +5 -5
- package/ReactCommon/react/renderer/core/conversions.h +3 -3
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +4 -2
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +2 -51
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +18 -18
- package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +2 -0
- package/ReactCommon/react/renderer/dom/DOM.cpp +4 -7
- package/ReactCommon/react/renderer/graphics/BackgroundImage.h +4 -32
- package/ReactCommon/react/renderer/graphics/LinearGradient.h +62 -0
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -1
- package/ReactCommon/react/renderer/graphics/Transform.h +4 -4
- package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +20 -48
- package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +2 -2
- package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +2 -0
- package/ReactCommon/react/renderer/imagemanager/ImageRequest.cpp +4 -8
- package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +2 -12
- package/ReactCommon/react/renderer/imagemanager/ImageResponse.h +1 -0
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +27 -3
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +15 -0
- package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +5 -2
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +24 -16
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +44 -8
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +4 -3
- package/ReactCommon/react/renderer/imagemanager/primitives.h +5 -0
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +36 -23
- package/ReactCommon/react/renderer/mounting/Differentiator.h +41 -2
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +12 -7
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -3
- package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +5 -4
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +10 -130
- package/ReactCommon/react/renderer/mounting/ShadowTree.h +2 -7
- package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +1 -1
- package/ReactCommon/react/renderer/mounting/ShadowView.cpp +0 -8
- package/ReactCommon/react/renderer/mounting/ShadowView.h +0 -44
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +4 -4
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +1 -1
- package/ReactCommon/react/renderer/mounting/stubs/stubs.h +2 -2
- package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +3 -3
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +35 -109
- package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +10 -6
- package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.h +5 -2
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +36 -16
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +4 -3
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +6 -2
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.h +1 -0
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.cpp +9 -6
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.h +11 -1
- package/ReactCommon/react/renderer/observers/mutation/MutationObserver.cpp +14 -16
- package/ReactCommon/react/renderer/observers/mutation/MutationObserver.h +15 -4
- package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +2 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +2 -1
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +6 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +42 -51
- package/ReactCommon/react/renderer/runtimescheduler/primitives.h +0 -1
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +86 -68
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +33 -37
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +3 -3
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +4 -2
- package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +1 -2
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +3 -3
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +25 -0
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +4 -10
- package/ReactCommon/react/renderer/uimanager/UIManager.h +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +1 -3
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +1 -1
- package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +1 -1
- package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +10 -10
- package/ReactCommon/react/runtime/React-RuntimeCore.podspec +5 -2
- package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +4 -2
- package/ReactCommon/react/runtime/ReactInstance.cpp +189 -39
- package/ReactCommon/react/runtime/ReactInstance.h +1 -0
- package/ReactCommon/react/runtime/TimerManager.cpp +1 -1
- package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +3 -6
- package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +20 -2
- package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +7 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost+Internal.h +3 -0
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +14 -6
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +59 -21
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +11 -6
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +65 -27
- package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +2 -131
- package/ReactCommon/react/timing/CMakeLists.txt +1 -1
- package/ReactCommon/react/timing/primitives.h +2 -0
- package/ReactCommon/react/utils/RunLoopObserver.cpp +2 -4
- package/ReactCommon/react/utils/RunLoopObserver.h +1 -3
- package/ReactCommon/react/utils/SharedFunction.h +1 -0
- package/ReactCommon/reactperflogger/CMakeLists.txt +4 -1
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -0
- package/ReactCommon/reactperflogger/reactperflogger/FuseboxPerfettoDataSource.cpp +143 -0
- package/ReactCommon/reactperflogger/reactperflogger/FuseboxPerfettoDataSource.h +48 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfLogger.cpp +65 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfLogger.h +35 -0
- package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp +2 -0
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +2 -1
- package/ReactCommon/yoga/yoga/YGEnums.cpp +14 -2
- package/ReactCommon/yoga/yoga/YGEnums.h +8 -2
- package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +38 -28
- package/ReactCommon/yoga/yoga/YGNodeStyle.h +3 -0
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +51 -117
- package/ReactCommon/yoga/yoga/algorithm/Align.h +4 -4
- package/ReactCommon/yoga/yoga/algorithm/Baseline.cpp +2 -6
- package/ReactCommon/yoga/yoga/algorithm/BoundAxis.h +13 -6
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +349 -341
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +19 -18
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +2 -4
- package/ReactCommon/yoga/yoga/enums/BoxSizing.h +40 -0
- package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
- package/ReactCommon/yoga/yoga/enums/Errata.h +1 -1
- package/ReactCommon/yoga/yoga/node/LayoutableChildren.h +148 -0
- package/ReactCommon/yoga/yoga/node/Node.cpp +60 -7
- package/ReactCommon/yoga/yoga/node/Node.h +51 -9
- package/ReactCommon/yoga/yoga/style/Style.h +64 -1
- package/ReactCommon/yoga/yoga/style/StyleLength.h +0 -32
- package/ReactCommon/yoga/yoga/style/StyleValuePool.h +4 -4
- package/cli.js +2 -2
- package/gradle/libs.versions.toml +9 -8
- package/index.js +15 -8
- package/jest/setup.js +31 -0
- package/package.json +11 -13
- package/scripts/cocoapods/codegen_utils.rb +42 -17
- package/scripts/cocoapods/helpers.rb +16 -2
- package/scripts/cocoapods/new_architecture.rb +2 -0
- package/scripts/cocoapods/spm.rb +1 -1
- package/scripts/cocoapods/utils.rb +2 -0
- package/scripts/codegen/generate-artifacts-executor.js +336 -172
- package/scripts/codegen/generate-specs-cli-executor.js +3 -3
- package/scripts/codegen/templates/RCTAppDependencyProviderH.template +25 -0
- package/scripts/codegen/templates/RCTAppDependencyProviderMM.template +55 -0
- package/scripts/codegen/templates/RCTThirdPartyComponentsProviderH.template +16 -0
- package/scripts/codegen/templates/RCTThirdPartyComponentsProviderMM.template +23 -0
- package/scripts/codegen/templates/ReactAppDependencyProvider.podspec.template +34 -0
- package/scripts/generate-provider-cli.js +1 -2
- package/scripts/ios-configure-glog.sh +2 -2
- package/scripts/react-native-xcode.sh +8 -5
- package/scripts/react_native_pods.rb +16 -0
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +15 -9
- package/sdks/hermes-engine/hermes-utils.rb +29 -8
- package/sdks/hermes-engine/utils/build-ios-framework.sh +4 -24
- package/sdks/hermesc/linux64-bin/hermesc +0 -0
- package/sdks/hermesc/osx-bin/hermes +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/src/private/animated/NativeAnimatedHelper.js +18 -16
- package/src/private/animated/useAnimatedPropsMemo.js +356 -0
- package/src/private/components/HScrollViewNativeComponents.js +1 -27
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +11 -8
- package/src/private/components/VScrollViewNativeComponents.js +2 -25
- package/src/private/debugging/ReactDevToolsSettingsManager.android.js +20 -0
- package/src/private/debugging/ReactDevToolsSettingsManager.ios.js +30 -0
- package/{Libraries/ReactNative/ReactFabricInternals.js → src/private/debugging/ReactDevToolsSettingsManager.js.flow} +5 -6
- package/src/private/{fusebox → debugging}/setUpFuseboxReactDevToolsDispatcher.js +6 -0
- package/src/private/devmenu/DevMenu.d.ts +20 -0
- package/src/private/devmenu/DevMenu.js +31 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +96 -82
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +8 -2
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +17 -18
- package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
- package/src/private/setup/setUpDOM.js +14 -6
- package/src/private/setup/setUpMutationObserver.js +5 -0
- package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -0
- package/src/private/specs/components/RCTModalHostViewNativeComponent.js +8 -0
- package/src/private/specs/modules/NativeAccessibilityInfo.js +9 -0
- package/src/private/specs/modules/NativeAccessibilityManager.js +4 -0
- package/src/private/specs/modules/NativeActionSheetManager.js +2 -0
- package/src/private/specs/modules/NativeAppearance.js +4 -10
- package/src/private/specs/modules/NativeExceptionsManager.js +0 -12
- package/src/private/specs/modules/{NativeDevToolsSettingsManager.js → NativeReactDevToolsSettingsManager.js} +3 -5
- package/src/private/webapis/dom/geometry/DOMRect.js +2 -2
- package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +2 -2
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -3
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +102 -11
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +26 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -0
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
- package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +9 -0
- package/src/private/webapis/performance/EventTiming.js +13 -8
- package/src/private/webapis/performance/Performance.js +66 -73
- package/src/private/webapis/performance/PerformanceEntry.js +2 -5
- package/src/private/webapis/performance/PerformanceObserver.js +65 -164
- package/src/private/webapis/performance/RawPerformanceEntry.js +1 -1
- package/src/private/webapis/performance/UserTiming.js +11 -7
- package/src/private/webapis/performance/Utilities.js +18 -0
- package/src/private/webapis/performance/specs/NativePerformance.js +71 -2
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +267 -0
- package/third-party-podspecs/DoubleConversion.podspec +1 -0
- package/third-party-podspecs/RCT-Folly.podspec +20 -11
- package/third-party-podspecs/boost.podspec +4 -0
- package/third-party-podspecs/fast_float.podspec +29 -0
- package/third-party-podspecs/glog.podspec +2 -1
- package/types/index.d.ts +1 -1
- package/types/public/ReactNativeTypes.d.ts +4 -8
- package/types/tsconfig.json +13 -13
- package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +0 -35
- package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +0 -20
- package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +0 -49
- package/Libraries/DevToolsSettings/DevToolsSettingsManager.js.flow +0 -19
- package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +0 -13
- package/React/Base/RCTRuntimeExecutorModule.h +0 -19
- package/ReactAndroid/src/main/java/com/facebook/debug/debugoverlay/model/DebugOverlayTag.java +0 -30
- package/ReactAndroid/src/main/java/com/facebook/debug/tags/ReactDebugOverlayTags.java +0 -38
- package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/KeepGettersAndSetters.java +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.java +0 -159
- package/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java +0 -131
- package/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackageTurboModuleManagerDelegate.java +0 -57
- package/ReactAndroid/src/main/java/com/facebook/react/EagerModuleProvider.java +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java +0 -69
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.java +0 -67
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.java +0 -56
- package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.java +0 -14
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/AssertionException.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSApplicationIllegalArgumentException.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.java +0 -219
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java +0 -266
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArray.java +0 -28
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NoSuchKeyException.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactIgnorableMountingException.java +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.java +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashSoftException.java +0 -29
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.java +0 -66
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java +0 -174
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/WritableNativeArray.java +0 -68
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.java +0 -57
- package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegateFactory.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +0 -79
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/AndroidManifest.xml +0 -10
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.kt +0 -74
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.kt +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/LongStreamingStats.java +0 -76
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +0 -90
- package/ReactAndroid/src/main/java/com/facebook/react/flipper/ReactNativeFlipper.kt +0 -34
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/DevToolsSettingsManagerModule.kt +0 -40
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +0 -280
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.java +0 -175
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +0 -104
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessDevSupportManager.java +0 -159
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.java +0 -73
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.java +0 -42
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -329
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerInterface.kt +0 -85
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.java +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/ReactFindViewUtil.java +0 -138
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerView.java +0 -82
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewCommandHelper.java +0 -141
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.java +0 -151
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +0 -194
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.java +0 -65
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +0 -66
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.java +0 -55
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.java +0 -153
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManagerCallback.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +0 -198
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.java +0 -47
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.java +0 -63
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactClippingViewManager.java +0 -95
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +0 -146
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +0 -588
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CompositeTurboModuleManagerDelegate.cpp +0 -58
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CompositeTurboModuleManagerDelegate.h +0 -48
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTRuntimeExecutor.h +0 -32
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTRuntimeExecutor.mm +0 -34
- package/ReactCommon/react/nativemodule/samples/platform/android/SampleLegacyModule.java +0 -246
- package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.java +0 -281
- package/ReactCommon/react/nativemodule/webperformance/NativePerformanceObserver.cpp +0 -130
- package/ReactCommon/react/nativemodule/webperformance/NativePerformanceObserver.h +0 -91
- package/ReactCommon/react/performance/timeline/BoundedConsumableBuffer.h +0 -247
- package/ReactCommon/react/performance/timeline/tests/BoundedConsumableBufferTest.cpp +0 -219
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +0 -57
- package/ReactCommon/react/utils/CoreFeatures.h +0 -30
- package/src/private/components/useSyncOnScroll.js +0 -48
- package/src/private/fusebox/README.md +0 -12
- package/src/private/webapis/performance/specs/NativePerformanceObserver.js +0 -61
- package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +0 -67
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +0 -127
- package/types/experimental.d.ts +0 -59
- /package/src/private/{fusebox → debugging}/FuseboxSessionObserver.js +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
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
|
+
#include "AppleEventBeat.h"
|
|
9
|
+
|
|
10
|
+
#include <react/debug/react_native_assert.h>
|
|
11
|
+
|
|
12
|
+
namespace facebook::react {
|
|
13
|
+
|
|
14
|
+
AppleEventBeat::AppleEventBeat(
|
|
15
|
+
std::shared_ptr<OwnerBox> ownerBox,
|
|
16
|
+
std::unique_ptr<const RunLoopObserver> uiRunLoopObserver,
|
|
17
|
+
RuntimeScheduler& runtimeScheduler)
|
|
18
|
+
: EventBeat(std::move(ownerBox), runtimeScheduler),
|
|
19
|
+
uiRunLoopObserver_(std::move(uiRunLoopObserver)) {
|
|
20
|
+
uiRunLoopObserver_->setDelegate(this);
|
|
21
|
+
uiRunLoopObserver_->enable();
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
void AppleEventBeat::activityDidChange(
|
|
25
|
+
const RunLoopObserver::Delegate* delegate,
|
|
26
|
+
RunLoopObserver::Activity /*activity*/) const noexcept {
|
|
27
|
+
react_native_assert(delegate == this);
|
|
28
|
+
induce();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
} // namespace facebook::react
|
|
@@ -13,19 +13,19 @@
|
|
|
13
13
|
|
|
14
14
|
namespace facebook::react {
|
|
15
15
|
|
|
16
|
+
class RuntimeScheduler;
|
|
17
|
+
|
|
16
18
|
/*
|
|
17
19
|
* Event beat associated with JavaScript runtime.
|
|
18
20
|
* The beat is called on `RuntimeExecutor`'s thread induced by the UI thread
|
|
19
21
|
* event loop.
|
|
20
22
|
*/
|
|
21
|
-
class
|
|
22
|
-
public RunLoopObserver::Delegate {
|
|
23
|
+
class AppleEventBeat : public EventBeat, public RunLoopObserver::Delegate {
|
|
23
24
|
public:
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
void induce() const override;
|
|
25
|
+
AppleEventBeat(
|
|
26
|
+
std::shared_ptr<OwnerBox> ownerBox,
|
|
27
|
+
std::unique_ptr<const RunLoopObserver> uiRunLoopObserver,
|
|
28
|
+
RuntimeScheduler& RuntimeScheduler);
|
|
29
29
|
|
|
30
30
|
#pragma mark - RunLoopObserver::Delegate
|
|
31
31
|
|
|
@@ -34,10 +34,7 @@ class AsynchronousEventBeat : public EventBeat,
|
|
|
34
34
|
RunLoopObserver::Activity activity) const noexcept override;
|
|
35
35
|
|
|
36
36
|
private:
|
|
37
|
-
|
|
38
|
-
RuntimeExecutor runtimeExecutor_;
|
|
39
|
-
|
|
40
|
-
mutable std::atomic<bool> isBeatCallbackScheduled_{false};
|
|
37
|
+
std::unique_ptr<const RunLoopObserver> uiRunLoopObserver_;
|
|
41
38
|
};
|
|
42
39
|
|
|
43
40
|
} // namespace facebook::react
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
#import <react/renderer/components/image/ImageProps.h>
|
|
17
17
|
#import <react/renderer/imagemanager/ImageRequest.h>
|
|
18
18
|
#import <react/renderer/imagemanager/RCTImagePrimitivesConversions.h>
|
|
19
|
-
#import <react/utils/CoreFeatures.h>
|
|
20
19
|
|
|
21
20
|
using namespace facebook::react;
|
|
22
21
|
|
|
@@ -101,13 +100,6 @@ using namespace facebook::react;
|
|
|
101
100
|
const auto &imageRequest = _state->getData().getImageRequest();
|
|
102
101
|
auto &observerCoordinator = imageRequest.getObserverCoordinator();
|
|
103
102
|
observerCoordinator.removeObserver(_imageResponseObserverProxy);
|
|
104
|
-
// Cancelling image request because we are no longer observing it.
|
|
105
|
-
// This is not 100% correct place to do this because we may want to
|
|
106
|
-
// re-create RCTImageComponentView with the same image and if it
|
|
107
|
-
// was cancelled before downloaded, download is not resumed.
|
|
108
|
-
// This will only become issue if we decouple life cycle of a
|
|
109
|
-
// ShadowNode from ComponentView, which is not something we do now.
|
|
110
|
-
imageRequest.cancel();
|
|
111
103
|
}
|
|
112
104
|
|
|
113
105
|
_state = state;
|
|
@@ -40,7 +40,7 @@ Class<RCTComponentViewProtocol> RCTFabricComponentsProvider(const char *name) {
|
|
|
40
40
|
auto classFunc = p->second;
|
|
41
41
|
return classFunc();
|
|
42
42
|
}
|
|
43
|
-
return
|
|
43
|
+
return nullptr;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
#endif // RN_DISABLE_OSS_PLUGIN_HEADER
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#import "RCTEnhancedScrollView.h"
|
|
9
9
|
#import <React/RCTUtils.h>
|
|
10
|
+
#import <react/utils/FloatComparison.h>
|
|
10
11
|
|
|
11
12
|
@interface RCTEnhancedScrollView () <UIScrollViewDelegate>
|
|
12
13
|
@end
|
|
@@ -261,7 +262,8 @@
|
|
|
261
262
|
|
|
262
263
|
- (BOOL)isHorizontal:(UIScrollView *)scrollView
|
|
263
264
|
{
|
|
264
|
-
return scrollView.contentSize.width
|
|
265
|
+
return !facebook::react::floatEquality(scrollView.contentSize.width, self.frame.size.width) &&
|
|
266
|
+
scrollView.contentSize.width > self.frame.size.width;
|
|
265
267
|
}
|
|
266
268
|
|
|
267
269
|
@end
|
|
@@ -81,7 +81,7 @@ RCTSendScrollEventForNativeAnimations_DEPRECATED(UIScrollView *scrollView, NSInt
|
|
|
81
81
|
userData:nil
|
|
82
82
|
coalescingKey:coalescingKey];
|
|
83
83
|
NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:scrollEvent, @"event", nil];
|
|
84
|
-
[[NSNotificationCenter defaultCenter] postNotificationName
|
|
84
|
+
[[NSNotificationCenter defaultCenter] postNotificationName:RCTNotifyEventDispatcherObserversOfEvent_DEPRECATED
|
|
85
85
|
object:nil
|
|
86
86
|
userInfo:userInfo];
|
|
87
87
|
}
|
|
@@ -556,6 +556,7 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
556
556
|
metrics.contentInset = RCTEdgeInsetsFromUIEdgeInsets(_scrollView.contentInset);
|
|
557
557
|
metrics.containerSize = RCTSizeFromCGSize(_scrollView.bounds.size);
|
|
558
558
|
metrics.zoomScale = _scrollView.zoomScale;
|
|
559
|
+
metrics.timestamp = CACurrentMediaTime();
|
|
559
560
|
|
|
560
561
|
if (_layoutMetrics.layoutDirection == LayoutDirection::RightToLeft) {
|
|
561
562
|
metrics.contentOffset.x = metrics.contentSize.width - metrics.containerSize.width - metrics.contentOffset.x;
|
|
@@ -569,12 +570,19 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
569
570
|
if (!_state) {
|
|
570
571
|
return;
|
|
571
572
|
}
|
|
573
|
+
|
|
572
574
|
auto contentOffset = RCTPointFromCGPoint(_scrollView.contentOffset);
|
|
573
|
-
_state->updateState(
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
575
|
+
_state->updateState(
|
|
576
|
+
[contentOffset](
|
|
577
|
+
const ScrollViewShadowNode::ConcreteState::Data &oldData) -> ScrollViewShadowNode::ConcreteState::SharedData {
|
|
578
|
+
if (oldData.contentOffset == contentOffset) {
|
|
579
|
+
// avoid doing a state update if content offset didn't change.
|
|
580
|
+
return nullptr;
|
|
581
|
+
}
|
|
582
|
+
auto newData = oldData;
|
|
583
|
+
newData.contentOffset = contentOffset;
|
|
584
|
+
return std::make_shared<const ScrollViewShadowNode::ConcreteState::Data>(newData);
|
|
585
|
+
});
|
|
578
586
|
}
|
|
579
587
|
|
|
580
588
|
- (void)prepareForRecycle
|
|
@@ -623,33 +631,18 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
623
631
|
|
|
624
632
|
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
|
|
625
633
|
{
|
|
626
|
-
const auto &props = static_cast<const ScrollViewProps &>(*_props);
|
|
627
634
|
auto scrollMetrics = [self _scrollViewMetrics];
|
|
628
635
|
|
|
629
|
-
|
|
636
|
+
[self _updateStateWithContentOffset];
|
|
637
|
+
|
|
638
|
+
NSTimeInterval now = CACurrentMediaTime();
|
|
639
|
+
if ((_lastScrollEventDispatchTime == 0) || (now - _lastScrollEventDispatchTime > _scrollEventThrottle)) {
|
|
640
|
+
_lastScrollEventDispatchTime = now;
|
|
630
641
|
if (_eventEmitter) {
|
|
631
|
-
|
|
632
|
-
// TODO: temporary API to unblock testing of synchronous rendering.
|
|
633
|
-
eventEmitter.experimental_flushSync([&eventEmitter, &scrollMetrics, &self]() {
|
|
634
|
-
[self _updateStateWithContentOffset];
|
|
635
|
-
// TODO: temporary API to unblock testing of synchronous rendering.
|
|
636
|
-
eventEmitter.experimental_onDiscreteScroll(scrollMetrics);
|
|
637
|
-
});
|
|
638
|
-
}
|
|
639
|
-
} else {
|
|
640
|
-
if (!_isUserTriggeredScrolling || CoreFeatures::enableGranularScrollViewStateUpdatesIOS) {
|
|
641
|
-
[self _updateStateWithContentOffset];
|
|
642
|
+
static_cast<const ScrollViewEventEmitter &>(*_eventEmitter).onScroll(scrollMetrics);
|
|
642
643
|
}
|
|
643
644
|
|
|
644
|
-
|
|
645
|
-
if ((_lastScrollEventDispatchTime == 0) || (now - _lastScrollEventDispatchTime > _scrollEventThrottle)) {
|
|
646
|
-
_lastScrollEventDispatchTime = now;
|
|
647
|
-
if (_eventEmitter) {
|
|
648
|
-
static_cast<const ScrollViewEventEmitter &>(*_eventEmitter).onScroll(scrollMetrics);
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
RCTSendScrollEventForNativeAnimations_DEPRECATED(scrollView, self.tag, kOnScrollEvent);
|
|
652
|
-
}
|
|
645
|
+
RCTSendScrollEventForNativeAnimations_DEPRECATED(scrollView, self.tag, kOnScrollEvent);
|
|
653
646
|
}
|
|
654
647
|
|
|
655
648
|
[self _remountChildrenIfNeeded];
|
|
@@ -1030,18 +1023,23 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
1030
1023
|
[self sendBlurNotification];
|
|
1031
1024
|
[self removeSwipeGestureRecognizers];
|
|
1032
1025
|
[self resignFirstResponder];
|
|
1033
|
-
//
|
|
1034
|
-
//
|
|
1035
|
-
// Similarly
|
|
1026
|
+
// If scrolling is enabled:
|
|
1027
|
+
// - Scroll to the top when moving up and to the bottom when moving down.
|
|
1028
|
+
// - Similarly, scroll towards leading edge when moving towards leading edge and to the trailing edge when moving towards the trailing edge.
|
|
1029
|
+
BOOL isRTL = [[RCTI18nUtil sharedInstance] isRTL];
|
|
1030
|
+
BOOL isMovingTowardsLeadingEdge = (isRTL ? context.focusHeading == UIFocusHeadingRight : context.focusHeading == UIFocusHeadingLeft);
|
|
1031
|
+
BOOL isMovingTowardsTrailingEdge = (isRTL ? context.focusHeading == UIFocusHeadingLeft : context.focusHeading == UIFocusHeadingRight);
|
|
1036
1032
|
RCTEnhancedScrollView *scrollView = (RCTEnhancedScrollView *)_scrollView;
|
|
1037
|
-
if (
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1033
|
+
if (scrollView.isScrollEnabled) {
|
|
1034
|
+
if (context.focusHeading == UIFocusHeadingUp && scrollView.snapToStart) {
|
|
1035
|
+
[self scrollToVerticalOffset:0.0];
|
|
1036
|
+
} else if(context.focusHeading == UIFocusHeadingDown && scrollView.snapToEnd) {
|
|
1037
|
+
[self scrollToVerticalOffset:scrollView.contentSize.height];
|
|
1038
|
+
} else if(isMovingTowardsLeadingEdge && scrollView.snapToStart) {
|
|
1039
|
+
[self scrollToHorizontalOffset:0.0];
|
|
1040
|
+
} else if(isMovingTowardsTrailingEdge && scrollView.snapToEnd) {
|
|
1041
|
+
[self scrollToHorizontalOffset:scrollView.contentSize.width];
|
|
1042
|
+
}
|
|
1045
1043
|
}
|
|
1046
1044
|
}
|
|
1047
1045
|
}
|
|
@@ -1100,23 +1098,32 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
1100
1098
|
|
|
1101
1099
|
- (BOOL)shouldUpdateFocusInContext:(UIFocusUpdateContext *)context
|
|
1102
1100
|
{
|
|
1101
|
+
// If the previously focused item is this view and scrolling is disabled, defer to the superclass
|
|
1102
|
+
if (context.previouslyFocusedItem == self && !self.scrollView.isScrollEnabled) {
|
|
1103
|
+
return [super shouldUpdateFocusInContext:context];
|
|
1104
|
+
}
|
|
1105
|
+
|
|
1103
1106
|
// Determine if the layout is Right-to-Left
|
|
1104
1107
|
BOOL isRTL = [[RCTI18nUtil sharedInstance] isRTL];
|
|
1105
1108
|
BOOL isHorizontal = _scrollView.contentSize.width > self.frame.size.width;
|
|
1106
1109
|
// Adjust for horizontal scrolling with RTL support
|
|
1107
1110
|
if (isHorizontal) {
|
|
1108
|
-
BOOL
|
|
1109
|
-
BOOL
|
|
1111
|
+
BOOL isMovingTowardsLeadingEdge = (isRTL ? context.focusHeading == UIFocusHeadingRight : context.focusHeading == UIFocusHeadingLeft);
|
|
1112
|
+
BOOL isMovingTowardsTrailingEdge = (isRTL ? context.focusHeading == UIFocusHeadingLeft : context.focusHeading == UIFocusHeadingRight);
|
|
1113
|
+
|
|
1114
|
+
BOOL isScrollingToLeading = (isMovingTowardsLeadingEdge && self.scrollView.contentOffset.x > 0);
|
|
1115
|
+
BOOL isScrollingToTrailing = (isMovingTowardsTrailingEdge && self.scrollView.contentOffset.x < self.scrollView.contentSize.width - MAX(self.scrollView.visibleSize.width, 1));
|
|
1110
1116
|
|
|
1111
|
-
if (
|
|
1112
|
-
(
|
|
1113
|
-
return [UIFocusSystem environment:self containsEnvironment:context.nextFocusedItem];
|
|
1117
|
+
if (isScrollingToLeading || isScrollingToTrailing) {
|
|
1118
|
+
return (context.nextFocusedItem && [UIFocusSystem environment:self containsEnvironment:context.nextFocusedItem]);
|
|
1114
1119
|
}
|
|
1115
1120
|
} else {
|
|
1116
1121
|
// Handle vertical scrolling as before
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1122
|
+
BOOL isMovingUp = (context.focusHeading == UIFocusHeadingUp && self.scrollView.contentOffset.y > 0);
|
|
1123
|
+
BOOL isMovingDown = (context.focusHeading == UIFocusHeadingDown && self.scrollView.contentOffset.y < self.scrollView.contentSize.height - MAX(self.scrollView.visibleSize.height, 1));
|
|
1124
|
+
|
|
1125
|
+
if (isMovingUp || isMovingDown) {
|
|
1126
|
+
return (context.nextFocusedItem && [UIFocusSystem environment:self containsEnvironment:context.nextFocusedItem]);
|
|
1120
1127
|
}
|
|
1121
1128
|
}
|
|
1122
1129
|
return [super shouldUpdateFocusInContext:context];
|
|
@@ -1160,60 +1167,100 @@ static inline UIViewAnimationOptions animationOptionsWithCurve(UIViewAnimationCu
|
|
|
1160
1167
|
return duration;
|
|
1161
1168
|
}
|
|
1162
1169
|
|
|
1163
|
-
- (void)
|
|
1170
|
+
- (void)scrollToVerticalOffset:(CGFloat)yOffset
|
|
1164
1171
|
{
|
|
1165
1172
|
_blockFirstTouch = NO;
|
|
1166
1173
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
1167
1174
|
CGFloat limitedOffset = yOffset;
|
|
1175
|
+
|
|
1176
|
+
// Ensure content size and visible size are non-negative
|
|
1177
|
+
CGFloat contentHeight = MAX(self.scrollView.contentSize.height, 0.0);
|
|
1178
|
+
CGFloat visibleHeight = MAX(self.scrollView.visibleSize.height, 0.0);
|
|
1179
|
+
|
|
1180
|
+
// Compute the maximum offset, ensuring it's non-negative
|
|
1181
|
+
CGFloat maxOffset = MAX(contentHeight - visibleHeight, 0.0);
|
|
1182
|
+
|
|
1183
|
+
// Clamp the offset within valid bounds
|
|
1168
1184
|
limitedOffset = MAX(limitedOffset, 0.0);
|
|
1169
|
-
limitedOffset = MIN(limitedOffset,
|
|
1185
|
+
limitedOffset = MIN(limitedOffset, maxOffset);
|
|
1186
|
+
|
|
1170
1187
|
[UIView animateWithDuration:[self swipeDuration] animations:^{
|
|
1171
1188
|
self.scrollView.contentOffset =
|
|
1172
|
-
|
|
1189
|
+
CGPointMake(self.scrollView.contentOffset.x, limitedOffset);
|
|
1173
1190
|
}];
|
|
1174
1191
|
});
|
|
1175
1192
|
}
|
|
1176
1193
|
|
|
1177
|
-
- (void)
|
|
1194
|
+
- (void)scrollToHorizontalOffset:(CGFloat)xOffset
|
|
1178
1195
|
{
|
|
1179
1196
|
_blockFirstTouch = NO;
|
|
1180
1197
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
1181
1198
|
CGFloat limitedOffset = xOffset;
|
|
1199
|
+
|
|
1200
|
+
// Ensure content size and visible size are non-negative
|
|
1201
|
+
CGFloat contentWidth = MAX(self.scrollView.contentSize.width, 0.0);
|
|
1202
|
+
CGFloat visibleWidth = MAX(self.scrollView.visibleSize.width, 0.0);
|
|
1203
|
+
|
|
1204
|
+
// Compute the maximum offset, ensuring it's non-negative
|
|
1205
|
+
CGFloat maxOffset = MAX(contentWidth - visibleWidth, 0.0);
|
|
1206
|
+
|
|
1207
|
+
// Clamp the offset within valid bounds
|
|
1182
1208
|
limitedOffset = MAX(limitedOffset, 0.0);
|
|
1183
|
-
limitedOffset = MIN(limitedOffset,
|
|
1209
|
+
limitedOffset = MIN(limitedOffset, maxOffset);
|
|
1210
|
+
|
|
1184
1211
|
[UIView animateWithDuration:[self swipeDuration] animations:^{
|
|
1185
1212
|
self.scrollView.contentOffset =
|
|
1186
|
-
|
|
1213
|
+
CGPointMake(limitedOffset, self.scrollView.contentOffset.y);
|
|
1187
1214
|
}];
|
|
1188
1215
|
});
|
|
1189
1216
|
}
|
|
1190
1217
|
|
|
1191
1218
|
- (void)swipedUp
|
|
1192
1219
|
{
|
|
1220
|
+
if (!self.scrollView.scrollEnabled) {
|
|
1221
|
+
return;
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1193
1224
|
CGFloat newOffset = self.scrollView.contentOffset.y - [self swipeVerticalInterval];
|
|
1194
1225
|
// NSLog(@"Swiped up to %f", newOffset);
|
|
1195
|
-
[self
|
|
1226
|
+
[self scrollToVerticalOffset:newOffset];
|
|
1196
1227
|
}
|
|
1197
1228
|
|
|
1198
1229
|
- (void)swipedDown
|
|
1199
1230
|
{
|
|
1231
|
+
if (!self.scrollView.scrollEnabled) {
|
|
1232
|
+
return;
|
|
1233
|
+
}
|
|
1234
|
+
|
|
1200
1235
|
CGFloat newOffset = self.scrollView.contentOffset.y + [self swipeVerticalInterval];
|
|
1201
1236
|
// NSLog(@"Swiped down to %f", newOffset);
|
|
1202
|
-
[self
|
|
1237
|
+
[self scrollToVerticalOffset:newOffset];
|
|
1203
1238
|
}
|
|
1204
1239
|
|
|
1205
1240
|
- (void)swipedLeft
|
|
1206
1241
|
{
|
|
1207
|
-
|
|
1242
|
+
if (!self.scrollView.scrollEnabled) {
|
|
1243
|
+
return;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
BOOL isRTL = [[RCTI18nUtil sharedInstance] isRTL];
|
|
1247
|
+
NSInteger horizontalInterval = [self swipeHorizontalInterval];
|
|
1248
|
+
CGFloat newOffset = self.scrollView.contentOffset.x + (isRTL ? horizontalInterval : -horizontalInterval);
|
|
1208
1249
|
// NSLog(@"Swiped left to %f", newOffset);
|
|
1209
|
-
[self
|
|
1250
|
+
[self scrollToHorizontalOffset:newOffset];
|
|
1210
1251
|
}
|
|
1211
1252
|
|
|
1212
1253
|
- (void)swipedRight
|
|
1213
1254
|
{
|
|
1214
|
-
|
|
1255
|
+
if (!self.scrollView.scrollEnabled) {
|
|
1256
|
+
return;
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
BOOL isRTL = [[RCTI18nUtil sharedInstance] isRTL];
|
|
1260
|
+
NSInteger horizontalInterval = [self swipeHorizontalInterval];
|
|
1261
|
+
CGFloat newOffset = self.scrollView.contentOffset.x + (isRTL ? -horizontalInterval : horizontalInterval);
|
|
1215
1262
|
// NSLog(@"Swiped right to %f", newOffset);
|
|
1216
|
-
[self
|
|
1263
|
+
[self scrollToHorizontalOffset:newOffset];
|
|
1217
1264
|
}
|
|
1218
1265
|
|
|
1219
1266
|
- (void)addSwipeGestureRecognizers
|
|
@@ -71,7 +71,6 @@ using namespace facebook::react;
|
|
|
71
71
|
if (oldSwitchProps.value != newSwitchProps.value) {
|
|
72
72
|
BOOL shouldAnimate = _isInitialValueSet == YES;
|
|
73
73
|
[_switchView setOn:newSwitchProps.value animated:shouldAnimate];
|
|
74
|
-
_isInitialValueSet = YES;
|
|
75
74
|
}
|
|
76
75
|
|
|
77
76
|
// `disabled`
|
|
@@ -94,6 +93,8 @@ using namespace facebook::react;
|
|
|
94
93
|
_switchView.thumbTintColor = RCTUIColorFromSharedColor(newSwitchProps.thumbTintColor);
|
|
95
94
|
}
|
|
96
95
|
|
|
96
|
+
_isInitialValueSet = YES;
|
|
97
|
+
|
|
97
98
|
[super updateProps:props oldProps:oldProps];
|
|
98
99
|
}
|
|
99
100
|
|
|
@@ -68,6 +68,8 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
68
68
|
* later comparison insensitive to them.
|
|
69
69
|
*/
|
|
70
70
|
NSDictionary<NSAttributedStringKey, id> *_originalTypingAttributes;
|
|
71
|
+
|
|
72
|
+
BOOL _hasInputAccessoryView;
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
#pragma mark - UIView overrides
|
|
@@ -78,7 +80,7 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
78
80
|
const auto &defaultProps = TextInputShadowNode::defaultSharedProps();
|
|
79
81
|
_props = defaultProps;
|
|
80
82
|
|
|
81
|
-
_backedTextInputView = defaultProps->
|
|
83
|
+
_backedTextInputView = defaultProps->multiline ? [RCTUITextView new] : [RCTUITextField new];
|
|
82
84
|
_backedTextInputView.textInputDelegate = self;
|
|
83
85
|
_ignoreNextTextInputCall = NO;
|
|
84
86
|
_comingFromJS = NO;
|
|
@@ -116,6 +118,7 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
116
118
|
const auto &props = static_cast<const TextInputProps &>(*_props);
|
|
117
119
|
if (props.autoFocus) {
|
|
118
120
|
[_backedTextInputView becomeFirstResponder];
|
|
121
|
+
[self scrollCursorIntoView];
|
|
119
122
|
}
|
|
120
123
|
_didMoveToWindow = YES;
|
|
121
124
|
[self initializeReturnKeyType];
|
|
@@ -169,8 +172,8 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
169
172
|
const auto &newTextInputProps = static_cast<const TextInputProps &>(*props);
|
|
170
173
|
|
|
171
174
|
// Traits:
|
|
172
|
-
if (newTextInputProps.
|
|
173
|
-
[self _setMultiline:newTextInputProps.
|
|
175
|
+
if (newTextInputProps.multiline != oldTextInputProps.multiline) {
|
|
176
|
+
[self _setMultiline:newTextInputProps.multiline];
|
|
174
177
|
}
|
|
175
178
|
|
|
176
179
|
if (newTextInputProps.traits.autocapitalizationType != oldTextInputProps.traits.autocapitalizationType) {
|
|
@@ -277,6 +280,11 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
277
280
|
if (newTextInputProps.inputAccessoryViewID != oldTextInputProps.inputAccessoryViewID) {
|
|
278
281
|
_backedTextInputView.inputAccessoryViewID = RCTNSStringFromString(newTextInputProps.inputAccessoryViewID);
|
|
279
282
|
}
|
|
283
|
+
|
|
284
|
+
if (newTextInputProps.inputAccessoryViewButtonLabel != oldTextInputProps.inputAccessoryViewButtonLabel) {
|
|
285
|
+
_backedTextInputView.inputAccessoryViewButtonLabel =
|
|
286
|
+
RCTNSStringFromString(newTextInputProps.inputAccessoryViewButtonLabel);
|
|
287
|
+
}
|
|
280
288
|
[super updateProps:props oldProps:oldProps];
|
|
281
289
|
|
|
282
290
|
[self setDefaultInputAccessoryView];
|
|
@@ -458,7 +466,7 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
458
466
|
[self _updateTypingAttributes];
|
|
459
467
|
|
|
460
468
|
const auto &props = static_cast<const TextInputProps &>(*_props);
|
|
461
|
-
if (props.
|
|
469
|
+
if (props.multiline && ![_lastStringStateWasUpdatedWith isEqual:_backedTextInputView.attributedText]) {
|
|
462
470
|
[self textInputDidChange];
|
|
463
471
|
_ignoreNextTextInputCall = YES;
|
|
464
472
|
}
|
|
@@ -499,6 +507,8 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
499
507
|
[_backedTextInputView selectAll:nil];
|
|
500
508
|
[self textInputDidChangeSelection];
|
|
501
509
|
}
|
|
510
|
+
|
|
511
|
+
[self scrollCursorIntoView];
|
|
502
512
|
}
|
|
503
513
|
|
|
504
514
|
- (void)blur
|
|
@@ -593,23 +603,28 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
593
603
|
|
|
594
604
|
UIKeyboardType keyboardType = _backedTextInputView.keyboardType;
|
|
595
605
|
UIReturnKeyType returnKeyType = _backedTextInputView.returnKeyType;
|
|
606
|
+
NSString *inputAccessoryViewButtonLabel = _backedTextInputView.inputAccessoryViewButtonLabel;
|
|
596
607
|
|
|
597
608
|
BOOL containsKeyType = [returnKeyTypesSet containsObject:@(returnKeyType)];
|
|
609
|
+
BOOL containsInputAccessoryViewButtonLabel = inputAccessoryViewButtonLabel != nil;
|
|
598
610
|
|
|
599
611
|
// These keyboard types (all are number pads) don't have a "returnKey" button by default,
|
|
600
612
|
// so we create an `inputAccessoryView` with this button for them.
|
|
601
613
|
BOOL shouldHaveInputAccessoryView =
|
|
602
614
|
(keyboardType == UIKeyboardTypeNumberPad || keyboardType == UIKeyboardTypePhonePad ||
|
|
603
615
|
keyboardType == UIKeyboardTypeDecimalPad || keyboardType == UIKeyboardTypeASCIICapableNumberPad) &&
|
|
604
|
-
containsKeyType;
|
|
616
|
+
(containsKeyType || containsInputAccessoryViewButtonLabel);
|
|
605
617
|
|
|
606
|
-
if (
|
|
618
|
+
if (_hasInputAccessoryView == shouldHaveInputAccessoryView) {
|
|
607
619
|
return;
|
|
608
620
|
}
|
|
609
621
|
|
|
622
|
+
_hasInputAccessoryView = shouldHaveInputAccessoryView;
|
|
623
|
+
|
|
610
624
|
#if !TARGET_OS_TV
|
|
611
625
|
if (shouldHaveInputAccessoryView) {
|
|
612
|
-
NSString *buttonLabel =
|
|
626
|
+
NSString *buttonLabel = inputAccessoryViewButtonLabel != nil ? inputAccessoryViewButtonLabel
|
|
627
|
+
: [self returnKeyTypeToString:returnKeyType];
|
|
613
628
|
|
|
614
629
|
UIToolbar *toolbarView = [UIToolbar new];
|
|
615
630
|
[toolbarView sizeToFit];
|
|
@@ -634,6 +649,8 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
634
649
|
|
|
635
650
|
- (void)handleInputAccessoryDoneButton
|
|
636
651
|
{
|
|
652
|
+
// Ignore the value of whether we submitted; just make sure the submit event is called if necessary.
|
|
653
|
+
[self textInputShouldSubmitOnReturn];
|
|
637
654
|
if ([self textInputShouldReturn]) {
|
|
638
655
|
[_backedTextInputView endEditing:YES];
|
|
639
656
|
}
|
|
@@ -736,6 +753,16 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
736
753
|
}
|
|
737
754
|
}
|
|
738
755
|
|
|
756
|
+
- (void)scrollCursorIntoView
|
|
757
|
+
{
|
|
758
|
+
UITextRange *selectedRange = _backedTextInputView.selectedTextRange;
|
|
759
|
+
if (selectedRange.empty) {
|
|
760
|
+
NSInteger offsetStart = [_backedTextInputView offsetFromPosition:_backedTextInputView.beginningOfDocument
|
|
761
|
+
toPosition:selectedRange.start];
|
|
762
|
+
[_backedTextInputView scrollRangeToVisible:NSMakeRange(offsetStart, 0)];
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
|
|
739
766
|
- (void)_setMultiline:(BOOL)multiline
|
|
740
767
|
{
|
|
741
768
|
[_backedTextInputView removeFromSuperview];
|
|
@@ -801,14 +828,7 @@ static NSSet<NSNumber *> *returnKeyTypesSet;
|
|
|
801
828
|
- (SubmitBehavior)getSubmitBehavior
|
|
802
829
|
{
|
|
803
830
|
const auto &props = static_cast<const TextInputProps &>(*_props);
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
// We should always have a non-default `submitBehavior`, but in case we don't, set it based on multiline.
|
|
807
|
-
if (submitBehaviorDefaultable == SubmitBehavior::Default) {
|
|
808
|
-
return props.traits.multiline ? SubmitBehavior::Newline : SubmitBehavior::BlurAndSubmit;
|
|
809
|
-
}
|
|
810
|
-
|
|
811
|
-
return submitBehaviorDefaultable;
|
|
831
|
+
return props.getNonDefaultSubmitBehavior();
|
|
812
832
|
}
|
|
813
833
|
|
|
814
834
|
@end
|
|
@@ -240,6 +240,15 @@ UITextContentType RCTUITextContentTypeFromString(const std::string &contentType)
|
|
|
240
240
|
@"birthdateYear" : UITextContentTypeBirthdateYear,
|
|
241
241
|
}];
|
|
242
242
|
}
|
|
243
|
+
|
|
244
|
+
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 170400 /* __IPHONE_17_4 */
|
|
245
|
+
if (@available(iOS 17.4, *)) {
|
|
246
|
+
[mutableContentTypeMap addEntriesFromDictionary:@{
|
|
247
|
+
@"cellularEID" : UITextContentTypeCellularEID,
|
|
248
|
+
@"cellularIMEI" : UITextContentTypeCellularIMEI,
|
|
249
|
+
}];
|
|
250
|
+
}
|
|
251
|
+
#endif
|
|
243
252
|
#endif
|
|
244
253
|
|
|
245
254
|
contentTypeMap = mutableContentTypeMap;
|