react-native-tvos 0.85.3-0 → 0.86.0-0rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Animated/AnimatedImplementation.js +6 -6
- package/Libraries/Animated/NativeAnimatedAllowlist.js +21 -0
- package/Libraries/Animated/components/AnimatedImage.js +3 -3
- package/Libraries/Animated/components/AnimatedText.js +3 -3
- package/Libraries/Animated/createAnimatedComponent.js +7 -7
- package/Libraries/Animated/nodes/AnimatedAddition.js +1 -1
- package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +1 -1
- package/Libraries/Animated/nodes/AnimatedDivision.js +1 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +22 -24
- package/Libraries/Animated/nodes/AnimatedModulo.js +1 -1
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +1 -1
- package/Libraries/Animated/nodes/AnimatedStyle.js +2 -2
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +1 -1
- package/Libraries/Animated/nodes/AnimatedTracking.js +1 -1
- package/Libraries/Animated/nodes/AnimatedValue.js +2 -2
- package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +4 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.h +5 -5
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +2 -2
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/RCTBlobCollector.h +1 -1
- package/Libraries/Blob/RCTBlobCollector.mm +14 -26
- package/Libraries/Blob/RCTBlobManager.mm +11 -3
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +29 -23
- package/Libraries/Components/Keyboard/Keyboard.js +4 -2
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -27
- package/Libraries/Components/Pressable/Pressable.d.ts +1 -0
- package/Libraries/Components/Pressable/Pressable.js +2 -2
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +7 -8
- package/Libraries/Components/ScrollView/ScrollView.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +2 -2
- package/Libraries/Components/Switch/Switch.js +1 -1
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +25 -1
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/TextInput.d.ts +24 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +24 -0
- package/Libraries/Components/TextInput/TextInput.js +5 -5
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +5 -5
- package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
- package/Libraries/Components/Touchable/PooledClass.js +4 -4
- package/Libraries/Components/Touchable/Touchable.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -10
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +10 -2
- package/Libraries/Components/View/View.js +96 -91
- package/Libraries/Components/View/ViewPropTypes.js +3 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.js +8 -0
- package/Libraries/Core/ExceptionsManager.js +2 -8
- package/Libraries/Core/InitializeCore.js +0 -13
- package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
- package/Libraries/Core/ReactNativeVersion.js +3 -3
- package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +2 -2
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +1 -1
- package/Libraries/Core/setUpSegmentFetcher.js +1 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +9 -5
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -2
- package/Libraries/Image/Image.android.js +15 -35
- package/Libraries/Image/RCTImageLoader.mm +4 -2
- package/Libraries/Image/RelativeImageStub.js +2 -2
- package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -12
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +1 -1
- package/Libraries/LogBox/LogBox.js +2 -2
- package/Libraries/LogBox/LogBoxInspectorContainer.js +24 -2
- package/Libraries/LogBox/LogBoxNotificationContainer.js +27 -4
- package/Libraries/LogBox/UI/LogBoxButton.js +47 -33
- package/Libraries/LogBox/UI/LogBoxInspector.js +61 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -0
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +3 -1
- package/Libraries/LogBox/UI/LogBoxNotification.js +2 -0
- package/Libraries/Modal/Modal.js +12 -7
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
- package/Libraries/NativeComponent/BaseViewConfig.android.js +15 -0
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +17 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
- package/Libraries/NativeComponent/ViewConfigIgnore.js +4 -2
- 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/RCTNetworking.mm +1 -2
- package/Libraries/Network/XMLHttpRequest.js +29 -12
- package/Libraries/Pressability/Pressability.js +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +2 -3
- package/Libraries/ReactNative/AppContainer-prod.js +1 -2
- package/Libraries/ReactNative/AppContainer.js +0 -1
- package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +1 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +16 -16
- package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
- package/Libraries/ReactNative/FabricUIManager.js +6 -0
- package/Libraries/{Utilities → ReactNative}/IPerformanceLogger.d.ts +8 -5
- package/Libraries/{Utilities/IPerformanceLogger.js → ReactNative/IPerformanceLogger.flow.js} +12 -9
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +14 -14
- package/Libraries/ReactNative/RendererImplementation.js +26 -143
- package/Libraries/ReactNative/RendererProxy.js +4 -15
- package/Libraries/ReactNative/renderApplication.js +33 -59
- package/Libraries/ReactNative/requireNativeComponent.js +3 -3
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -0
- package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -32
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +3 -3
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
- package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +6 -8
- package/Libraries/StyleSheet/StyleSheetTypes.js +11 -11
- package/Libraries/StyleSheet/flattenStyle.js +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +19 -9
- package/Libraries/StyleSheet/processBackgroundSize.js +7 -12
- package/Libraries/StyleSheet/processBoxShadow.js +9 -47
- package/Libraries/StyleSheet/processFilter.js +16 -8
- package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
- package/Libraries/Text/Text.js +4 -4
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +16 -2
- package/Libraries/Text/TextNativeComponent.js +4 -4
- package/Libraries/TurboModule/RCTExport.js +1 -1
- package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
- package/Libraries/Types/CodegenTypes.js +7 -4
- package/Libraries/Types/ReactDevToolsTypes.js +1 -1
- package/Libraries/Utilities/BackHandler.android.js +11 -3
- package/Libraries/Utilities/BackHandler.d.ts +11 -1
- package/Libraries/Utilities/BackHandler.ios.js +3 -1
- package/Libraries/Utilities/BackHandler.js.flow +6 -1
- package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
- package/Libraries/Utilities/ReactNativeTestTools.js +4 -4
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +2 -2
- package/Libraries/Utilities/codegenNativeComponent.js +4 -4
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -2
- package/Libraries/Utilities/stringifySafe.js +1 -1
- package/Libraries/promiseRejectionTrackingOptions.js +1 -1
- package/Libraries/vendor/core/ErrorUtils.js +4 -4
- package/Libraries/vendor/emitter/EventEmitter.js +27 -13
- package/React/Base/RCTBundleURLProvider.h +19 -1
- package/React/Base/RCTBundleURLProvider.mm +82 -0
- package/React/Base/RCTDefines.h +1 -1
- package/React/Base/RCTMultipartDataTask.h +1 -1
- package/React/Base/RCTMultipartDataTask.m +0 -3
- package/React/Base/RCTRootView.h +4 -0
- package/React/Base/RCTRootViewDelegate.h +5 -2
- package/React/Base/RCTVersion.m +3 -3
- package/React/Base/Surface/RCTSurface.h +3 -0
- package/React/Base/Surface/RCTSurfaceDelegate.h +7 -3
- package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
- package/React/Base/Surface/RCTSurfaceView.mm +2 -1
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +0 -3
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -1
- package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
- package/React/CoreModules/RCTRedBox2AnsiParser.mm +1 -1
- package/React/CoreModules/RCTWebSocketModule.mm +45 -6
- package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -1
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -0
- package/React/DevSupport/RCTPackagerConnection.mm +13 -11
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +108 -43
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +1 -1
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +70 -8
- package/React/Fabric/RCTConversions.h +14 -0
- package/React/Fabric/RCTScheduler.mm +18 -0
- package/React/Fabric/RCTSurfacePointerHandler.mm +8 -2
- package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -0
- package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
- package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
- package/React/Modules/RCTUIManager.mm +1 -1
- package/React/Profiler/RCTProfile.h +5 -0
- package/React/Profiler/RCTProfile.m +2 -1
- package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
- package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
- package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +5 -5
- package/React/Views/RCTLayout.m +4 -3
- package/React/Views/ScrollView/RCTScrollView.h +6 -2
- package/ReactAndroid/api/ReactAndroid.api +37 -27
- package/ReactAndroid/build.gradle.kts +28 -21
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +40 -110
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +32 -87
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +9 -99
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +7 -28
- package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +2 -19
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +36 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +9 -34
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +9 -10
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +10 -10
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +15 -13
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +139 -43
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +223 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +34 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +104 -65
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +9 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +172 -36
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +41 -29
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +71 -51
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +15 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +16 -12
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +79 -57
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +15 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -9
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +10 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +59 -62
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +45 -36
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +18 -5
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +8 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +21 -19
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +77 -72
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +7 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +20 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +18 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +11 -71
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -17
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +29 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -9
- package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +27 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +18 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +20 -21
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +19 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +14 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +5 -162
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +71 -97
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +7 -13
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +40 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +84 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +41 -65
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +85 -13
- package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +5 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +39 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +20 -12
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +101 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +10 -1
- package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +47 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +20 -6
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +24 -1
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -0
- package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +97 -69
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +21 -15
- package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
- package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
- package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +10 -0
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +7 -0
- package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
- package/ReactCommon/React-Fabric.podspec +7 -0
- package/ReactCommon/React-FabricComponents.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
- package/ReactCommon/jsc/JSCRuntime.cpp +9 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
- package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
- package/ReactCommon/jsi/jsi/decorator.h +93 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
- package/ReactCommon/jsi/jsi/jsi.cpp +208 -27
- package/ReactCommon/jsi/jsi/jsi.h +553 -224
- package/ReactCommon/jsi/jsi/test/testlib.cpp +453 -0
- package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +1 -1
- package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
- package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +10 -1
- package/ReactCommon/jsinspector-modern/HostTarget.h +25 -0
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +6 -2
- package/ReactCommon/jsinspector-modern/InspectorFlags.h +5 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +3 -0
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +10 -0
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +0 -1
- package/ReactCommon/logger/react_native_log.cpp +0 -1
- package/ReactCommon/react/bridging/Array.h +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +29 -21
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +35 -25
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +168 -132
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +18 -14
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +28 -20
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +61 -43
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -3
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +9 -7
- package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
- package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -9
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +0 -1
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
- package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +2 -2
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +35 -25
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +15 -11
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -2
- package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
- package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
- package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
- package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
- package/ReactCommon/react/networking/NetworkReporter.h +0 -1
- package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
- package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
- package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -12
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +1 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +3 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -3
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +4 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +1 -1
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +0 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
- package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
- package/ReactCommon/react/renderer/animations/utils.h +12 -1
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
- package/ReactCommon/react/renderer/attributedstring/conversions.h +104 -3
- package/ReactCommon/react/renderer/components/image/conversions.h +2 -3
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
- package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
- package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +531 -21
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -0
- package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -0
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +8 -0
- package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
- package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
- package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +5 -0
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +33 -28
- package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
- package/ReactCommon/react/renderer/components/view/conversions.h +44 -28
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +53 -5
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
- package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
- package/ReactCommon/react/renderer/{graphics/DoubleConversions.h → components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h} +2 -4
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
- package/ReactCommon/react/renderer/components/view/propsConversions.h +8 -2
- package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +86 -0
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +34 -0
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +67 -2
- package/ReactCommon/react/renderer/core/EventEmitter.h +25 -0
- package/ReactCommon/react/renderer/core/EventPipe.h +3 -1
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +18 -10
- package/ReactCommon/react/renderer/core/EventTarget.cpp +8 -5
- package/ReactCommon/react/renderer/core/LayoutContext.h +9 -2
- package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
- package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
- package/ReactCommon/react/renderer/core/Props.cpp +20 -0
- package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
- package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
- package/ReactCommon/react/renderer/core/ShadowNode.h +2 -2
- package/ReactCommon/react/renderer/core/conversions.h +4 -0
- package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
- package/ReactCommon/react/renderer/core/propsConversions.h +1 -1
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
- package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
- package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +1 -1
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
- package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
- package/ReactCommon/react/renderer/graphics/BlendMode.h +5 -0
- package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
- package/ReactCommon/react/renderer/graphics/LinearGradient.h +3 -0
- package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -0
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
- package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +0 -5
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +2 -2
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +0 -4
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +5 -1
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +12 -4
- package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +307 -4
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +27 -2
- package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +95 -0
- package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +212 -0
- package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +154 -0
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +314 -18
- package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +38 -20
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +20 -22
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +76 -3
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +12 -0
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +5 -0
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -7
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +2 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +16 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.h +8 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +347 -5
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +5 -3
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +5 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
- package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
- package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +520 -0
- package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +161 -0
- package/ReactCommon/react/runtime/TimerManager.cpp +4 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +37 -0
- package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
- package/ReactCommon/react/timing/React-timing.podspec +2 -0
- package/ReactCommon/react/timing/primitives.h +33 -1
- package/ReactCommon/yoga/yoga/YGEnums.cpp +32 -0
- package/ReactCommon/yoga/yoga/YGEnums.h +20 -4
- package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
- package/ReactCommon/yoga/yoga/YGNode.h +1 -1
- package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
- package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +40 -9
- package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +106 -14
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
- package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
- package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
- package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
- package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
- package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
- package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
- package/ReactCommon/yoga/yoga/event/event.h +1 -0
- package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
- package/ReactCommon/yoga/yoga/node/Node.h +4 -4
- package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
- package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
- package/ReactCommon/yoga/yoga/style/Style.h +261 -71
- package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -1
- package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
- package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
- package/cli.js +1 -1
- package/flow/HermesInternalType.js +1 -1
- package/flow/bom.js.flow +95 -3
- package/flow/dom.js.flow +89 -89
- package/gradle/libs.versions.toml +3 -1
- package/index.js +30 -3
- package/index.js.flow +23 -1
- package/package.json +11 -11
- package/react-native.config.js +3 -3
- package/scripts/cocoapods/rncore.rb +65 -11
- package/scripts/cocoapods/rndependencies.rb +65 -11
- package/scripts/cocoapods/utils.rb +52 -0
- package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +13 -4
- package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +17 -6
- package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/index.js +2 -0
- package/scripts/codegen/generate-artifacts-executor/utils.js +1 -1
- package/scripts/codegen/generate-specs-cli-executor.js +1 -1
- package/scripts/generate-codegen-artifacts.js +20 -2
- package/scripts/generate-provider-cli.js +1 -1
- package/scripts/react_native_pods.rb +25 -2
- package/scripts/react_native_pods_utils/script_phases.rb +9 -3
- package/scripts/replace-rncore-version.js +20 -0
- package/scripts/xcode/with-environment.sh +7 -1
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-utils.rb +92 -5
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/animated/NativeAnimatedValidation.js +1 -1
- package/src/private/animated/createAnimatedPropsHook.js +2 -2
- package/src/private/components/virtualcollection/FlingConstants.js +21 -0
- package/src/private/components/virtualcollection/Virtual.js +62 -0
- package/src/private/components/virtualcollection/VirtualCollectionView.js +238 -0
- package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
- package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
- package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +13 -0
- package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
- package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
- package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
- package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
- package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +1 -1
- package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +1 -1
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +41 -37
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +9 -7
- package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
- package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
- package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
- package/src/private/renderer/events/ReactNativeResponder.js +687 -0
- package/src/private/renderer/events/ResponderEvent.js +40 -0
- package/src/private/renderer/events/ResponderTouchHistoryStore.js +258 -0
- package/src/private/renderer/events/dispatchNativeEvent.js +83 -0
- package/src/private/setup/setUpDOM.js +20 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- 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 +2 -2
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAppState.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeVibration.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +2 -2
- package/src/private/styles/composeStyles.js +1 -1
- package/src/private/types/HostComponent.js +1 -1
- package/src/private/utilities/toExtendedError.js +1 -1
- package/src/private/viewtransition/specs/NativeViewTransition.js +33 -0
- package/src/private/webapis/dom/events/Event.js +10 -1
- package/src/private/webapis/dom/events/EventTarget.js +60 -18
- package/src/private/webapis/dom/events/internals/EventInternals.js +18 -1
- package/src/private/webapis/dom/events/internals/EventTargetInternals.js +12 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +24 -0
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +4 -6
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +70 -1
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +1 -1
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +5 -9
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +2 -2
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +2 -2
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +2 -2
- package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
- package/src/private/webapis/structuredClone/structuredClone.js +1 -1
- package/src/private/webapis/webidl/PlatformObjects.js +4 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19669
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11129
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12930
- package/Libraries/Renderer/shims/ReactNative.js +0 -27
- package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
- package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
- package/Libraries/Utilities/createPerformanceLogger.js +0 -329
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -442
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
- package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
|
@@ -23,7 +23,7 @@ type NativeComponentOptions = Readonly<{
|
|
|
23
23
|
excludedPlatforms?: ReadonlyArray<'iOS' | 'android'>,
|
|
24
24
|
}>;
|
|
25
25
|
|
|
26
|
-
export type NativeComponentType<T
|
|
26
|
+
export type NativeComponentType<T extends {...}> = HostComponent<T>;
|
|
27
27
|
|
|
28
28
|
// If this function runs then that means the view configs were not
|
|
29
29
|
// generated at build time using `GenerateViewConfigJs.js`. Thus
|
|
@@ -31,7 +31,7 @@ export type NativeComponentType<T: {...}> = HostComponent<T>;
|
|
|
31
31
|
// `requireNativeComponent` is not available in Bridgeless mode.
|
|
32
32
|
// e.g. This function runs at runtime if `codegenNativeComponent` was not called
|
|
33
33
|
// from a file suffixed with NativeComponent.js.
|
|
34
|
-
function codegenNativeComponent<Props
|
|
34
|
+
function codegenNativeComponent<Props extends {...}>(
|
|
35
35
|
componentName: string,
|
|
36
36
|
options?: NativeComponentOptions,
|
|
37
37
|
): NativeComponentType<Props> {
|
|
@@ -64,10 +64,10 @@ function codegenNativeComponent<Props: {...}>(
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
return
|
|
67
|
+
return requireNativeComponent<Props>(
|
|
68
68
|
// $FlowFixMe[incompatible-type]
|
|
69
69
|
componentNameInUse,
|
|
70
|
-
)
|
|
70
|
+
) as HostComponent<Props>;
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
export default codegenNativeComponent;
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* Freezing the object and adding the throw mechanism is expensive and will
|
|
28
28
|
* only be used in DEV.
|
|
29
29
|
*/
|
|
30
|
-
function deepFreezeAndThrowOnMutationInDev<T
|
|
30
|
+
function deepFreezeAndThrowOnMutationInDev<T extends {...} | Array<unknown>>(
|
|
31
31
|
object: T,
|
|
32
32
|
): T {
|
|
33
33
|
if (__DEV__) {
|
|
@@ -43,7 +43,7 @@ function deepFreezeAndThrowOnMutationInDev<T: {...} | Array<unknown>>(
|
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
// $FlowFixMe[not-an-object] `object` can be an array, but Object.keys works with arrays too
|
|
46
|
-
const keys = Object.keys(
|
|
46
|
+
const keys = Object.keys(object as {...} | Array<unknown>);
|
|
47
47
|
// $FlowFixMe[method-unbinding] added when improving typing for this parameters
|
|
48
48
|
const hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
49
49
|
|
|
@@ -64,7 +64,7 @@ export function createStringifySafeWithLimits(limits: {
|
|
|
64
64
|
retval = `{ ... object with ${keys.length} keys ... }`;
|
|
65
65
|
} else if (keys.length > maxObjectKeysLimit) {
|
|
66
66
|
// Return a sample of the keys.
|
|
67
|
-
retval =
|
|
67
|
+
retval = {} as {[string]: unknown};
|
|
68
68
|
for (let k of keys.slice(0, maxObjectKeysLimit)) {
|
|
69
69
|
retval[k] = value[k];
|
|
70
70
|
}
|
|
@@ -10,22 +10,22 @@
|
|
|
10
10
|
|
|
11
11
|
// From @react-native/js-polyfills
|
|
12
12
|
type ErrorHandler = (error: unknown, isFatal: boolean) => void;
|
|
13
|
-
type Fn<Args
|
|
13
|
+
type Fn<Args extends ReadonlyArray<unknown>, Return> = (...Args) => Return;
|
|
14
14
|
export type ErrorUtils = {
|
|
15
|
-
applyWithGuard<TArgs
|
|
15
|
+
applyWithGuard<TArgs extends ReadonlyArray<unknown>, TOut>(
|
|
16
16
|
fun: Fn<TArgs, TOut>,
|
|
17
17
|
context?: unknown,
|
|
18
18
|
args?: ?TArgs,
|
|
19
19
|
unused_onError?: null,
|
|
20
20
|
unused_name?: ?string,
|
|
21
21
|
): ?TOut,
|
|
22
|
-
applyWithGuardIfNeeded<TArgs
|
|
22
|
+
applyWithGuardIfNeeded<TArgs extends ReadonlyArray<unknown>, TOut>(
|
|
23
23
|
fun: Fn<TArgs, TOut>,
|
|
24
24
|
context?: unknown,
|
|
25
25
|
args?: ?TArgs,
|
|
26
26
|
): ?TOut,
|
|
27
27
|
getGlobalHandler(): ErrorHandler,
|
|
28
|
-
guard<TArgs
|
|
28
|
+
guard<TArgs extends ReadonlyArray<unknown>, TOut>(
|
|
29
29
|
fun: Fn<TArgs, TOut>,
|
|
30
30
|
name?: ?string,
|
|
31
31
|
context?: unknown,
|
|
@@ -16,22 +16,28 @@ export interface EventSubscription {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export interface IEventEmitter<
|
|
19
|
-
TEventToArgsMap
|
|
19
|
+
TEventToArgsMap extends Readonly<
|
|
20
|
+
Record<string, ReadonlyArray<UnsafeEventObject>>,
|
|
21
|
+
>,
|
|
20
22
|
> {
|
|
21
|
-
addListener<TEvent
|
|
23
|
+
addListener<TEvent extends keyof TEventToArgsMap>(
|
|
22
24
|
eventType: TEvent,
|
|
23
25
|
listener: (...args: TEventToArgsMap[TEvent]) => unknown,
|
|
24
26
|
context?: unknown,
|
|
25
27
|
): EventSubscription;
|
|
26
28
|
|
|
27
|
-
emit<TEvent
|
|
29
|
+
emit<TEvent extends keyof TEventToArgsMap>(
|
|
28
30
|
eventType: TEvent,
|
|
29
31
|
...args: TEventToArgsMap[TEvent]
|
|
30
32
|
): void;
|
|
31
33
|
|
|
32
|
-
removeAllListeners<TEvent
|
|
34
|
+
removeAllListeners<TEvent extends keyof TEventToArgsMap>(
|
|
35
|
+
eventType?: ?TEvent,
|
|
36
|
+
): void;
|
|
33
37
|
|
|
34
|
-
listenerCount<TEvent
|
|
38
|
+
listenerCount<TEvent extends keyof TEventToArgsMap>(
|
|
39
|
+
eventType: TEvent,
|
|
40
|
+
): number;
|
|
35
41
|
}
|
|
36
42
|
|
|
37
43
|
interface Registration<TArgs> {
|
|
@@ -41,7 +47,9 @@ interface Registration<TArgs> {
|
|
|
41
47
|
}
|
|
42
48
|
|
|
43
49
|
type Registry<
|
|
44
|
-
TEventToArgsMap
|
|
50
|
+
TEventToArgsMap extends Readonly<
|
|
51
|
+
Record<string, ReadonlyArray<UnsafeEventObject>>,
|
|
52
|
+
>,
|
|
45
53
|
> = {
|
|
46
54
|
[K in keyof TEventToArgsMap]: Set<Registration<TEventToArgsMap[K]>>,
|
|
47
55
|
};
|
|
@@ -67,7 +75,7 @@ type Registry<
|
|
|
67
75
|
*
|
|
68
76
|
*/
|
|
69
77
|
export default class EventEmitter<
|
|
70
|
-
TEventToArgsMap
|
|
78
|
+
TEventToArgsMap extends Readonly<
|
|
71
79
|
Record<string, ReadonlyArray<UnsafeEventObject>>,
|
|
72
80
|
> = Readonly<Record<string, ReadonlyArray<UnsafeEventObject>>>,
|
|
73
81
|
> implements IEventEmitter<TEventToArgsMap>
|
|
@@ -83,7 +91,7 @@ export default class EventEmitter<
|
|
|
83
91
|
* Registers a listener that is called when the supplied event is emitted.
|
|
84
92
|
* Returns a subscription that has a `remove` method to undo registration.
|
|
85
93
|
*/
|
|
86
|
-
addListener<TEvent
|
|
94
|
+
addListener<TEvent extends keyof TEventToArgsMap>(
|
|
87
95
|
eventType: TEvent,
|
|
88
96
|
listener: (...args: TEventToArgsMap[TEvent]) => unknown,
|
|
89
97
|
context: unknown,
|
|
@@ -116,7 +124,7 @@ export default class EventEmitter<
|
|
|
116
124
|
* If a listener modifies the listeners registered for the same event, those
|
|
117
125
|
* changes will not be reflected in the current invocation of `emit`.
|
|
118
126
|
*/
|
|
119
|
-
emit<TEvent
|
|
127
|
+
emit<TEvent extends keyof TEventToArgsMap>(
|
|
120
128
|
eventType: TEvent,
|
|
121
129
|
...args: TEventToArgsMap[TEvent]
|
|
122
130
|
): void {
|
|
@@ -134,7 +142,9 @@ export default class EventEmitter<
|
|
|
134
142
|
/**
|
|
135
143
|
* Removes all registered listeners.
|
|
136
144
|
*/
|
|
137
|
-
removeAllListeners<TEvent
|
|
145
|
+
removeAllListeners<TEvent extends keyof TEventToArgsMap>(
|
|
146
|
+
eventType?: ?TEvent,
|
|
147
|
+
): void {
|
|
138
148
|
if (eventType == null) {
|
|
139
149
|
// $FlowFixMe[incompatible-type]
|
|
140
150
|
this.#registry = {};
|
|
@@ -146,7 +156,9 @@ export default class EventEmitter<
|
|
|
146
156
|
/**
|
|
147
157
|
* Returns the number of registered listeners for the supplied event.
|
|
148
158
|
*/
|
|
149
|
-
listenerCount<TEvent
|
|
159
|
+
listenerCount<TEvent extends keyof TEventToArgsMap>(
|
|
160
|
+
eventType: TEvent,
|
|
161
|
+
): number {
|
|
150
162
|
const registrations: ?Set<Registration<TEventToArgsMap[TEvent]>> =
|
|
151
163
|
this.#registry[eventType];
|
|
152
164
|
return registrations == null ? 0 : registrations.size;
|
|
@@ -154,8 +166,10 @@ export default class EventEmitter<
|
|
|
154
166
|
}
|
|
155
167
|
|
|
156
168
|
function allocate<
|
|
157
|
-
TEventToArgsMap
|
|
158
|
-
|
|
169
|
+
TEventToArgsMap extends Readonly<
|
|
170
|
+
Record<string, ReadonlyArray<UnsafeEventObject>>,
|
|
171
|
+
>,
|
|
172
|
+
TEvent extends keyof TEventToArgsMap,
|
|
159
173
|
>(
|
|
160
174
|
registry: Registry<TEventToArgsMap>,
|
|
161
175
|
eventType: TEvent,
|
|
@@ -7,8 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
9
9
|
|
|
10
|
+
#import <React/RCTDefines.h>
|
|
11
|
+
|
|
10
12
|
#import "RCTBundleManager.h"
|
|
11
|
-
#import "RCTDefines.h"
|
|
12
13
|
|
|
13
14
|
RCT_EXTERN NSString *_Nonnull const RCTBundleURLProviderUpdatedNotification;
|
|
14
15
|
RCT_EXTERN const NSUInteger kRCTBundleURLProviderDefaultPort;
|
|
@@ -57,6 +58,23 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
57
58
|
*/
|
|
58
59
|
+ (BOOL)isPackagerRunning:(NSString *)hostPort scheme:(NSString *__nullable)scheme;
|
|
59
60
|
|
|
61
|
+
/**
|
|
62
|
+
* Asynchronously checks if there's a packager running at the given host:port.
|
|
63
|
+
* The port is optional, if not specified, kRCTBundleURLProviderDefaultPort will be used
|
|
64
|
+
* The completion handler is called on an arbitrary queue.
|
|
65
|
+
*/
|
|
66
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort completion:(void (^)(BOOL isRunning))completion;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Asynchronously checks if there's a packager running at the given scheme://host:port.
|
|
70
|
+
* The port is optional, if not specified, kRCTBundleURLProviderDefaultPort will be used
|
|
71
|
+
* The scheme is also optional, if not specified, a default http protocol will be used
|
|
72
|
+
* The completion handler is called on an arbitrary queue.
|
|
73
|
+
*/
|
|
74
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort
|
|
75
|
+
scheme:(NSString *__nullable)scheme
|
|
76
|
+
completion:(void (^)(BOOL isRunning))completion;
|
|
77
|
+
|
|
60
78
|
/**
|
|
61
79
|
* Returns the jsBundleURL for a given bundle entrypoint and
|
|
62
80
|
* the fallback offline JS bundle if the packager is not running.
|
|
@@ -94,6 +94,9 @@ static NSURL *serverRootWithHostPort(NSString *hostPort, NSString *scheme)
|
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
NSURL *url = [serverRootWithHostPort(hostPort, scheme) URLByAppendingPathComponent:@"status"];
|
|
97
|
+
if (url == nil) {
|
|
98
|
+
return NO;
|
|
99
|
+
}
|
|
97
100
|
|
|
98
101
|
NSURLSession *session = [NSURLSession sharedSession];
|
|
99
102
|
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
|
|
@@ -133,6 +136,73 @@ static NSURL *serverRootWithHostPort(NSString *hostPort, NSString *scheme)
|
|
|
133
136
|
return isRunning;
|
|
134
137
|
}
|
|
135
138
|
|
|
139
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort completion:(void (^)(BOOL isRunning))completion
|
|
140
|
+
{
|
|
141
|
+
[RCTBundleURLProvider isPackagerRunningAsync:hostPort scheme:nil completion:completion];
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort
|
|
145
|
+
scheme:(NSString *)scheme
|
|
146
|
+
completion:(void (^)(BOOL isRunning))completion
|
|
147
|
+
{
|
|
148
|
+
if (!kRCTAllowPackagerAccess) {
|
|
149
|
+
completion(NO);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
NSURL *url = [serverRootWithHostPort(hostPort, scheme) URLByAppendingPathComponent:@"status"];
|
|
154
|
+
if (url == nil) {
|
|
155
|
+
completion(NO);
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
NSURLSession *session = [NSURLSession sharedSession];
|
|
160
|
+
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
|
|
161
|
+
cachePolicy:NSURLRequestUseProtocolCachePolicy
|
|
162
|
+
timeoutInterval:kRCTPackagerStatusRequestTimeout];
|
|
163
|
+
[[RCTDevSupportHttpHeaders sharedInstance] applyHeadersToRequest:request];
|
|
164
|
+
|
|
165
|
+
__block BOOL hasCompleted = NO;
|
|
166
|
+
NSObject *lock = [[NSObject alloc] init];
|
|
167
|
+
|
|
168
|
+
void (^safeCompletion)(BOOL) = ^(BOOL isRunning) {
|
|
169
|
+
@synchronized(lock) {
|
|
170
|
+
if (!hasCompleted) {
|
|
171
|
+
hasCompleted = YES;
|
|
172
|
+
completion(isRunning);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
NSURLSessionDataTask *task = [session dataTaskWithRequest:request
|
|
178
|
+
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
|
|
179
|
+
if (error != nil || data == nil) {
|
|
180
|
+
safeCompletion(NO);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
NSString *status = [[NSString alloc] initWithData:data
|
|
184
|
+
encoding:NSUTF8StringEncoding];
|
|
185
|
+
BOOL isRunning = [status isEqualToString:@"packager-status:running"];
|
|
186
|
+
safeCompletion(isRunning);
|
|
187
|
+
}];
|
|
188
|
+
[task resume];
|
|
189
|
+
|
|
190
|
+
dispatch_after(
|
|
191
|
+
dispatch_time(
|
|
192
|
+
DISPATCH_TIME_NOW,
|
|
193
|
+
(int64_t)((kRCTPackagerStatusRequestTimeout + kRCTPackagerStatusRequestTimeoutGraceTime) * NSEC_PER_SEC)),
|
|
194
|
+
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),
|
|
195
|
+
^{
|
|
196
|
+
@synchronized(lock) {
|
|
197
|
+
if (!hasCompleted) {
|
|
198
|
+
hasCompleted = YES;
|
|
199
|
+
[task cancel];
|
|
200
|
+
completion(NO);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
|
|
136
206
|
- (NSString *)guessPackagerHost
|
|
137
207
|
{
|
|
138
208
|
static NSString *ipGuess;
|
|
@@ -160,6 +230,18 @@ static NSURL *serverRootWithHostPort(NSString *hostPort, NSString *scheme)
|
|
|
160
230
|
{
|
|
161
231
|
return false;
|
|
162
232
|
}
|
|
233
|
+
|
|
234
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort completion:(void (^)(BOOL isRunning))completion
|
|
235
|
+
{
|
|
236
|
+
completion(NO);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
+ (void)isPackagerRunningAsync:(NSString *)hostPort
|
|
240
|
+
scheme:(NSString *)scheme
|
|
241
|
+
completion:(void (^)(BOOL isRunning))completion
|
|
242
|
+
{
|
|
243
|
+
completion(NO);
|
|
244
|
+
}
|
|
163
245
|
#endif
|
|
164
246
|
|
|
165
247
|
- (NSString *)packagerServerHost
|
package/React/Base/RCTDefines.h
CHANGED
|
@@ -17,7 +17,7 @@ typedef void (^RCTMultipartDataTaskCallback)(
|
|
|
17
17
|
NSError *error,
|
|
18
18
|
BOOL done);
|
|
19
19
|
|
|
20
|
-
typedef NSURLRequest *
|
|
20
|
+
typedef NSURLRequest *_Nullable (^RCTMultipartDataTaskRequestInterceptor)(NSURLRequest *request);
|
|
21
21
|
/**
|
|
22
22
|
* The block provided via this function can inspect/modify multipart data task
|
|
23
23
|
* requests before they are sent. Return a modified request to override, or nil
|
|
@@ -14,8 +14,6 @@ void RCTSetCustomMultipartDataTaskRequestInterceptor(RCTMultipartDataTaskRequest
|
|
|
14
14
|
multipartRequestInterceptor = interceptor;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
#import "RCTDevSupportHttpHeaders.h"
|
|
18
|
-
|
|
19
17
|
@interface RCTMultipartDataTask () <NSURLSessionDataDelegate, NSURLSessionDataDelegate>
|
|
20
18
|
|
|
21
19
|
@end
|
|
@@ -49,7 +47,6 @@ void RCTSetCustomMultipartDataTaskRequestInterceptor(RCTMultipartDataTaskRequest
|
|
|
49
47
|
delegateQueue:nil];
|
|
50
48
|
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:_url];
|
|
51
49
|
[request addValue:@"multipart/mixed" forHTTPHeaderField:@"Accept"];
|
|
52
|
-
[[RCTDevSupportHttpHeaders sharedInstance] applyHeadersToRequest:request];
|
|
53
50
|
NSURLRequest *finalRequest = request;
|
|
54
51
|
if (multipartRequestInterceptor != nil) {
|
|
55
52
|
NSURLRequest *intercepted = multipartRequestInterceptor(request);
|
package/React/Base/RCTRootView.h
CHANGED
|
@@ -54,6 +54,8 @@ extern
|
|
|
54
54
|
* like any ordinary UIView. You can have multiple RCTRootViews on screen at
|
|
55
55
|
* once, all controlled by the same JavaScript application.
|
|
56
56
|
*/
|
|
57
|
+
#pragma clang diagnostic push
|
|
58
|
+
#pragma clang diagnostic warning "-Wdeprecated"
|
|
57
59
|
__attribute__((deprecated("This API will be removed along with the legacy architecture.")))
|
|
58
60
|
#if TARGET_OS_TV
|
|
59
61
|
@interface RCTRootView : UIView <RCTTVRemoteSelectHandlerDelegate>
|
|
@@ -190,4 +192,6 @@ __attribute__((deprecated("This API will be removed along with the legacy archit
|
|
|
190
192
|
|
|
191
193
|
@end
|
|
192
194
|
|
|
195
|
+
#pragma clang diagnostic pop
|
|
196
|
+
|
|
193
197
|
NS_ASSUME_NONNULL_END
|
|
@@ -6,8 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
9
|
-
|
|
10
|
-
@class RCTRootView;
|
|
9
|
+
#import <React/RCTRootView.h>
|
|
11
10
|
|
|
12
11
|
@protocol RCTRootViewDelegate <NSObject>
|
|
13
12
|
|
|
@@ -25,6 +24,10 @@
|
|
|
25
24
|
* The new intrinsic content size is available via the `intrinsicContentSize`
|
|
26
25
|
* property of the root view. The view will not resize itself.
|
|
27
26
|
*/
|
|
27
|
+
|
|
28
|
+
#pragma clang diagnostic push
|
|
29
|
+
#pragma clang diagnostic ignored "-Wdeprecated"
|
|
28
30
|
- (void)rootViewDidChangeIntrinsicSize:(RCTRootView *)rootView;
|
|
31
|
+
#pragma clang diagnostic pop
|
|
29
32
|
|
|
30
33
|
@end
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -22,9 +22,9 @@ NSDictionary* RCTGetReactNativeVersion(void)
|
|
|
22
22
|
dispatch_once(&onceToken, ^(void){
|
|
23
23
|
__rnVersion = @{
|
|
24
24
|
RCTVersionMajor: @(0),
|
|
25
|
-
RCTVersionMinor: @(
|
|
26
|
-
RCTVersionPatch: @(
|
|
27
|
-
RCTVersionPrerelease: @"
|
|
25
|
+
RCTVersionMinor: @(86),
|
|
26
|
+
RCTVersionPatch: @(0),
|
|
27
|
+
RCTVersionPrerelease: @"0rc2",
|
|
28
28
|
};
|
|
29
29
|
});
|
|
30
30
|
return __rnVersion;
|
|
@@ -32,8 +32,11 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
32
32
|
* * ability to create a UIView instance on demand (later);
|
|
33
33
|
* * ability to communicate the current stage of the surface granularly.
|
|
34
34
|
*/
|
|
35
|
+
#pragma clang diagnostic push
|
|
36
|
+
#pragma clang diagnostic warning "-Wdeprecated"
|
|
35
37
|
__deprecated_msg("This API will be removed along with the legacy architecture.") @interface RCTSurface
|
|
36
38
|
: NSObject<RCTSurfaceProtocol>
|
|
39
|
+
#pragma clang diagnostic pop
|
|
37
40
|
|
|
38
41
|
- (instancetype)initWithBridge:(RCTBridge *)bridge
|
|
39
42
|
moduleName:(NSString *)moduleName
|
|
@@ -7,12 +7,11 @@
|
|
|
7
7
|
|
|
8
8
|
#import <UIKit/UIKit.h>
|
|
9
9
|
|
|
10
|
+
#import <React/RCTSurface.h>
|
|
10
11
|
#import <React/RCTSurfaceStage.h>
|
|
11
12
|
|
|
12
13
|
NS_ASSUME_NONNULL_BEGIN
|
|
13
14
|
|
|
14
|
-
@class RCTSurface;
|
|
15
|
-
|
|
16
15
|
@protocol RCTSurfaceDelegate <NSObject>
|
|
17
16
|
|
|
18
17
|
@optional
|
|
@@ -21,13 +20,18 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
21
20
|
* Notifies a receiver that a surface transitioned to a new stage.
|
|
22
21
|
* See `RCTSurfaceStage` for more details.
|
|
23
22
|
*/
|
|
23
|
+
#pragma clang diagnostic push
|
|
24
|
+
#pragma clang diagnostic ignored "-Wdeprecated"
|
|
24
25
|
- (void)surface:(RCTSurface *)surface didChangeStage:(RCTSurfaceStage)stage;
|
|
25
|
-
|
|
26
|
+
#pragma clang diagnostic pop
|
|
26
27
|
/**
|
|
27
28
|
* Notifies a receiver that root view got a new (intrinsic) size during the last
|
|
28
29
|
* layout pass.
|
|
29
30
|
*/
|
|
31
|
+
#pragma clang diagnostic push
|
|
32
|
+
#pragma clang diagnostic ignored "-Wdeprecated"
|
|
30
33
|
- (void)surface:(RCTSurface *)surface didChangeIntrinsicSize:(CGSize)intrinsicSize;
|
|
34
|
+
#pragma clang diagnostic pop
|
|
31
35
|
|
|
32
36
|
@end
|
|
33
37
|
|
|
@@ -182,6 +182,8 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithCoder : (NSCoder *)aDecoder)
|
|
|
182
182
|
#if TARGET_OS_TV
|
|
183
183
|
self.tvRemoteHandler = [[RCTTVRemoteHandler alloc] initWithView:[self contentView]];
|
|
184
184
|
self.tvRemoteSelectHandler = [[RCTTVRemoteSelectHandler alloc] initWithView:self];
|
|
185
|
+
[self setNeedsFocusUpdate];
|
|
186
|
+
[self updateFocusIfNeeded];
|
|
185
187
|
#endif
|
|
186
188
|
});
|
|
187
189
|
}
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
|
|
16
16
|
@property (nonatomic, strong, readonly) RCTDevMenuConfiguration *__nullable devMenuConfiguration;
|
|
17
17
|
|
|
18
|
-
- (instancetype)initWithDevMenuConfiguration:(RCTDevMenuConfiguration *__nullable)devMenuConfiguration;
|
|
19
|
-
- (void)decorate:(id<RCTBridgeModule>)devMenuModule;
|
|
18
|
+
- (instancetype _Nonnull)initWithDevMenuConfiguration:(RCTDevMenuConfiguration *__nullable)devMenuConfiguration;
|
|
19
|
+
- (void)decorate:(id<RCTBridgeModule> _Nonnull)devMenuModule;
|
|
20
20
|
|
|
21
21
|
#endif
|
|
22
22
|
|
|
@@ -29,7 +29,7 @@ static UIColor *RCTUIColorFromAnsiColor(const AnsiColor &c)
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
auto spans = parseAnsi(text.UTF8String);
|
|
32
|
-
NSMutableAttributedString *result =[NSMutableAttributedString new];
|
|
32
|
+
NSMutableAttributedString *result = [NSMutableAttributedString new];
|
|
33
33
|
NSDictionary *baseAttributes = @{NSFontAttributeName : font, NSForegroundColorAttributeName : color};
|
|
34
34
|
|
|
35
35
|
for (const auto &span : spans) {
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
#import <objc/runtime.h>
|
|
11
11
|
|
|
12
12
|
#import <FBReactNativeSpec/FBReactNativeSpec.h>
|
|
13
|
+
#import <React/RCTAssert.h>
|
|
13
14
|
#import <React/RCTConvert.h>
|
|
14
15
|
#import <React/RCTUtils.h>
|
|
15
16
|
#import <SocketRocket/SRWebSocket.h>
|
|
@@ -73,6 +74,12 @@ RCT_EXPORT_METHOD(
|
|
|
73
74
|
connect : (NSURL *)URL protocols : (NSArray *)protocols options : (JS::NativeWebSocketModule::SpecConnectOptions &)
|
|
74
75
|
options socketID : (double)socketID)
|
|
75
76
|
{
|
|
77
|
+
if (URL == nil || URL.absoluteString.length == 0u) {
|
|
78
|
+
RCTAssert(NO, @"RCTWebSocketModule: Invalid WebSocket URL passed to connect");
|
|
79
|
+
[self sendEventWithName:@"websocketFailed" body:@{@"message" : @"Invalid WebSocket URL", @"id" : @(socketID)}];
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
76
83
|
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL];
|
|
77
84
|
|
|
78
85
|
// We load cookies from sharedHTTPCookieStorage (shared with XHR and
|
|
@@ -84,14 +91,33 @@ RCT_EXPORT_METHOD(
|
|
|
84
91
|
}
|
|
85
92
|
|
|
86
93
|
// Load and set the cookie header.
|
|
87
|
-
|
|
88
|
-
|
|
94
|
+
if (components != nil && components.URL != nil) {
|
|
95
|
+
NSArray<NSHTTPCookie *> *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:components.URL];
|
|
96
|
+
request.allHTTPHeaderFields = [NSHTTPCookie requestHeaderFieldsWithCookies:cookies];
|
|
97
|
+
} else {
|
|
98
|
+
RCTLogError(@"RCTWebSocketModule: Invalid URL components - components or components.URL is nil");
|
|
99
|
+
}
|
|
89
100
|
|
|
90
101
|
// Load supplied headers
|
|
91
102
|
if ([options.headers() isKindOfClass:NSDictionary.class]) {
|
|
92
103
|
NSDictionary *headers = (NSDictionary *)options.headers();
|
|
93
|
-
[headers enumerateKeysAndObjectsUsingBlock:^(
|
|
94
|
-
|
|
104
|
+
[headers enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) {
|
|
105
|
+
NSString *headerKey = [RCTConvert NSString:key];
|
|
106
|
+
NSString *headerValue = [RCTConvert NSString:value];
|
|
107
|
+
|
|
108
|
+
if (headerKey == nil || headerValue == nil) {
|
|
109
|
+
RCTLogError(
|
|
110
|
+
@"RCTWebSocketModule: Invalid header key and/or value types. "
|
|
111
|
+
"Expected NSString for both, got key of type %@ and value of type %@.",
|
|
112
|
+
NSStringFromClass([key class]),
|
|
113
|
+
NSStringFromClass([value class]));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (headerKey == nil) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
[request addValue:headerValue == nil ? @"" : headerValue forHTTPHeaderField:headerKey];
|
|
95
121
|
}];
|
|
96
122
|
}
|
|
97
123
|
|
|
@@ -153,6 +179,9 @@ RCT_EXPORT_METHOD(close : (double)code reason : (NSString *)reason socketID : (d
|
|
|
153
179
|
NSString *type;
|
|
154
180
|
|
|
155
181
|
NSNumber *socketID = [webSocket reactTag];
|
|
182
|
+
if (!socketID) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
156
185
|
id contentHandler = _contentHandlers[socketID];
|
|
157
186
|
if (contentHandler) {
|
|
158
187
|
message = [contentHandler processWebsocketMessage:message forSocketID:socketID withType:&type];
|
|
@@ -165,18 +194,25 @@ RCT_EXPORT_METHOD(close : (double)code reason : (NSString *)reason socketID : (d
|
|
|
165
194
|
}
|
|
166
195
|
}
|
|
167
196
|
|
|
168
|
-
[self sendEventWithName:@"websocketMessage" body:@{@"data" : message, @"type" : type, @"id" :
|
|
197
|
+
[self sendEventWithName:@"websocketMessage" body:@{@"data" : message, @"type" : type, @"id" : socketID}];
|
|
169
198
|
}
|
|
170
199
|
|
|
171
200
|
- (void)webSocketDidOpen:(SRWebSocket *)webSocket
|
|
172
201
|
{
|
|
202
|
+
NSNumber *socketID = [webSocket reactTag];
|
|
203
|
+
if (!socketID) {
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
173
206
|
[self sendEventWithName:@"websocketOpen"
|
|
174
|
-
body:@{@"id" :
|
|
207
|
+
body:@{@"id" : socketID, @"protocol" : webSocket.protocol ? webSocket.protocol : @""}];
|
|
175
208
|
}
|
|
176
209
|
|
|
177
210
|
- (void)webSocket:(SRWebSocket *)webSocket didFailWithError:(NSError *)error
|
|
178
211
|
{
|
|
179
212
|
NSNumber *socketID = [webSocket reactTag];
|
|
213
|
+
if (!socketID) {
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
180
216
|
_contentHandlers[socketID] = nil;
|
|
181
217
|
_sockets[socketID] = nil;
|
|
182
218
|
NSDictionary *body =
|
|
@@ -190,6 +226,9 @@ RCT_EXPORT_METHOD(close : (double)code reason : (NSString *)reason socketID : (d
|
|
|
190
226
|
wasClean:(BOOL)wasClean
|
|
191
227
|
{
|
|
192
228
|
NSNumber *socketID = [webSocket reactTag];
|
|
229
|
+
if (!socketID) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
193
232
|
_contentHandlers[socketID] = nil;
|
|
194
233
|
_sockets[socketID] = nil;
|
|
195
234
|
[self sendEventWithName:@"websocketClosed"
|