react-native-tvos 0.84.1-0 → 0.85.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.js +3 -3
- package/Libraries/Animated/Animated.d.ts +8 -1
- package/Libraries/Animated/AnimatedEvent.js +4 -4
- package/Libraries/Animated/AnimatedImplementation.js +2 -2
- package/Libraries/Animated/animations/Animation.js +3 -3
- package/Libraries/Animated/animations/DecayAnimation.js +4 -4
- package/Libraries/Animated/animations/SpringAnimation.js +5 -5
- package/Libraries/Animated/animations/TimingAnimation.js +5 -5
- package/Libraries/Animated/createAnimatedComponent.js +7 -7
- package/Libraries/Animated/nodes/AnimatedColor.js +2 -2
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +12 -12
- package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +3 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +6 -6
- package/Libraries/Animated/nodes/AnimatedStyle.js +7 -7
- package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
- package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
- package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
- package/{jest/mocks/Vibration.js → Libraries/Animated/useAnimatedColor.d.ts} +5 -6
- package/Libraries/Animated/useAnimatedColor.js +25 -0
- package/{jest/mocks/Clipboard.js → Libraries/Animated/useAnimatedValueXY.d.ts} +5 -6
- package/Libraries/Animated/useAnimatedValueXY.js +26 -0
- package/Libraries/AppDelegate/RCTAppDelegate.mm +0 -8
- package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +1 -3
- package/Libraries/AppDelegate/RCTReactNativeFactory.mm +1 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +2 -6
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/MessageQueue.js +3 -3
- package/Libraries/BatchedBridge/NativeModules.js +12 -10
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -26
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +2 -2
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +2 -2
- package/Libraries/Components/Keyboard/Keyboard.js +6 -6
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.d.ts +5 -0
- package/Libraries/Components/Pressable/Pressable.js +3 -3
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +4 -4
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +3 -3
- package/Libraries/Components/RefreshControl/RefreshControl.js +5 -5
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +10 -12
- package/Libraries/Components/ScrollView/ScrollView.d.ts +18 -1
- package/Libraries/Components/ScrollView/ScrollView.js +33 -10
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +12 -18
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +7 -4
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/StatusBar.js +8 -8
- package/Libraries/Components/Switch/Switch.js +3 -3
- package/Libraries/Components/TV/TVViewPropTypes.js +7 -0
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -48
- package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -11
- package/Libraries/Components/TextInput/TextInput.flow.js +21 -20
- package/Libraries/Components/TextInput/TextInput.js +8 -4
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +2 -2
- package/Libraries/Components/Touchable/TouchableBounce.js +4 -4
- package/Libraries/Components/Touchable/TouchableHighlight.js +6 -6
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +7 -7
- package/Libraries/Components/Touchable/TouchableOpacity.js +3 -3
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +68 -31
- package/Libraries/Components/View/View.js +6 -0
- package/Libraries/Components/View/ViewAccessibility.js +7 -7
- package/Libraries/Components/View/ViewPropTypes.js +15 -15
- package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
- package/Libraries/Core/ExceptionsManager.js +2 -2
- package/Libraries/Core/ExtendedError.js +3 -3
- package/Libraries/Core/RawEventEmitter.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +3 -2
- package/Libraries/Core/setUpDeveloperTools.js +1 -1
- package/Libraries/Core/setUpErrorHandling.js +4 -2
- package/Libraries/Core/setUpReactDevTools.js +23 -6
- package/Libraries/Core/setUpSegmentFetcher.js +1 -1
- package/Libraries/Debugging/DebuggingOverlay.js +2 -2
- package/Libraries/EventEmitter/NativeEventEmitter.js +7 -9
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +1 -1
- package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +0 -6
- package/Libraries/Image/AssetSourceResolver.js +1 -1
- package/Libraries/Image/Image.android.js +172 -306
- package/Libraries/Image/ImageProps.js +9 -11
- package/Libraries/Image/ImageSource.js +2 -2
- package/Libraries/Image/ImageSourceUtils.js +8 -4
- package/Libraries/Image/ImageTypes.flow.js +2 -2
- package/Libraries/Image/ImageViewNativeComponent.js +7 -16
- package/Libraries/Image/RCTImageUtils.mm +37 -1
- package/Libraries/Image/nativeImageSource.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +5 -4
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +3 -3
- package/Libraries/Lists/SectionList.js +1 -1
- package/Libraries/Lists/SectionListModern.js +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +38 -24
- package/Libraries/LogBox/Data/LogBoxLog.js +43 -112
- package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -117
- package/Libraries/LogBox/LogBox.js +42 -19
- package/Libraries/LogBox/LogBoxInspectorContainer.js +2 -2
- package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
- package/Libraries/LogBox/UI/LogBoxButton.js +28 -30
- package/Libraries/LogBox/UI/LogBoxInspector.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -9
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +10 -15
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +25 -18
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +8 -10
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -6
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +17 -29
- package/Libraries/LogBox/UI/LogBoxMessage.js +28 -37
- package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
- package/Libraries/Modal/Modal.js +3 -3
- package/Libraries/NativeComponent/BaseViewConfig.android.js +28 -52
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -21
- package/Libraries/NativeComponent/TVViewConfig.js +1 -0
- package/Libraries/Network/RCTHTTPRequestHandler.h +9 -0
- package/Libraries/Network/RCTHTTPRequestHandler.mm +15 -1
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +1 -1
- package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +1 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
- package/Libraries/Pressability/Pressability.js +12 -5
- package/Libraries/Pressability/PressabilityDebug.js +1 -1
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
- package/Libraries/Pressability/usePressability.js +3 -14
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +11 -21
- package/Libraries/ReactNative/AppContainer-dev.js +18 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +2 -2
- package/Libraries/ReactNative/FabricUIManager.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +4 -4
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -2
- package/Libraries/Renderer/shims/ReactFabric.js +1 -3
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
- package/Libraries/Renderer/shims/ReactNative.js +3 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
- package/Libraries/StyleSheet/PointPropType.js +1 -1
- package/Libraries/StyleSheet/Rect.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
- package/Libraries/StyleSheet/StyleSheetExports.js +16 -25
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +2 -7
- package/Libraries/StyleSheet/StyleSheetTypes.js +33 -36
- package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
- package/Libraries/StyleSheet/private/_TransformStyle.js +7 -7
- package/Libraries/StyleSheet/processBackgroundImage.js +7 -7
- package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
- package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
- package/Libraries/StyleSheet/processBackgroundSize.js +4 -4
- package/Libraries/StyleSheet/processBoxShadow.js +44 -4
- package/Libraries/StyleSheet/processColorArray.js +2 -2
- package/Libraries/StyleSheet/processFilter.js +2 -2
- package/Libraries/Text/Text/RCTDynamicTypeRamp.mm +5 -4
- package/Libraries/Text/Text.js +295 -627
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +7 -1
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +14 -12
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +1 -1
- package/Libraries/Text/TextNativeComponent.js +14 -7
- package/Libraries/Text/TextProps.js +4 -4
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CoreEventTypes.js +21 -21
- package/Libraries/Types/ReactDevToolsTypes.js +2 -2
- package/Libraries/Utilities/Appearance.js +6 -1
- package/Libraries/Utilities/Dimensions.js +1 -1
- package/Libraries/Utilities/HMRClient.js +4 -4
- package/Libraries/Utilities/IPerformanceLogger.js +4 -4
- package/Libraries/Utilities/codegenNativeCommands.js +4 -4
- package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
- package/Libraries/Utilities/codegenNativeComponent.js +2 -2
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +3 -3
- package/Libraries/Utilities/useMergeRefs.js +2 -2
- package/Libraries/WebSocket/RCTReconnectingWebSocket.m +4 -1
- package/Libraries/vendor/core/ErrorUtils.js +4 -4
- package/Libraries/vendor/emitter/EventEmitter.js +16 -20
- package/README.md +52 -0
- package/React/Base/RCTBridge.mm +1 -1
- package/React/Base/RCTBundleURLProvider.mm +29 -8
- package/React/Base/RCTConvert.mm +3 -18
- package/React/Base/RCTDefines.h +7 -8
- package/React/Base/RCTDevSupportHttpHeaders.h +24 -0
- package/React/Base/RCTDevSupportHttpHeaders.m +65 -0
- package/React/Base/RCTJavaScriptLoader.h +1 -0
- package/React/Base/RCTJavaScriptLoader.mm +6 -2
- package/React/Base/RCTMultipartDataTask.h +9 -0
- package/React/Base/RCTMultipartDataTask.m +19 -1
- package/React/Base/RCTTVColorSupport.h +17 -0
- package/React/Base/RCTTVColorSupport.mm +23 -0
- package/React/Base/RCTUtils.mm +15 -6
- package/React/Base/RCTVersion.m +2 -2
- package/React/CoreModules/RCTActionSheetManager.mm +28 -3
- package/React/CoreModules/RCTClipboard.mm +5 -5
- package/React/CoreModules/RCTDevLoadingView.mm +1 -1
- package/React/CoreModules/RCTDevSettings.mm +8 -0
- package/React/CoreModules/RCTDeviceInfo.mm +4 -3
- package/React/CoreModules/RCTKeyboardObserver.mm +9 -2
- package/React/CoreModules/RCTLogBoxView.mm +4 -8
- package/React/CoreModules/RCTPerfMonitor.mm +5 -0
- package/React/CoreModules/RCTStatusBarManager.h +2 -0
- package/React/CoreModules/RCTWebSocketModule.h +6 -0
- package/React/CoreModules/RCTWebSocketModule.mm +14 -1
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +33 -22
- package/React/DevSupport/RCTInspectorNetworkHelper.mm +2 -0
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +66 -79
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +8 -8
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +1 -1
- package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +2 -2
- package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.mm +4 -0
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +6 -0
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +8 -4
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.h +2 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +81 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +16 -4
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +145 -8
- package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +10 -5
- package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +13 -0
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +9 -13
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +2 -0
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +2 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +2 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +42 -4
- package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.h +2 -1
- package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +92 -163
- package/React/Fabric/Mounting/RCTMountingManager.mm +8 -3
- package/React/Fabric/RCTScheduler.h +2 -0
- package/React/Fabric/RCTScheduler.mm +57 -0
- package/React/Fabric/RCTSurfacePointerHandler.mm +15 -9
- package/React/Fabric/RCTSurfacePresenter.mm +9 -0
- package/React/Fabric/RCTSurfaceTouchHandler.mm +4 -2
- package/React/Fabric/Surface/RCTFabricSurface.mm +4 -0
- package/React/Fabric/Utils/RCTLinearGradient.mm +4 -9
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +5 -1
- package/React/Modules/RCTLayoutAnimation.m +10 -0
- package/React/Modules/RCTUIManager.mm +2 -4
- package/React/Profiler/RCTProfile.m +2 -0
- package/React/React-RCTFabric.podspec +3 -0
- package/React/Views/RCTView.m +6 -1
- package/React/Views/ScrollView/RCTScrollViewManager.m +1 -0
- package/React-Core-prebuilt.podspec +1 -1
- package/ReactAndroid/api/ReactAndroid.api +120 -298
- package/ReactAndroid/build.gradle.kts +9 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +11 -101
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +10 -10
- package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimationDriver.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +11 -11
- package/ReactAndroid/src/main/java/com/facebook/react/animated/DiffClampAnimatedNode.kt +11 -11
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +0 -26
- package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/animated/SpringAnimation.kt +19 -19
- package/ReactAndroid/src/main/java/com/facebook/react/animated/TrackingAnimatedNode.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.kt +9 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +15 -15
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.kt +8 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ScrollEndedListener.kt +70 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/assets/ReactFontManager.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +36 -34
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +14 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +2 -8
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +17 -13
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.kt +10 -19
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxContentView.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +74 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +110 -80
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +87 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +36 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +16 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/LongStreamingStats.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +0 -29
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +2 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +1258 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/FabricNameComponentMapping.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +37 -55
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +66 -96
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +14 -20
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +15 -21
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +74 -107
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +14 -20
- package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +1 -15
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +4 -10
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +45 -74
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +17 -13
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.kt +2 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +3 -4
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +2 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +9 -3
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +12 -12
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +13 -7
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +14 -14
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +14 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +42 -28
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +8 -49
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +11 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +13 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.kt +751 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +104 -781
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +7 -9
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +7 -31
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactZIndexedViewGroup.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +103 -759
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +14 -38
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +41 -170
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +33 -962
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +2 -9
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundPosition.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundRepeat.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundSize.kt +50 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderInsets.kt +25 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +46 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderStyle.kt +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BoxShadow.kt +23 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +45 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ComputedBorderRadius.kt +40 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +21 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +34 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LogicalEdge.kt +33 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/OutlineStyle.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Overflow.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +42 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/UiModeUtils.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +9 -10
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +6 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +132 -16
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +1647 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollViewManager.kt +466 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +104 -10
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +71 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +2 -35
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateClassic.kt +7 -30
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +20 -41
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js +270 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +39 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +4 -65
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +86 -111
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +243 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/SelectableTextViewManager.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +54 -77
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +27 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactLinkSpan.kt +10 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +2 -75
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +5 -38
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ImportantForInteractionHelper.kt +55 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +19 -60
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +7 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +150 -296
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualViewManager.kt +11 -13
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.kt +64 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.kt +244 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.kt +183 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +6 -0
- package/ReactAndroid/src/main/jni/react/fabric/AndroidAnimationChoreographer.h +38 -0
- package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +4 -4
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +7 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +2 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +50 -2
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +11 -0
- package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.cpp +23 -0
- package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.h +37 -0
- package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +2 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +89 -131
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +19 -28
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -7
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +24 -60
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +12 -28
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +13 -6
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +2 -1
- package/{ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.cpp → ReactAndroid/src/main/jni/react/uimanager/StateWrapper.h} +7 -2
- package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +3 -0
- package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +2 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +8 -1
- package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +1 -1
- package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -2
- package/ReactCommon/React-Fabric.podspec +5 -6
- package/ReactCommon/React-FabricComponents.podspec +6 -8
- package/ReactCommon/cxxreact/ReactNativeVersion.h +8 -6
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +1 -1
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +25 -16
- package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.h +1 -1
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +10 -30
- package/ReactCommon/jsinspector-modern/HostAgent.h +4 -11
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +33 -33
- package/ReactCommon/jsinspector-modern/HostTarget.h +23 -24
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +1 -2
- package/ReactCommon/jsinspector-modern/HostTargetTracing.h +89 -0
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +4 -9
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +0 -1
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +164 -54
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +39 -4
- package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +12 -3
- package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +13 -0
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +6 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +34 -18
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +19 -0
- package/ReactCommon/jsinspector-modern/RuntimeTargetDebuggerSessionObserver.cpp +6 -95
- package/ReactCommon/jsinspector-modern/RuntimeTargetGlobalStateObserver.cpp +122 -0
- package/ReactCommon/jsinspector-modern/RuntimeTargetGlobalStateObserver.h +42 -0
- package/ReactCommon/jsinspector-modern/RuntimeTargetTracingStateObserver.cpp +27 -0
- package/ReactCommon/jsinspector-modern/RuntimeTargetTracingStateObserver.h +27 -0
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +7 -45
- package/ReactCommon/jsinspector-modern/TracingAgent.h +0 -11
- package/ReactCommon/jsinspector-modern/UniqueMonostate.h +0 -4
- package/ReactCommon/jsinspector-modern/WeakList.h +60 -1
- package/ReactCommon/jsinspector-modern/network/NetworkHandler.cpp +25 -21
- package/ReactCommon/jsinspector-modern/network/NetworkHandler.h +21 -15
- package/ReactCommon/jsinspector-modern/tests/GmockHelpers.h +1 -1
- package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +3 -3
- package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionMultiSessionTest.cpp +692 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +10 -123
- package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.h +140 -0
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +158 -6
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +34 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +223 -4
- package/ReactCommon/jsinspector-modern/tests/WeakListTest.cpp +31 -1
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +6 -9
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +4 -6
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +6 -17
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +4 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +27 -39
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +32 -47
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +153 -207
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +18 -24
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +26 -38
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +56 -83
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +9 -12
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +3 -1
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +10 -4
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
- package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +32 -0
- package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.h +2 -0
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +32 -47
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +14 -20
- package/ReactCommon/react/renderer/animated/AnimatedModule.h +1 -1
- package/ReactCommon/react/renderer/animated/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +108 -151
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +16 -11
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +80 -86
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.h +0 -1
- package/ReactCommon/react/renderer/animated/event_drivers/EventAnimationDriver.h +0 -1
- package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.h +0 -2
- package/ReactCommon/react/renderer/animated/internal/NativeAnimatedAllowlist.h +2 -2
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +32 -4
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +6 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +14 -21
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +3 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +6 -3
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +125 -63
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +33 -33
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +18 -8
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +1 -1
- package/ReactCommon/react/renderer/animationbackend/AnimationChoreographer.h +39 -0
- package/ReactCommon/react/renderer/animationbackend/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +1 -2
- package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
- package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +0 -6
- package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +0 -1
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +0 -4
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +0 -1
- package/ReactCommon/react/renderer/attributedstring/conversions.h +60 -0
- package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +3 -5
- package/ReactCommon/react/renderer/components/image/ImageProps.h +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/{LegacyViewManagerInteropComponentDescriptor.mm → platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm} +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/{LegacyViewManagerInteropState.mm → platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.mm} +1 -1
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +1 -1
- package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.cpp +20 -0
- package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.h +2 -0
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +1 -1
- package/ReactCommon/react/renderer/components/scrollview/conversions.h +6 -0
- package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +18 -1
- package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.h +2 -0
- package/ReactCommon/react/renderer/components/scrollview/primitives.h +2 -11
- package/ReactCommon/react/renderer/components/scrollview/tests/ScrollViewTest.cpp +83 -3
- package/ReactCommon/react/renderer/components/text/BaseParagraphComponentDescriptor.h +49 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +14 -14
- package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +3 -28
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +10 -10
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +4 -4
- package/ReactCommon/react/renderer/components/text/SelectableParagraphComponentDescriptor.h +24 -0
- package/ReactCommon/react/renderer/components/text/SelectableParagraphShadowNode.h +32 -0
- package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +1 -1
- package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.cpp +1 -1
- package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +2 -2
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +13 -1
- package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp +2 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +2 -21
- package/ReactCommon/react/renderer/components/view/BackgroundImagePropsConversions.cpp +15 -24
- package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -7
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +11 -1
- package/ReactCommon/react/renderer/components/view/BaseViewProps.h +4 -0
- package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +0 -3
- package/ReactCommon/react/renderer/components/view/FilterPropsConversions.h +57 -53
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +1 -0
- package/ReactCommon/react/renderer/components/view/conversions.h +250 -2
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +19 -63
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
- package/ReactCommon/react/renderer/components/view/primitives.h +3 -86
- package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +215 -0
- package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +1 -1
- package/ReactCommon/react/renderer/components/virtualview/VirtualViewComponentDescriptor.h +1 -1
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +1 -1
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +2 -2
- package/ReactCommon/react/renderer/core/EventEmitter.h +8 -8
- package/ReactCommon/react/renderer/core/EventPipe.h +1 -1
- package/ReactCommon/react/renderer/core/EventTarget.cpp +3 -3
- package/ReactCommon/react/renderer/core/EventTarget.h +7 -7
- package/ReactCommon/react/renderer/core/LayoutConstraints.h +0 -5
- package/ReactCommon/react/renderer/core/LayoutContext.h +0 -5
- package/ReactCommon/react/renderer/core/LayoutMetrics.h +0 -2
- package/ReactCommon/react/renderer/core/RawPropsKey.cpp +11 -21
- package/ReactCommon/react/renderer/core/RawPropsKey.h +0 -1
- package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +4 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +1 -7
- package/ReactCommon/react/renderer/core/RawPropsParser.h +2 -6
- package/ReactCommon/react/renderer/core/RawValue.h +1 -2
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +33 -31
- package/ReactCommon/react/renderer/core/ShadowNode.h +19 -29
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +6 -6
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +14 -14
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +4 -2
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.h +2 -2
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +57 -2
- package/ReactCommon/react/renderer/css/CSSBackgroundImage.h +112 -140
- package/ReactCommon/react/renderer/css/CSSColor.h +7 -8
- package/ReactCommon/react/renderer/css/CSSColorFunction.h +38 -39
- package/ReactCommon/react/renderer/css/CSSCompoundDataType.h +23 -17
- package/ReactCommon/react/renderer/css/CSSDataType.h +15 -10
- package/ReactCommon/react/renderer/css/CSSFilter.h +12 -17
- package/ReactCommon/react/renderer/css/CSSKeyword.h +8 -0
- package/ReactCommon/react/renderer/css/CSSList.h +11 -11
- package/ReactCommon/react/renderer/css/CSSRatio.h +4 -4
- package/ReactCommon/react/renderer/css/CSSShadow.h +7 -7
- package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +10 -6
- package/ReactCommon/react/renderer/css/CSSTokenizer.h +2 -0
- package/ReactCommon/react/renderer/css/CSSTransform.h +20 -20
- package/ReactCommon/react/renderer/css/CSSTransformOrigin.h +4 -5
- package/ReactCommon/react/renderer/css/CSSValueParser.h +71 -67
- package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +11 -10
- package/ReactCommon/react/renderer/graphics/BackgroundPosition.h +0 -1
- package/ReactCommon/react/renderer/graphics/BackgroundRepeat.h +0 -1
- package/ReactCommon/react/renderer/graphics/BackgroundSize.h +0 -1
- package/ReactCommon/react/renderer/graphics/Filter.h +3 -2
- package/ReactCommon/react/renderer/graphics/LinearGradient.cpp +9 -15
- package/ReactCommon/react/renderer/graphics/LinearGradient.h +7 -19
- package/ReactCommon/react/renderer/graphics/Point.h +0 -2
- package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -35
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
- package/ReactCommon/react/renderer/graphics/Rect.h +1 -9
- package/ReactCommon/react/renderer/graphics/RectangleCorners.h +1 -10
- package/ReactCommon/react/renderer/graphics/RectangleEdges.h +1 -10
- package/ReactCommon/react/renderer/graphics/Size.h +0 -5
- package/ReactCommon/react/renderer/graphics/Transform.cpp +0 -4
- package/ReactCommon/react/renderer/graphics/Transform.h +1 -13
- package/ReactCommon/react/renderer/graphics/TransformUtils.h +95 -0
- package/ReactCommon/react/renderer/graphics/ValueUnit.h +3 -11
- package/ReactCommon/react/renderer/graphics/fromRawValueShared.h +13 -1
- package/ReactCommon/react/renderer/imagemanager/ImageManager.h +0 -4
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +11 -12
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +4 -3
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +1 -36
- package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +1 -9
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +1 -9
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
- package/ReactCommon/react/renderer/imagemanager/primitives.h +0 -5
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +51 -30
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +2 -0
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +21 -38
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +153 -18
- package/ReactCommon/react/renderer/mounting/ShadowTree.h +30 -6
- package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +11 -0
- package/ReactCommon/react/renderer/mounting/ShadowView.cpp +0 -4
- package/ReactCommon/react/renderer/mounting/ShadowView.h +0 -1
- package/ReactCommon/react/renderer/mounting/internal/DiffMap.h +170 -0
- package/ReactCommon/react/renderer/mounting/internal/ShadowViewNodePair.h +0 -5
- package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.h +3 -3
- package/ReactCommon/react/renderer/mounting/stubs/StubView.cpp +0 -4
- package/ReactCommon/react/renderer/mounting/stubs/StubView.h +0 -1
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +0 -4
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +0 -2
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -0
- package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +12 -4
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +2 -1
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.cpp +0 -5
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.h +0 -1
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +1 -1
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +28 -1
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +2 -2
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +6 -0
- package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +7 -0
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +2 -2
- package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +18 -18
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +8 -7
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +5 -5
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +3 -3
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +4 -3
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +15 -5
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +2 -2
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +10 -1
- package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.cpp +1 -1
- package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.h +1 -3
- package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.cpp +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +68 -38
- package/ReactCommon/react/renderer/uimanager/UIManager.h +17 -8
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +17 -5
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -2
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +2 -2
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +10 -0
- package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.cpp +19 -23
- package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.h +2 -3
- package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +13 -5
- package/ReactCommon/react/renderer/uimanager/primitives.h +16 -7
- package/ReactCommon/react/renderer/uimanager/tests/FindShadowNodeByTagTest.cpp +287 -0
- package/ReactCommon/react/runtime/TimerManager.cpp +16 -2
- package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +11 -6
- package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +11 -0
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +17 -3
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +8 -1
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +8 -5
- package/ReactCommon/react/utils/ContextContainer.h +0 -2
- package/ReactCommon/yoga/yoga/YGNode.cpp +14 -0
- package/ReactCommon/yoga/yoga/YGValue.h +0 -4
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +7 -7
- package/ReactCommon/yoga/yoga/enums/YogaEnums.h +0 -1
- package/ReactCommon/yoga/yoga/node/LayoutResults.h +0 -3
- package/ReactCommon/yoga/yoga/numeric/FloatOptional.h +0 -9
- package/ReactCommon/yoga/yoga/style/Style.h +0 -4
- package/flow/bom.js.flow +18 -17
- package/flow/dom.js.flow +12 -5
- package/flow/global.js +1 -1
- package/gradle/libs.versions.toml +1 -1
- package/index.js +9 -0
- package/index.js.flow +8 -1
- package/jest-preset.js +14 -18
- package/package.json +17 -17
- package/scripts/cocoapods/rncore.rb +111 -2
- package/scripts/cocoapods/utils.rb +2 -0
- package/scripts/codegen/templates/Package.swift.template +7 -0
- package/scripts/react_native_pods.rb +13 -6
- package/scripts/replace-rncore-version.js +12 -3
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/animated/NativeAnimatedHelper.js +2 -2
- package/src/private/animated/createAnimatedPropsMemoHook.js +19 -19
- package/src/private/components/virtualview/VirtualView.js +14 -21
- package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
- package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +39 -17
- package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
- package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
- package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
- package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
- package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +49 -82
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -2
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +9 -12
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/styles/composeStyles.js +1 -1
- package/src/private/utilities/toError.js +27 -0
- package/src/private/utilities/toExtendedError.js +30 -0
- package/src/private/webapis/dom/events/Event.js +1 -1
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
- package/src/private/webapis/dom/events/EventTarget.js +3 -3
- package/src/private/webapis/dom/events/internals/EventInternals.js +2 -2
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +2 -2
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +14 -14
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +1 -1
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +1 -1
- package/src/private/webapis/geometry/DOMRectList.js +2 -2
- package/src/private/webapis/geometry/DOMRectList.js.flow +1 -1
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +8 -8
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +6 -6
- package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
- package/src/private/webapis/mutationobserver/MutationRecord.js +2 -2
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +3 -3
- package/src/private/webapis/performance/LongTasks.js +3 -3
- package/src/private/webapis/performance/Performance.js +4 -4
- package/src/private/webapis/performance/PerformanceEntry.js +1 -1
- package/src/private/webapis/performance/PerformanceObserver.js +2 -2
- package/src/private/webapis/performance/specs/NativePerformance.js +8 -8
- package/src/private/webapis/structuredClone/structuredClone.js +2 -2
- package/src/types/globals.d.ts +4 -4
- package/third-party-podspecs/RCT-Folly.podspec +1 -1
- package/third-party-podspecs/fmt.podspec +2 -2
- package/types/index.d.ts +2 -0
- package/types/public/ReactNativeTVTypes.d.ts +27 -2
- package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -60
- package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
- package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.h +0 -25
- package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +0 -321
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +0 -620
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +0 -1411
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -985
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +0 -403
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.kt +0 -336
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventEmitterImpl.kt +0 -135
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +0 -81
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +0 -72
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.kt +0 -677
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +0 -218
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.kt +0 -369
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +0 -156
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +0 -174
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +0 -54
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.kt +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +0 -58
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +0 -228
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +0 -305
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimentalManager.kt +0 -110
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.java +0 -62
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.java +0 -35
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +0 -279
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +0 -197
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -410
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +0 -113
- package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalComponentDescriptor.h +0 -19
- package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalShadowNode.h +0 -38
- package/jest/MockNativeMethods.js +0 -27
- package/jest/RefreshControlMock.js +0 -32
- package/jest/assetFileTransformer.js +0 -33
- package/jest/local-setup.js +0 -29
- package/jest/mock.js +0 -39
- package/jest/mockComponent.js +0 -104
- package/jest/mockNativeComponent.js +0 -52
- package/jest/mocks/AccessibilityInfo.js +0 -62
- package/jest/mocks/ActivityIndicator.js +0 -23
- package/jest/mocks/AppState.js +0 -19
- package/jest/mocks/Image.js +0 -23
- package/jest/mocks/InitializeCore.js +0 -9
- package/jest/mocks/Linking.js +0 -28
- package/jest/mocks/Modal.js +0 -33
- package/jest/mocks/NativeComponentRegistry.js +0 -30
- package/jest/mocks/NativeModules.js +0 -239
- package/jest/mocks/RefreshControl.js +0 -31
- package/jest/mocks/RendererProxy.js +0 -45
- package/jest/mocks/ScrollView.js +0 -58
- package/jest/mocks/Text.js +0 -27
- package/jest/mocks/TextInput.js +0 -32
- package/jest/mocks/UIManager.js +0 -60
- package/jest/mocks/View.js +0 -27
- package/jest/mocks/ViewNativeComponent.js +0 -23
- package/jest/mocks/requireNativeComponent.js +0 -22
- package/jest/mocks/useColorScheme.js +0 -18
- package/jest/react-native-env.js +0 -17
- package/jest/renderer.js +0 -40
- package/jest/resolver.js +0 -32
- package/jest/setup.js +0 -140
- /package/React/Fabric/Mounting/ComponentViews/{VirtualViewExperimental → VirtualView}/RCTVirtualViewMode.h +0 -0
- /package/React/Fabric/Mounting/ComponentViews/{VirtualViewExperimental → VirtualView}/RCTVirtualViewRenderState.h +0 -0
- /package/ReactAndroid/src/main/java/com/facebook/react/fabric/internal/interop/{InteropUiBlockListener.kt → InteropUIBlockListener.kt} +0 -0
- /package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/{LegacyViewManagerInteropComponentDescriptor.h → platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h} +0 -0
- /package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/{RCTLegacyViewManagerInteropCoordinator.h → platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h} +0 -0
- /package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/{RCTLegacyViewManagerInteropCoordinator.mm → platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm} +0 -0
- /package/ReactCommon/react/renderer/components/scrollview/{RCTComponentViewHelpers.h → platform/ios/react/renderer/components/scrollview/RCTComponentViewHelpers.h} +0 -0
|
@@ -16,22 +16,22 @@ export interface EventSubscription {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export interface IEventEmitter<
|
|
19
|
-
TEventToArgsMap:
|
|
19
|
+
TEventToArgsMap: Readonly<Record<string, ReadonlyArray<UnsafeEventObject>>>,
|
|
20
20
|
> {
|
|
21
|
-
addListener<TEvent:
|
|
21
|
+
addListener<TEvent: keyof TEventToArgsMap>(
|
|
22
22
|
eventType: TEvent,
|
|
23
23
|
listener: (...args: TEventToArgsMap[TEvent]) => unknown,
|
|
24
24
|
context?: unknown,
|
|
25
25
|
): EventSubscription;
|
|
26
26
|
|
|
27
|
-
emit<TEvent:
|
|
27
|
+
emit<TEvent: keyof TEventToArgsMap>(
|
|
28
28
|
eventType: TEvent,
|
|
29
29
|
...args: TEventToArgsMap[TEvent]
|
|
30
30
|
): void;
|
|
31
31
|
|
|
32
|
-
removeAllListeners<TEvent:
|
|
32
|
+
removeAllListeners<TEvent: keyof TEventToArgsMap>(eventType?: ?TEvent): void;
|
|
33
33
|
|
|
34
|
-
listenerCount<TEvent:
|
|
34
|
+
listenerCount<TEvent: keyof TEventToArgsMap>(eventType: TEvent): number;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
interface Registration<TArgs> {
|
|
@@ -41,7 +41,7 @@ interface Registration<TArgs> {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
type Registry<
|
|
44
|
-
TEventToArgsMap:
|
|
44
|
+
TEventToArgsMap: Readonly<Record<string, ReadonlyArray<UnsafeEventObject>>>,
|
|
45
45
|
> = {
|
|
46
46
|
[K in keyof TEventToArgsMap]: Set<Registration<TEventToArgsMap[K]>>,
|
|
47
47
|
};
|
|
@@ -67,9 +67,9 @@ type Registry<
|
|
|
67
67
|
*
|
|
68
68
|
*/
|
|
69
69
|
export default class EventEmitter<
|
|
70
|
-
TEventToArgsMap:
|
|
71
|
-
Record<string,
|
|
72
|
-
> =
|
|
70
|
+
TEventToArgsMap: Readonly<
|
|
71
|
+
Record<string, ReadonlyArray<UnsafeEventObject>>,
|
|
72
|
+
> = Readonly<Record<string, ReadonlyArray<UnsafeEventObject>>>,
|
|
73
73
|
> implements IEventEmitter<TEventToArgsMap>
|
|
74
74
|
{
|
|
75
75
|
#registry: Registry<TEventToArgsMap>;
|
|
@@ -83,7 +83,7 @@ export default class EventEmitter<
|
|
|
83
83
|
* Registers a listener that is called when the supplied event is emitted.
|
|
84
84
|
* Returns a subscription that has a `remove` method to undo registration.
|
|
85
85
|
*/
|
|
86
|
-
addListener<TEvent:
|
|
86
|
+
addListener<TEvent: keyof TEventToArgsMap>(
|
|
87
87
|
eventType: TEvent,
|
|
88
88
|
listener: (...args: TEventToArgsMap[TEvent]) => unknown,
|
|
89
89
|
context: unknown,
|
|
@@ -95,7 +95,7 @@ export default class EventEmitter<
|
|
|
95
95
|
}
|
|
96
96
|
const registrations = allocate<
|
|
97
97
|
TEventToArgsMap,
|
|
98
|
-
|
|
98
|
+
keyof TEventToArgsMap,
|
|
99
99
|
TEventToArgsMap[TEvent],
|
|
100
100
|
>(this.#registry, eventType);
|
|
101
101
|
const registration: Registration<TEventToArgsMap[TEvent]> = {
|
|
@@ -116,7 +116,7 @@ export default class EventEmitter<
|
|
|
116
116
|
* If a listener modifies the listeners registered for the same event, those
|
|
117
117
|
* changes will not be reflected in the current invocation of `emit`.
|
|
118
118
|
*/
|
|
119
|
-
emit<TEvent:
|
|
119
|
+
emit<TEvent: keyof TEventToArgsMap>(
|
|
120
120
|
eventType: TEvent,
|
|
121
121
|
...args: TEventToArgsMap[TEvent]
|
|
122
122
|
): void {
|
|
@@ -126,7 +126,6 @@ export default class EventEmitter<
|
|
|
126
126
|
// Copy `registrations` to take a snapshot when we invoke `emit`, in case
|
|
127
127
|
// registrations are added or removed when listeners are invoked.
|
|
128
128
|
for (const registration of Array.from(registrations)) {
|
|
129
|
-
// $FlowFixMe[incompatible-type]
|
|
130
129
|
registration.listener.apply(registration.context, args);
|
|
131
130
|
}
|
|
132
131
|
}
|
|
@@ -135,9 +134,7 @@ export default class EventEmitter<
|
|
|
135
134
|
/**
|
|
136
135
|
* Removes all registered listeners.
|
|
137
136
|
*/
|
|
138
|
-
removeAllListeners<TEvent:
|
|
139
|
-
eventType?: ?TEvent,
|
|
140
|
-
): void {
|
|
137
|
+
removeAllListeners<TEvent: keyof TEventToArgsMap>(eventType?: ?TEvent): void {
|
|
141
138
|
if (eventType == null) {
|
|
142
139
|
// $FlowFixMe[incompatible-type]
|
|
143
140
|
this.#registry = {};
|
|
@@ -149,7 +146,7 @@ export default class EventEmitter<
|
|
|
149
146
|
/**
|
|
150
147
|
* Returns the number of registered listeners for the supplied event.
|
|
151
148
|
*/
|
|
152
|
-
listenerCount<TEvent:
|
|
149
|
+
listenerCount<TEvent: keyof TEventToArgsMap>(eventType: TEvent): number {
|
|
153
150
|
const registrations: ?Set<Registration<TEventToArgsMap[TEvent]>> =
|
|
154
151
|
this.#registry[eventType];
|
|
155
152
|
return registrations == null ? 0 : registrations.size;
|
|
@@ -157,9 +154,8 @@ export default class EventEmitter<
|
|
|
157
154
|
}
|
|
158
155
|
|
|
159
156
|
function allocate<
|
|
160
|
-
TEventToArgsMap:
|
|
161
|
-
TEvent:
|
|
162
|
-
TEventArgs: TEventToArgsMap[TEvent],
|
|
157
|
+
TEventToArgsMap: Readonly<Record<string, ReadonlyArray<UnsafeEventObject>>>,
|
|
158
|
+
TEvent: keyof TEventToArgsMap,
|
|
163
159
|
>(
|
|
164
160
|
registry: Registry<TEventToArgsMap>,
|
|
165
161
|
eventType: TEvent,
|
package/README.md
CHANGED
|
@@ -262,6 +262,58 @@ class Game2048 extends React.Component {
|
|
|
262
262
|
|
|
263
263
|
- _TVTextScrollView_: On Apple TV, a ScrollView will not scroll unless there are focusable items inside it or above/below it. This component works on both Apple TV and Android TV, using native code to allow scrolling using swipe gestures from the remote control.
|
|
264
264
|
|
|
265
|
+
- _ScrollView snap alignment_: The existing `snapToAlignment` prop has been extended with a new `'item'` value that enables per-item snap alignment on TV. Instead of snapping all items uniformly to `'start'`, `'center'`, or `'end'`, each child can specify its own alignment via the `scrollSnapAlign` View prop. Optional padding can be applied with `snapToItemPadding` on the ScrollView.
|
|
266
|
+
|
|
267
|
+
| Prop (ScrollView) | Value | Description |
|
|
268
|
+
|---|---|---|
|
|
269
|
+
| snapToAlignment | `'item'` | Enables per-item snap alignment (TV only). Requires `snapToInterval` to be set. |
|
|
270
|
+
| snapToItemPadding | number? | Extra padding (in dp/pt) applied around items when snapping. Only used with `snapToAlignment="item"`. |
|
|
271
|
+
|
|
272
|
+
| Prop (View) | Value | Description |
|
|
273
|
+
|---|---|---|
|
|
274
|
+
| scrollSnapAlign | `'start'` \| `'center'` \| `'end'` | Controls where this item snaps inside its parent ScrollView. Only used when the parent has `snapToAlignment="item"`. |
|
|
275
|
+
|
|
276
|
+
```jsx
|
|
277
|
+
<ScrollView
|
|
278
|
+
horizontal
|
|
279
|
+
snapToInterval={300}
|
|
280
|
+
snapToAlignment="item"
|
|
281
|
+
snapToItemPadding={20}>
|
|
282
|
+
<Pressable scrollSnapAlign="start" style={{width: 300}}>
|
|
283
|
+
<Text>Snaps to start</Text>
|
|
284
|
+
</Pressable>
|
|
285
|
+
<Pressable scrollSnapAlign="center" style={{width: 200}}>
|
|
286
|
+
<Text>Snaps to center</Text>
|
|
287
|
+
</Pressable>
|
|
288
|
+
<Pressable scrollSnapAlign="end" style={{width: 300}}>
|
|
289
|
+
<Text>Snaps to end</Text>
|
|
290
|
+
</Pressable>
|
|
291
|
+
</ScrollView>
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
- _ScrollView animation control_: The `scrollAnimationEnabled` prop allows disabling scroll animations when focus changes on TV. When set to `false`, the scroll view jumps instantly to the focused item instead of animating. This only affects TV platforms and has no effect on mobile.
|
|
295
|
+
|
|
296
|
+
| Prop (ScrollView) | Value | Description |
|
|
297
|
+
|---|---|---|
|
|
298
|
+
| scrollAnimationEnabled | boolean? | When `false`, disables animated scrolling on focus change. Defaults to `true`. TV only. |
|
|
299
|
+
|
|
300
|
+
```jsx
|
|
301
|
+
<ScrollView horizontal scrollAnimationEnabled={false}>
|
|
302
|
+
<Pressable style={{width: 300}}><Text>Item 1</Text></Pressable>
|
|
303
|
+
<Pressable style={{width: 300}}><Text>Item 2</Text></Pressable>
|
|
304
|
+
<Pressable style={{width: 300}}><Text>Item 3</Text></Pressable>
|
|
305
|
+
</ScrollView>
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
- _Interaction with existing ScrollView props_: The TV scroll props build on top of existing React Native ScrollView behavior. Here is how they interact:
|
|
309
|
+
|
|
310
|
+
- `snapToAlignment="item"` does not require `snapToInterval` to be set. It works as a standalone snapping mode where each child's `scrollSnapAlign` determines the snap position. If `snapToInterval` is also set, the interval is applied as an additional constraint after the item offset is computed.
|
|
311
|
+
- `snapToAlignment="item"` should not be combined with `pagingEnabled`. Both attempt to control scroll positioning independently, which leads to unpredictable behavior. Use one or the other.
|
|
312
|
+
- `snapToStart` and `snapToEnd` work independently of `snapToAlignment="item"`. They control edge behavior during swipe/drag momentum (whether the scroll view snaps to the first or last position), but do not affect focus driven item snapping.
|
|
313
|
+
- `scrollAnimationEnabled={false}` disables all scroll animations, including programmatic `scrollTo({animated: true})` calls. When disabled, all scrolling is instant.
|
|
314
|
+
- `decelerationRate` has no effect when `scrollAnimationEnabled={false}`, since there is no animation to decelerate.
|
|
315
|
+
- `scrollAnimationEnabled` and `snapToAlignment="item"` work well together. Snapping still occurs, but instantly instead of animated.
|
|
316
|
+
|
|
265
317
|
- _VirtualizedList_: We extend `VirtualizedList` to make virtualization work well with focus management in mind. All of the improvements that we made are automatically available to all the VirtualizedList based components such as `FlatList`.
|
|
266
318
|
- Defaults: VirtualizeList contents are automatically wrapped with a `TVFocusGuideView` with `trapFocus*` properties enabled depending on the orientation of the list. This default makes sure that focus doesn't leave the list accidentally due to a virtualization issue etc. until reaching the beginning or the end of the list.
|
|
267
319
|
- New Props:
|
package/React/Base/RCTBridge.mm
CHANGED
|
@@ -583,7 +583,7 @@ RCT_NOT_IMPLEMENTED(-(instancetype)init)
|
|
|
583
583
|
}
|
|
584
584
|
return strongSelf->_inspectorTarget->connect(std::move(remote));
|
|
585
585
|
},
|
|
586
|
-
{.nativePageReloads = true
|
|
586
|
+
{.nativePageReloads = true});
|
|
587
587
|
}
|
|
588
588
|
|
|
589
589
|
Class bridgeClass = self.bridgeClass;
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
#import "RCTConstants.h"
|
|
11
11
|
#import "RCTConvert.h"
|
|
12
12
|
#import "RCTDefines.h"
|
|
13
|
+
#import "RCTDevSupportHttpHeaders.h"
|
|
13
14
|
#import "RCTLog.h"
|
|
14
15
|
|
|
15
16
|
#import <jsinspector-modern/InspectorFlags.h>
|
|
@@ -30,6 +31,8 @@ static NSString *const kRCTJsLocationKey = @"RCT_jsLocation";
|
|
|
30
31
|
static NSString *const kRCTEnableDevKey = @"RCT_enableDev";
|
|
31
32
|
static NSString *const kRCTEnableMinificationKey = @"RCT_enableMinification";
|
|
32
33
|
static NSString *const kRCTInlineSourceMapKey = @"RCT_inlineSourceMap";
|
|
34
|
+
static const NSTimeInterval kRCTPackagerStatusRequestTimeout = 6;
|
|
35
|
+
static const NSTimeInterval kRCTPackagerStatusRequestTimeoutGraceTime = 2;
|
|
33
36
|
|
|
34
37
|
@implementation RCTBundleURLProvider
|
|
35
38
|
|
|
@@ -93,23 +96,41 @@ static NSURL *serverRootWithHostPort(NSString *hostPort, NSString *scheme)
|
|
|
93
96
|
NSURL *url = [serverRootWithHostPort(hostPort, scheme) URLByAppendingPathComponent:@"status"];
|
|
94
97
|
|
|
95
98
|
NSURLSession *session = [NSURLSession sharedSession];
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
+
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
|
|
100
|
+
cachePolicy:NSURLRequestUseProtocolCachePolicy
|
|
101
|
+
timeoutInterval:kRCTPackagerStatusRequestTimeout];
|
|
102
|
+
[[RCTDevSupportHttpHeaders sharedInstance] applyHeadersToRequest:request];
|
|
99
103
|
__block NSURLResponse *response;
|
|
100
104
|
__block NSData *data;
|
|
101
105
|
|
|
106
|
+
__block BOOL isRunning = NO;
|
|
102
107
|
dispatch_semaphore_t semaphore = dispatch_semaphore_create(0);
|
|
103
108
|
[[session dataTaskWithRequest:request
|
|
104
|
-
completionHandler:^(NSData *d, NSURLResponse *res,
|
|
109
|
+
completionHandler:^(NSData *d, NSURLResponse *res, NSError *err) {
|
|
105
110
|
data = d;
|
|
106
111
|
response = res;
|
|
112
|
+
NSString *status = [[NSString alloc] initWithData:d encoding:NSUTF8StringEncoding];
|
|
113
|
+
isRunning = [status isEqualToString:@"packager-status:running"];
|
|
114
|
+
if (!isRunning) {
|
|
115
|
+
RCTLogWarn(
|
|
116
|
+
@"Packager status check returned unexpected result for %@: %@, error: %@", url, status, err);
|
|
117
|
+
}
|
|
107
118
|
dispatch_semaphore_signal(semaphore);
|
|
108
119
|
}] resume];
|
|
109
|
-
dispatch_semaphore_wait(
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
120
|
+
long result = dispatch_semaphore_wait(
|
|
121
|
+
semaphore,
|
|
122
|
+
dispatch_time(
|
|
123
|
+
DISPATCH_TIME_NOW,
|
|
124
|
+
(int64_t)((kRCTPackagerStatusRequestTimeout +
|
|
125
|
+
// The request timeout does not cover all phases of the request (e.g. DNS resolution),
|
|
126
|
+
// so the actual request might take slightly longer than the configured timeout.
|
|
127
|
+
kRCTPackagerStatusRequestTimeoutGraceTime) *
|
|
128
|
+
NSEC_PER_SEC)));
|
|
129
|
+
if (result != 0) {
|
|
130
|
+
RCTLogWarn(@"Packager status check timed out for %@", url);
|
|
131
|
+
return NO;
|
|
132
|
+
}
|
|
133
|
+
return isRunning;
|
|
113
134
|
}
|
|
114
135
|
|
|
115
136
|
- (NSString *)guessPackagerHost
|
package/React/Base/RCTConvert.mm
CHANGED
|
@@ -461,24 +461,7 @@ RCT_MULTI_ENUM_CONVERTER(
|
|
|
461
461
|
}),
|
|
462
462
|
UIDataDetectorTypePhoneNumber,
|
|
463
463
|
unsignedLongLongValue)
|
|
464
|
-
|
|
465
|
-
RCT_MULTI_ENUM_CONVERTER(
|
|
466
|
-
WKDataDetectorTypes,
|
|
467
|
-
(@{
|
|
468
|
-
@"phoneNumber" : @(WKDataDetectorTypePhoneNumber),
|
|
469
|
-
@"link" : @(WKDataDetectorTypeLink),
|
|
470
|
-
@"address" : @(WKDataDetectorTypeAddress),
|
|
471
|
-
@"calendarEvent" : @(WKDataDetectorTypeCalendarEvent),
|
|
472
|
-
@"trackingNumber" : @(WKDataDetectorTypeTrackingNumber),
|
|
473
|
-
@"flightNumber" : @(WKDataDetectorTypeFlightNumber),
|
|
474
|
-
@"lookupSuggestion" : @(WKDataDetectorTypeLookupSuggestion),
|
|
475
|
-
@"none" : @(WKDataDetectorTypeNone),
|
|
476
|
-
@"all" : @(WKDataDetectorTypeAll),
|
|
477
|
-
}),
|
|
478
|
-
WKDataDetectorTypePhoneNumber,
|
|
479
|
-
unsignedLongLongValue)
|
|
480
|
-
|
|
481
|
-
#endif // !TARGET_OS_TV
|
|
464
|
+
#endif
|
|
482
465
|
|
|
483
466
|
RCT_ENUM_CONVERTER(
|
|
484
467
|
UIKeyboardAppearance,
|
|
@@ -538,6 +521,8 @@ RCT_ENUM_CONVERTER(
|
|
|
538
521
|
@"fullScreen" : @(UIModalPresentationFullScreen),
|
|
539
522
|
#if !TARGET_OS_TV
|
|
540
523
|
@"pageSheet" : @(UIModalPresentationPageSheet),
|
|
524
|
+
#endif
|
|
525
|
+
#if !TARGET_OS_TV || __TV_OS_VERSION_MIN_REQUIRED >= 260000
|
|
541
526
|
@"formSheet" : @(UIModalPresentationFormSheet),
|
|
542
527
|
#endif
|
|
543
528
|
@"overFullScreen" : @(UIModalPresentationOverFullScreen),
|
package/React/Base/RCTDefines.h
CHANGED
|
@@ -95,14 +95,6 @@
|
|
|
95
95
|
#define RCT_DEV_MENU RCT_DEV
|
|
96
96
|
#endif
|
|
97
97
|
|
|
98
|
-
#ifndef RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
99
|
-
#if RCT_DEV && (__has_include("RCTPackagerConnection.h") || __has_include(<React/RCTPackagerConnection.h>))
|
|
100
|
-
#define RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION 1
|
|
101
|
-
#else
|
|
102
|
-
#define RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION 0
|
|
103
|
-
#endif
|
|
104
|
-
#endif
|
|
105
|
-
|
|
106
98
|
#if RCT_DEV
|
|
107
99
|
#define RCT_IF_DEV(...) __VA_ARGS__
|
|
108
100
|
#else
|
|
@@ -175,3 +167,10 @@
|
|
|
175
167
|
@throw _RCTNotImplementedException(_cmd, [self class]); \
|
|
176
168
|
} \
|
|
177
169
|
_Pragma("clang diagnostic pop")
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Import system color support for all platforms
|
|
173
|
+
*/
|
|
174
|
+
#if __OBJC__
|
|
175
|
+
#import "RCTTVColorSupport.h"
|
|
176
|
+
#endif
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Thread-safe singleton that holds custom HTTP headers to be applied
|
|
12
|
+
* to all devsupport network requests (bundle fetches, packager status
|
|
13
|
+
* checks, inspector and HMR WebSocket connections).
|
|
14
|
+
*/
|
|
15
|
+
@interface RCTDevSupportHttpHeaders : NSObject
|
|
16
|
+
|
|
17
|
+
+ (instancetype)sharedInstance;
|
|
18
|
+
|
|
19
|
+
- (void)addRequestHeader:(NSString *)name value:(NSString *)value;
|
|
20
|
+
- (void)removeRequestHeader:(NSString *)name;
|
|
21
|
+
- (NSDictionary<NSString *, NSString *> *)allHeaders;
|
|
22
|
+
- (void)applyHeadersToRequest:(NSMutableURLRequest *)request;
|
|
23
|
+
|
|
24
|
+
@end
|
|
@@ -0,0 +1,65 @@
|
|
|
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
|
+
#import "RCTDevSupportHttpHeaders.h"
|
|
9
|
+
|
|
10
|
+
@implementation RCTDevSupportHttpHeaders {
|
|
11
|
+
NSMutableDictionary<NSString *, NSString *> *_headers;
|
|
12
|
+
dispatch_queue_t _queue;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
+ (instancetype)sharedInstance
|
|
16
|
+
{
|
|
17
|
+
static RCTDevSupportHttpHeaders *sharedInstance;
|
|
18
|
+
static dispatch_once_t onceToken;
|
|
19
|
+
dispatch_once(&onceToken, ^{
|
|
20
|
+
sharedInstance = [[RCTDevSupportHttpHeaders alloc] init];
|
|
21
|
+
});
|
|
22
|
+
return sharedInstance;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
- (instancetype)init
|
|
26
|
+
{
|
|
27
|
+
if (self = [super init]) {
|
|
28
|
+
_headers = [NSMutableDictionary new];
|
|
29
|
+
_queue = dispatch_queue_create("com.facebook.react.RCTDevSupportHttpHeaders", DISPATCH_QUEUE_SERIAL);
|
|
30
|
+
}
|
|
31
|
+
return self;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
- (void)addRequestHeader:(NSString *)name value:(NSString *)value
|
|
35
|
+
{
|
|
36
|
+
dispatch_sync(_queue, ^{
|
|
37
|
+
self->_headers[name] = value;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
- (void)removeRequestHeader:(NSString *)name
|
|
42
|
+
{
|
|
43
|
+
dispatch_sync(_queue, ^{
|
|
44
|
+
[self->_headers removeObjectForKey:name];
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
- (NSDictionary<NSString *, NSString *> *)allHeaders
|
|
49
|
+
{
|
|
50
|
+
__block NSDictionary<NSString *, NSString *> *snapshot;
|
|
51
|
+
dispatch_sync(_queue, ^{
|
|
52
|
+
snapshot = [self->_headers copy];
|
|
53
|
+
});
|
|
54
|
+
return snapshot;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
- (void)applyHeadersToRequest:(NSMutableURLRequest *)request
|
|
58
|
+
{
|
|
59
|
+
NSDictionary<NSString *, NSString *> *headers = [self allHeaders];
|
|
60
|
+
[headers enumerateKeysAndObjectsUsingBlock:^(NSString *headerName, NSString *headerValue, BOOL *stop) {
|
|
61
|
+
[request setValue:headerValue forHTTPHeaderField:headerName];
|
|
62
|
+
}];
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
@end
|
|
@@ -53,8 +53,9 @@ static RCTSource *RCTSourceCreate(NSURL *url, NSData *data, int64_t length) NS_R
|
|
|
53
53
|
{
|
|
54
54
|
NSMutableString *desc = [NSMutableString new];
|
|
55
55
|
[desc appendString:_status ?: @"Bundling"];
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
if (_percent != nil) {
|
|
57
|
+
[desc appendFormat:@" %ld%%", (long)[_percent integerValue]];
|
|
58
|
+
} else if ([_total integerValue] > 0 && [_done integerValue] > [_total integerValue]) {
|
|
58
59
|
[desc appendFormat:@" %ld%%", (long)100];
|
|
59
60
|
} else if ([_total integerValue] > 0) {
|
|
60
61
|
[desc appendFormat:@" %ld%%", (long)(100 * [_done integerValue] / [_total integerValue])];
|
|
@@ -348,6 +349,9 @@ static RCTLoadingProgress *progressEventFromData(NSData *rawData)
|
|
|
348
349
|
progress.status = info[@"status"];
|
|
349
350
|
progress.done = info[@"done"];
|
|
350
351
|
progress.total = info[@"total"];
|
|
352
|
+
if (info[@"percent"] != nil) {
|
|
353
|
+
progress.percent = info[@"percent"];
|
|
354
|
+
}
|
|
351
355
|
return progress;
|
|
352
356
|
}
|
|
353
357
|
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
9
9
|
|
|
10
|
+
#import <React/RCTDefines.h>
|
|
10
11
|
#import <React/RCTMultipartStreamReader.h>
|
|
11
12
|
|
|
12
13
|
typedef void (^RCTMultipartDataTaskCallback)(
|
|
@@ -16,6 +17,14 @@ typedef void (^RCTMultipartDataTaskCallback)(
|
|
|
16
17
|
NSError *error,
|
|
17
18
|
BOOL done);
|
|
18
19
|
|
|
20
|
+
typedef NSURLRequest * _Nullable (^RCTMultipartDataTaskRequestInterceptor)(NSURLRequest *request);
|
|
21
|
+
/**
|
|
22
|
+
* The block provided via this function can inspect/modify multipart data task
|
|
23
|
+
* requests before they are sent. Return a modified request to override, or nil
|
|
24
|
+
* to use the original request unchanged.
|
|
25
|
+
*/
|
|
26
|
+
RCT_EXTERN void RCTSetCustomMultipartDataTaskRequestInterceptor(RCTMultipartDataTaskRequestInterceptor /*interceptor*/);
|
|
27
|
+
|
|
19
28
|
@interface RCTMultipartDataTask : NSObject
|
|
20
29
|
|
|
21
30
|
- (instancetype)initWithURL:(NSURL *)url
|
|
@@ -7,6 +7,15 @@
|
|
|
7
7
|
|
|
8
8
|
#import "RCTMultipartDataTask.h"
|
|
9
9
|
|
|
10
|
+
static RCTMultipartDataTaskRequestInterceptor multipartRequestInterceptor;
|
|
11
|
+
|
|
12
|
+
void RCTSetCustomMultipartDataTaskRequestInterceptor(RCTMultipartDataTaskRequestInterceptor interceptor)
|
|
13
|
+
{
|
|
14
|
+
multipartRequestInterceptor = interceptor;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
#import "RCTDevSupportHttpHeaders.h"
|
|
18
|
+
|
|
10
19
|
@interface RCTMultipartDataTask () <NSURLSessionDataDelegate, NSURLSessionDataDelegate>
|
|
11
20
|
|
|
12
21
|
@end
|
|
@@ -40,7 +49,16 @@
|
|
|
40
49
|
delegateQueue:nil];
|
|
41
50
|
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:_url];
|
|
42
51
|
[request addValue:@"multipart/mixed" forHTTPHeaderField:@"Accept"];
|
|
43
|
-
|
|
52
|
+
[[RCTDevSupportHttpHeaders sharedInstance] applyHeadersToRequest:request];
|
|
53
|
+
NSURLRequest *finalRequest = request;
|
|
54
|
+
if (multipartRequestInterceptor != nil) {
|
|
55
|
+
NSURLRequest *intercepted = multipartRequestInterceptor(request);
|
|
56
|
+
if (intercepted != nil) {
|
|
57
|
+
finalRequest = intercepted;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
NSLog(@"[RCTMultipartDataTask] %@ %@", finalRequest.HTTPMethod ?: @"GET", finalRequest.URL.absoluteString);
|
|
61
|
+
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:finalRequest];
|
|
44
62
|
[dataTask resume];
|
|
45
63
|
[session finishTasksAndInvalidate];
|
|
46
64
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This source code is licensed under the MIT license found in the
|
|
3
|
+
* LICENSE file in the root directory of this source tree.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
#import <UIKit/UIKit.h>
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Category on UIColor providing systemBackgroundColor for all platforms.
|
|
10
|
+
* On tvOS, provides a custom implementation since systemBackgroundColor is not available.
|
|
11
|
+
* On other platforms, returns the system's systemBackgroundColor.
|
|
12
|
+
*/
|
|
13
|
+
@interface UIColor (RNTVSystemColors)
|
|
14
|
+
|
|
15
|
+
+ (UIColor *)rntv_systemBackgroundColor;
|
|
16
|
+
|
|
17
|
+
@end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This source code is licensed under the MIT license found in the
|
|
3
|
+
* LICENSE file in the root directory of this source tree.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
#import <UIKit/UIKit.h>
|
|
7
|
+
|
|
8
|
+
@implementation UIColor (RNTVSystemColors)
|
|
9
|
+
|
|
10
|
+
+ (UIColor *)rntv_systemBackgroundColor {
|
|
11
|
+
#if TARGET_OS_TV
|
|
12
|
+
UIColor *lightColor = [UIColor whiteColor];
|
|
13
|
+
UIColor *darkColor = [UIColor blackColor];
|
|
14
|
+
|
|
15
|
+
return [UIColor colorWithDynamicProvider:^UIColor *(UITraitCollection *traitCollection) {
|
|
16
|
+
return (traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) ? darkColor : lightColor;
|
|
17
|
+
}];
|
|
18
|
+
#else
|
|
19
|
+
return [UIColor systemBackgroundColor];
|
|
20
|
+
#endif
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@end
|
package/React/Base/RCTUtils.mm
CHANGED
|
@@ -311,10 +311,12 @@ void RCTUnsafeExecuteOnMainQueueSync(dispatch_block_t block)
|
|
|
311
311
|
return;
|
|
312
312
|
}
|
|
313
313
|
|
|
314
|
+
#if !TARGET_OS_TV
|
|
314
315
|
if (ReactNativeFeatureFlags::enableMainQueueCoordinatorOnIOS()) {
|
|
315
316
|
unsafeExecuteOnMainThreadSync(block);
|
|
316
317
|
return;
|
|
317
318
|
}
|
|
319
|
+
#endif
|
|
318
320
|
|
|
319
321
|
dispatch_sync(dispatch_get_main_queue(), ^{
|
|
320
322
|
block();
|
|
@@ -339,10 +341,12 @@ static void RCTUnsafeExecuteOnMainQueueOnceSync(dispatch_once_t *onceToken, disp
|
|
|
339
341
|
return;
|
|
340
342
|
}
|
|
341
343
|
|
|
344
|
+
#if !TARGET_OS_TV
|
|
342
345
|
if (ReactNativeFeatureFlags::enableMainQueueCoordinatorOnIOS()) {
|
|
343
346
|
unsafeExecuteOnMainThreadSync(block);
|
|
344
347
|
return;
|
|
345
348
|
}
|
|
349
|
+
#endif
|
|
346
350
|
|
|
347
351
|
dispatch_sync(dispatch_get_main_queue(), executeOnce);
|
|
348
352
|
}
|
|
@@ -384,12 +388,10 @@ CGFloat RCTFontSizeMultiplier(void)
|
|
|
384
388
|
}
|
|
385
389
|
|
|
386
390
|
#if !TARGET_OS_TV
|
|
387
|
-
|
|
388
391
|
UIDeviceOrientation RCTDeviceOrientation(void)
|
|
389
392
|
{
|
|
390
393
|
return [[UIDevice currentDevice] orientation];
|
|
391
394
|
}
|
|
392
|
-
|
|
393
395
|
#endif
|
|
394
396
|
|
|
395
397
|
CGSize RCTScreenSize(void)
|
|
@@ -403,14 +405,15 @@ CGSize RCTScreenSize(void)
|
|
|
403
405
|
});
|
|
404
406
|
});
|
|
405
407
|
|
|
406
|
-
#if TARGET_OS_TV
|
|
407
|
-
return CGSizeMake(portraitSize.height, portraitSize.width); // landscape
|
|
408
|
-
#else
|
|
408
|
+
#if !TARGET_OS_TV
|
|
409
409
|
if (UIDeviceOrientationIsLandscape(RCTDeviceOrientation())) {
|
|
410
410
|
return CGSizeMake(portraitSize.height, portraitSize.width);
|
|
411
411
|
} else {
|
|
412
412
|
return CGSizeMake(portraitSize.width, portraitSize.height);
|
|
413
413
|
}
|
|
414
|
+
#else
|
|
415
|
+
// tvOS doesn't have device orientation, always return landscape size
|
|
416
|
+
return CGSizeMake(portraitSize.height, portraitSize.width);
|
|
414
417
|
#endif
|
|
415
418
|
}
|
|
416
419
|
|
|
@@ -422,6 +425,9 @@ CGSize RCTViewportSize(void)
|
|
|
422
425
|
|
|
423
426
|
CGSize RCTSwitchSize(void)
|
|
424
427
|
{
|
|
428
|
+
#if TARGET_OS_TV
|
|
429
|
+
return CGSizeMake(0, 0);
|
|
430
|
+
#else
|
|
425
431
|
static CGSize rctSwitchSize;
|
|
426
432
|
static dispatch_once_t onceToken;
|
|
427
433
|
dispatch_once(&onceToken, ^{
|
|
@@ -434,6 +440,7 @@ CGSize RCTSwitchSize(void)
|
|
|
434
440
|
});
|
|
435
441
|
});
|
|
436
442
|
return rctSwitchSize;
|
|
443
|
+
#endif
|
|
437
444
|
}
|
|
438
445
|
|
|
439
446
|
CGFloat RCTRoundPixelValue(CGFloat value)
|
|
@@ -643,7 +650,9 @@ UIWindow *__nullable RCTKeyWindow(void)
|
|
|
643
650
|
// We have apps internally that might use UIScenes which are not window scenes.
|
|
644
651
|
// Calling keyWindow on a UIScene which is not a UIWindowScene can cause a crash
|
|
645
652
|
UIWindowScene *windowScene = (UIWindowScene *)sceneToUse;
|
|
646
|
-
|
|
653
|
+
if (@available(iOS 15.0, tvOS 15.0, *)) {
|
|
654
|
+
return windowScene.keyWindow;
|
|
655
|
+
}
|
|
647
656
|
}
|
|
648
657
|
|
|
649
658
|
return nil;
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -22,8 +22,8 @@ NSDictionary* RCTGetReactNativeVersion(void)
|
|
|
22
22
|
dispatch_once(&onceToken, ^(void){
|
|
23
23
|
__rnVersion = @{
|
|
24
24
|
RCTVersionMajor: @(0),
|
|
25
|
-
RCTVersionMinor: @(
|
|
26
|
-
RCTVersionPatch: @(
|
|
25
|
+
RCTVersionMinor: @(85),
|
|
26
|
+
RCTVersionPatch: @(0),
|
|
27
27
|
RCTVersionPrerelease: @"0",
|
|
28
28
|
};
|
|
29
29
|
});
|