react-native-tvos 0.83.2-0 → 0.84.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/Animated/AnimatedEvent.js +2 -2
- package/Libraries/Animated/animations/Animation.js +1 -3
- package/Libraries/Animated/createAnimatedComponent.js +8 -5
- package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +40 -4
- package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +16 -11
- package/Libraries/Animated/nodes/AnimatedProps.js +43 -12
- package/Libraries/Animated/nodes/AnimatedStyle.js +12 -12
- package/Libraries/Animated/nodes/AnimatedValue.js +6 -3
- package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
- package/Libraries/AppDelegate/RCTReactNativeFactory.h +3 -0
- package/Libraries/AppDelegate/RCTReactNativeFactory.mm +33 -31
- package/Libraries/AppDelegate/RCTRootViewFactory.h +10 -4
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +21 -5
- package/Libraries/BatchedBridge/MessageQueue.js +24 -22
- package/Libraries/Blob/RCTBlobPlugins.mm +14 -14
- package/Libraries/Blob/URL.js +34 -3
- package/Libraries/Blob/URLSearchParams.js +1 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +9 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +6 -1
- package/Libraries/Components/Button.js +2 -5
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +4 -4
- package/Libraries/Components/Keyboard/Keyboard.js +2 -2
- package/Libraries/Components/Pressable/Pressable.js +8 -8
- package/Libraries/Components/TextInput/TextInput.flow.js +13 -13
- package/Libraries/Components/TextInput/TextInput.js +33 -34
- package/Libraries/Components/Touchable/PooledClass.js +2 -2
- package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +9 -9
- package/Libraries/Components/View/ViewPropTypes.js +16 -6
- package/Libraries/Core/Devtools/loadBundleFromServer.js +6 -3
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +3 -3
- package/Libraries/Core/RawEventEmitter.js +1 -1
- package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/setUpDeveloperTools.js +1 -1
- package/Libraries/Core/setUpErrorHandling.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +2 -2
- package/Libraries/Image/Image.android.js +2 -2
- package/Libraries/Image/Image.ios.js +2 -2
- package/Libraries/Image/ImageProps.js +1 -1
- package/Libraries/Image/ImageTypes.flow.js +2 -2
- package/Libraries/Image/RCTImagePlugins.h +1 -0
- package/Libraries/Image/RCTImagePlugins.mm +30 -17
- package/Libraries/Interaction/InteractionManager.js +3 -3
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +10 -13
- package/Libraries/Lists/FlatList.js +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +31 -4
- package/Libraries/LogBox/Data/LogBoxLog.js +2 -2
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
- package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -5
- package/Libraries/LogBox/LogBox.js +7 -7
- package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +14 -14
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -0
- package/Libraries/NativeComponent/BaseViewConfig.android.js +12 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +4 -4
- package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
- package/Libraries/Network/RCTInspectorNetworkReporter.mm +26 -3
- package/Libraries/Network/RCTNetworkPlugins.mm +22 -16
- package/Libraries/Network/RCTNetworking.android.js +3 -3
- package/Libraries/Network/RCTNetworking.ios.js +2 -2
- package/Libraries/Network/RCTNetworking.js.flow +2 -2
- package/Libraries/Pressability/Pressability.js +9 -9
- package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +10 -13
- package/Libraries/ReactNative/AppRegistry.flow.js +1 -1
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
- package/Libraries/ReactNative/FabricUIManager.js +1 -1
- package/Libraries/ReactNative/PaperUIManager.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +2 -2
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +1 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +11 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +11 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +11 -4
- package/Libraries/Renderer/shims/ReactFabric.js +3 -1
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
- package/Libraries/Renderer/shims/ReactNative.js +2 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
- package/Libraries/Settings/RCTSettingsManager.mm +1 -1
- package/Libraries/Settings/RCTSettingsPlugins.mm +10 -13
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +4 -2
- package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +99 -4
- package/Libraries/StyleSheet/StyleSheetTypes.js +6 -8
- package/Libraries/StyleSheet/processFilter.js +1 -1
- package/Libraries/Text/Text.js +46 -6
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +3 -2
- package/Libraries/Text/TextNativeComponent.js +1 -1
- package/Libraries/Text/TextProps.js +7 -7
- package/Libraries/TypeSafety/RCTTypedModuleConstants.h +36 -1
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CoreEventTypes.js +31 -0
- package/Libraries/Types/ReactDevToolsTypes.js +2 -2
- package/Libraries/Utilities/Appearance.js +2 -2
- package/Libraries/Utilities/DevLoadingView.js +8 -1
- package/Libraries/Utilities/DevSettings.js +3 -3
- package/Libraries/Utilities/HMRClient.js +4 -3
- package/Libraries/Utilities/RCTLog.js +3 -3
- package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +1 -1
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +3 -3
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +7 -7
- package/Libraries/Utilities/useRefEffect.js +1 -1
- package/Libraries/Vibration/RCTVibrationPlugins.mm +10 -13
- package/Libraries/WebSocket/WebSocketInterceptor.js +3 -3
- package/Libraries/promiseRejectionTrackingOptions.js +8 -8
- package/Libraries/vendor/core/ErrorUtils.js +10 -10
- package/Libraries/vendor/emitter/EventEmitter.js +6 -6
- package/README.md +56 -18
- package/React/Base/RCTAssert.m +2 -2
- package/React/Base/RCTBridge.h +0 -4
- package/React/Base/RCTBridge.mm +1 -12
- package/React/Base/RCTBundleManager.h +59 -7
- package/React/Base/RCTBundleManager.m +112 -1
- package/React/Base/RCTBundleURLProvider.h +24 -0
- package/React/Base/RCTBundleURLProvider.mm +49 -4
- package/React/Base/RCTConvert.mm +2 -0
- package/React/Base/RCTModuleData.mm +2 -2
- package/React/Base/RCTUtils.h +4 -0
- package/React/Base/RCTUtils.mm +60 -3
- package/React/Base/RCTVersion.m +2 -2
- package/React/CoreModules/CoreModulesPlugins.mm +97 -35
- package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +1 -1
- package/React/CoreModules/RCTAccessibilityManager.mm +18 -1
- package/React/CoreModules/RCTAppState.mm +1 -1
- package/React/CoreModules/RCTDevLoadingView.mm +116 -36
- package/React/CoreModules/RCTDevSettings.h +36 -1
- package/React/CoreModules/RCTDevSettings.mm +44 -8
- package/React/CoreModules/RCTExceptionsManager.mm +5 -2
- package/React/CoreModules/RCTPlatform.mm +3 -2
- package/React/CoreModules/RCTStatusBarManager.mm +1 -1
- package/React/CxxBridge/RCTCxxBridge.mm +1 -2
- package/React/CxxModule/RCTCxxMethod.mm +1 -1
- package/React/CxxModule/RCTCxxUtils.mm +2 -12
- package/React/DevSupport/RCTDevLoadingViewProtocol.h +4 -1
- package/React/DevSupport/RCTPackagerConnection.h +4 -2
- package/React/DevSupport/RCTPackagerConnection.mm +30 -33
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +9 -2
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +62 -17
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +529 -494
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +1 -0
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +14 -0
- package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +11 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +6 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +2 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +39 -2
- package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +5 -7
- package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +5 -7
- package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -1
- package/React/Fabric/Surface/RCTFabricSurface.mm +1 -1
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +6 -2
- package/React/Modules/RCTEventEmitter.m +1 -0
- package/React/Views/RCTModalHostView.h +2 -0
- package/React/Views/RCTTVView.m +2 -0
- package/ReactAndroid/api/ReactAndroid.api +14 -73
- package/ReactAndroid/build.gradle.kts +2 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/hermes-engine/build.gradle.kts +97 -29
- package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +10 -13
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +1 -119
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +0 -10
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +4 -29
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +43 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.kt +53 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +6 -96
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +17 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +1 -33
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +4 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +11 -10
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +58 -13
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +10 -60
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +144 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingState.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingStateListener.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{interfaces → inspector}/TracingStateProvider.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +6 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +31 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +7 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +63 -45
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +106 -76
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +22 -16
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +23 -17
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +117 -84
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +22 -16
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +5 -43
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +0 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +36 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +3 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +7 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.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/packagerconnection/PackagerConnectionSettings.kt +15 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +0 -9
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +46 -12
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +11 -17
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +52 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +92 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +62 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSKeyDispatcher.kt +65 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +19 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +5 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +9 -91
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +47 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +4 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -11
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -47
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +3 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyDownEvent.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyEvent.kt +156 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyUpEvent.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +29 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +12 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +36 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +21 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +31 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +127 -32
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +3 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +3 -12
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +98 -3
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +62 -26
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +145 -103
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +31 -22
- package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -3
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +5 -23
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -7
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +0 -24
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.h +2 -1
- package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +1 -29
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +1 -2
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +145 -17
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +193 -19
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +62 -63
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +5 -7
- package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +1 -0
- package/ReactAndroid/src/main/res/devsupport/drawable/ic_perf_issue.xml +10 -0
- package/ReactAndroid/src/main/res/devsupport/layout/dev_loading_view.xml +41 -15
- package/ReactAndroid/src/main/res/devsupport/layout/fps_view.xml +1 -1
- package/ReactAndroid/src/main/res/devsupport/values/strings.xml +1 -0
- package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +16 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.h +2 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +38 -5
- package/ReactCommon/cmake-utils/react-native-flags.cmake +3 -0
- package/ReactCommon/cxxreact/JSBigString.h +14 -5
- package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +4 -5
- package/ReactCommon/cxxreact/ReactMarker.cpp +0 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
- package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +1 -1
- package/ReactCommon/hermes/React-hermes.podspec +1 -0
- package/ReactCommon/hermes/executor/CMakeLists.txt +0 -4
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -0
- package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +0 -4
- package/ReactCommon/jsi/jsi/jsi.cpp +6 -1
- package/ReactCommon/jsi/jsi/jsi.h +73 -0
- package/ReactCommon/jsi/jsi/test/testlib.cpp +2 -2
- package/ReactCommon/jsiexecutor/CMakeLists.txt +3 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -0
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +2 -43
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +3 -8
- package/ReactCommon/jsinspector-modern/ConsoleTask.cpp +27 -0
- package/ReactCommon/jsinspector-modern/ConsoleTask.h +38 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.cpp +46 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.h +102 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.cpp +55 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.h +48 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +9 -10
- package/ReactCommon/jsinspector-modern/HostAgent.h +2 -2
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +7 -6
- package/ReactCommon/jsinspector-modern/HostTarget.h +73 -16
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +40 -8
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +42 -5
- package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +54 -21
- package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +2 -11
- package/ReactCommon/jsinspector-modern/InstanceTarget.h +2 -2
- package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +9 -1
- package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +4 -1
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +3 -2
- package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +12 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -13
- package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +106 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +30 -18
- package/ReactCommon/jsinspector-modern/TracingAgent.h +5 -4
- package/ReactCommon/jsinspector-modern/tests/ConsoleCreateTaskTest.cpp +131 -0
- package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +53 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +20 -0
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +25 -55
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +116 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.h +95 -0
- package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +60 -0
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +43 -0
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +144 -0
- package/ReactCommon/jsinspector-modern/tracing/{TraceRecordingStateSerializer.h → HostTracingProfileSerializer.h} +16 -8
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +67 -16
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +21 -2
- package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +5 -0
- package/ReactCommon/jsinspector-modern/tracing/TimeWindowedBuffer.h +158 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +104 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +59 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +18 -7
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +139 -0
- package/ReactCommon/jsinspector-modern/tracing/tests/TimeWindowedBufferTest.cpp +352 -0
- package/ReactCommon/jsitooling/React-jsitooling.podspec +4 -0
- package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.cpp +54 -0
- package/{ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h → ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.h} +4 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +43 -31
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +55 -40
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +234 -180
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +24 -18
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +43 -31
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +91 -64
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -4
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +12 -9
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +7 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +30 -10
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +17 -6
- package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +0 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +0 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +43 -60
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +11 -36
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +53 -38
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +22 -16
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +24 -3
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +76 -13
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +74 -64
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +17 -13
- package/ReactCommon/react/networking/NetworkReporter.cpp +26 -22
- package/ReactCommon/react/networking/React-networking.podspec +0 -1
- package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.cpp +4 -2
- package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +10 -2
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
- package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +104 -78
- package/ReactCommon/react/renderer/animated/AnimatedModule.h +10 -2
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +174 -75
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +19 -1
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +68 -46
- package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +1 -0
- package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +1 -1
- package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
- package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +103 -4
- package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +9 -0
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +5 -1
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +9 -0
- package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
- package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +59 -0
- package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +2 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +715 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +388 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +191 -2
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +100 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +298 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsSerializer.h +17 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +90 -94
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +23 -5
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +75 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +32 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +2 -2
- package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +3 -0
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +2 -2
- package/ReactCommon/react/renderer/components/image/ImageProps.h +2 -2
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -2
- package/ReactCommon/react/renderer/components/image/conversions.h +5 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +2 -1
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +5 -1
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +21 -1
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +14 -0
- package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +10 -0
- package/ReactCommon/react/renderer/core/DynamicEventPayload.h +6 -1
- package/ReactCommon/react/renderer/core/DynamicPointerEvent.cpp +30 -0
- package/ReactCommon/react/renderer/core/DynamicPointerEvent.h +29 -0
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -1
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +11 -14
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +3 -3
- package/ReactCommon/react/renderer/core/Props.cpp +23 -8
- package/ReactCommon/react/renderer/core/Props.h +6 -4
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -10
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +32 -0
- package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +7 -0
- package/ReactCommon/react/renderer/debug/CMakeLists.txt +7 -0
- package/ReactCommon/react/renderer/debug/flags.h +3 -2
- package/ReactCommon/react/renderer/graphics/BlendMode.h +2 -0
- package/ReactCommon/react/renderer/graphics/Filter.h +2 -0
- package/ReactCommon/react/renderer/imagemanager/ImageManager.h +3 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +23 -12
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +8 -3
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +16 -4
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +9 -4
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +8 -4
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
- package/ReactCommon/react/renderer/imagemanager/primitives.h +15 -6
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +0 -11
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +0 -20
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +3 -3
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -3
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +6 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
- package/ReactCommon/react/runtime/CMakeLists.txt +0 -4
- package/ReactCommon/react/runtime/PlatformTimerRegistry.h +2 -0
- package/ReactCommon/react/runtime/ReactInstance.cpp +21 -14
- package/ReactCommon/react/runtime/ReactInstance.h +5 -1
- package/ReactCommon/react/runtime/TimerManager.cpp +11 -53
- package/ReactCommon/react/runtime/TimerManager.h +7 -12
- package/ReactCommon/react/runtime/hermes/CMakeLists.txt +0 -4
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +3 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +10 -6
- package/ReactCommon/yoga/yoga/algorithm/FlexDirection.h +6 -6
- package/ReactCommon/yoga/yoga/algorithm/SizingMode.h +4 -4
- package/ReactCommon/yoga/yoga/style/Style.h +8 -8
- package/ReactCommon/yoga/yoga/style/StyleLength.h +7 -0
- package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -0
- package/flow/HermesInternalType.js +6 -6
- package/flow/bom.js.flow +35 -28
- package/flow/cssom.js.flow +3 -3
- package/flow/dom.js.flow +34 -33
- package/index.js +3 -0
- package/index.js.flow +8 -0
- package/jest/mock.js +2 -2
- package/jest/mockComponent.js +1 -1
- package/jest/setup.js +1 -1
- package/package.json +11 -11
- package/react-native.config.js +0 -17
- package/scripts/cocoapods/new_architecture.rb +7 -1
- package/scripts/cocoapods/spm.rb +28 -10
- package/scripts/cocoapods/utils.rb +4 -4
- package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +5 -5
- package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +7 -6
- package/scripts/ios-configure-glog.sh +24 -1
- package/scripts/react_native_pods.rb +13 -0
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +53 -36
- package/sdks/hermes-engine/hermes-utils.rb +8 -15
- package/sdks/hermes-engine/version.properties +1 -1
- package/src/private/animated/NativeAnimatedHelper.js +130 -125
- package/src/private/animated/NativeAnimatedValidation.js +7 -4
- package/src/private/animated/createAnimatedPropsHook.js +13 -5
- package/src/private/animated/createAnimatedPropsMemoHook.js +10 -10
- package/src/private/components/virtualview/VirtualView.js +16 -9
- package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
- package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +6 -25
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -27
- package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +3 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +63 -42
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +12 -9
- package/src/private/renderer/errorhandling/ErrorHandlers.js +7 -4
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
- package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -0
- package/src/private/webapis/dom/events/CustomEvent.js +3 -3
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +29 -29
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +1 -1
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +2 -0
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +4 -1
- package/src/private/webapis/geometry/DOMRectReadOnly.js +1 -1
- package/src/private/webapis/html/events/MessageEvent.js +3 -3
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +3 -3
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +53 -5
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +2 -2
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +4 -4
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
- package/src/private/webapis/mutationobserver/MutationObserver.js +1 -1
- package/src/private/webapis/mutationobserver/MutationRecord.js +1 -1
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +4 -4
- package/src/private/webapis/performance/Performance.js +1 -1
- package/src/private/webapis/performance/UserTiming.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +3 -3
- package/src/private/webapis/structuredClone/structuredClone.js +3 -3
- package/src/types/globals.d.ts +30 -1
- package/third-party-podspecs/RCT-Folly.podspec +1 -0
- package/third-party-podspecs/glog.podspec +1 -0
- package/React/CxxModule/RCTCxxModule.h +0 -29
- package/React/CxxModule/RCTCxxModule.mm +0 -87
- package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.kt +0 -146
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +0 -61
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +0 -54
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +0 -78
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +0 -105
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingState.kt +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +0 -157
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +0 -87
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +0 -23
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +0 -37
- package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +0 -20
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +0 -175
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +0 -75
- package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.cpp +0 -68
- package/ReactCommon/jsinspector-modern/tracing/TracingState.h +0 -24
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +0 -212
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +0 -40
- package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +0 -628
- package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +0 -66
- package/tvosCommands.js +0 -51
- /package/ReactCommon/jsi/jsi/{hermes.h → hermes-interfaces.h} +0 -0
|
@@ -32,6 +32,7 @@ using namespace facebook::react;
|
|
|
32
32
|
UIWindow *_window;
|
|
33
33
|
UILabel *_label;
|
|
34
34
|
UIView *_container;
|
|
35
|
+
UIButton *_dismissButton;
|
|
35
36
|
NSDate *_showDate;
|
|
36
37
|
BOOL _hiding;
|
|
37
38
|
dispatch_block_t _initialMessageBlock;
|
|
@@ -85,7 +86,10 @@ RCT_EXPORT_MODULE()
|
|
|
85
86
|
dispatch_time(DISPATCH_TIME_NOW, 0.2 * NSEC_PER_SEC), dispatch_get_main_queue(), self->_initialMessageBlock);
|
|
86
87
|
}
|
|
87
88
|
|
|
88
|
-
- (void)showMessage:(NSString *)message
|
|
89
|
+
- (void)showMessage:(NSString *)message
|
|
90
|
+
color:(UIColor *)color
|
|
91
|
+
backgroundColor:(UIColor *)backgroundColor
|
|
92
|
+
dismissButton:(BOOL)dismissButton
|
|
89
93
|
{
|
|
90
94
|
if (!RCTDevLoadingViewGetEnabled() || _hiding) {
|
|
91
95
|
return;
|
|
@@ -112,61 +116,128 @@ RCT_EXPORT_MODULE()
|
|
|
112
116
|
|
|
113
117
|
self->_showDate = [NSDate date];
|
|
114
118
|
|
|
119
|
+
if (self->_label == nullptr) {
|
|
120
|
+
self->_label = [[UILabel alloc] init];
|
|
121
|
+
self->_label.translatesAutoresizingMaskIntoConstraints = NO;
|
|
122
|
+
self->_label.font = [UIFont monospacedDigitSystemFontOfSize:12.0 weight:UIFontWeightRegular];
|
|
123
|
+
self->_label.textAlignment = NSTextAlignmentCenter;
|
|
124
|
+
[self->_container addSubview:self->_label];
|
|
125
|
+
self->_label.numberOfLines = 0;
|
|
126
|
+
}
|
|
127
|
+
self->_label.textColor = color;
|
|
128
|
+
self->_label.text = message;
|
|
129
|
+
|
|
130
|
+
if (self->_container == nullptr) {
|
|
131
|
+
self->_container = [[UIView alloc] init];
|
|
132
|
+
self->_container.translatesAutoresizingMaskIntoConstraints = NO;
|
|
133
|
+
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hide)];
|
|
134
|
+
[self->_container addGestureRecognizer:tapGesture];
|
|
135
|
+
self->_container.userInteractionEnabled = YES;
|
|
136
|
+
[self->_container addSubview:self->_label];
|
|
137
|
+
}
|
|
138
|
+
self->_container.backgroundColor = backgroundColor;
|
|
139
|
+
|
|
140
|
+
// Handle button creation/removal dynamically based on dismissButton parameter
|
|
141
|
+
if (dismissButton && self->_dismissButton == nullptr) {
|
|
142
|
+
CGFloat hue = 0.0;
|
|
143
|
+
CGFloat saturation = 0.0;
|
|
144
|
+
CGFloat brightness = 0.0;
|
|
145
|
+
CGFloat alpha = 0.0;
|
|
146
|
+
[backgroundColor getHue:&hue saturation:&saturation brightness:&brightness alpha:&alpha];
|
|
147
|
+
UIColor *darkerBackground = [UIColor colorWithHue:hue
|
|
148
|
+
saturation:saturation
|
|
149
|
+
brightness:brightness * 0.7
|
|
150
|
+
alpha:1.0];
|
|
151
|
+
|
|
152
|
+
UIButtonConfiguration *buttonConfig = [UIButtonConfiguration plainButtonConfiguration];
|
|
153
|
+
buttonConfig.attributedTitle = [[NSAttributedString alloc]
|
|
154
|
+
initWithString:@"Dismiss ✕"
|
|
155
|
+
attributes:@{NSFontAttributeName : [UIFont systemFontOfSize:11.0 weight:UIFontWeightRegular]}];
|
|
156
|
+
buttonConfig.contentInsets = NSDirectionalEdgeInsetsMake(6, 12, 6, 12);
|
|
157
|
+
buttonConfig.background.backgroundColor = darkerBackground;
|
|
158
|
+
buttonConfig.background.cornerRadius = 10;
|
|
159
|
+
buttonConfig.baseForegroundColor = color;
|
|
160
|
+
|
|
161
|
+
// Button is a visual cue to tap anywhere on the banner to dismiss so no seperate action is needed
|
|
162
|
+
self->_dismissButton = [UIButton buttonWithConfiguration:buttonConfig primaryAction:nil];
|
|
163
|
+
self->_dismissButton.userInteractionEnabled = NO;
|
|
164
|
+
self->_dismissButton.translatesAutoresizingMaskIntoConstraints = NO;
|
|
165
|
+
|
|
166
|
+
// Prevent button from being compressed - force label to wrap instead
|
|
167
|
+
[self->_dismissButton setContentCompressionResistancePriority:UILayoutPriorityRequired
|
|
168
|
+
forAxis:UILayoutConstraintAxisHorizontal];
|
|
169
|
+
[self->_dismissButton setContentHuggingPriority:UILayoutPriorityRequired
|
|
170
|
+
forAxis:UILayoutConstraintAxisHorizontal];
|
|
171
|
+
|
|
172
|
+
[self->_container addSubview:self->_dismissButton];
|
|
173
|
+
} else if (!dismissButton && self->_dismissButton != nullptr) {
|
|
174
|
+
[self->_dismissButton removeFromSuperview];
|
|
175
|
+
self->_dismissButton = nullptr;
|
|
176
|
+
}
|
|
177
|
+
|
|
115
178
|
UIWindow *mainWindow = RCTKeyWindow();
|
|
116
|
-
self->_window
|
|
179
|
+
if (self->_window == nullptr) {
|
|
180
|
+
UIWindowScene *windowScene = mainWindow.windowScene;
|
|
181
|
+
if (windowScene != nil) {
|
|
182
|
+
self->_window = [[UIWindow alloc] initWithWindowScene:windowScene];
|
|
183
|
+
} else {
|
|
184
|
+
self->_window = [[UIWindow alloc] init];
|
|
185
|
+
}
|
|
117
186
|
#if TARGET_OS_TV
|
|
118
|
-
|
|
187
|
+
self->_window.windowLevel = UIWindowLevelNormal + 1;
|
|
119
188
|
#else
|
|
120
|
-
|
|
189
|
+
self->_window.windowLevel = UIWindowLevelStatusBar + 1;
|
|
121
190
|
#endif
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
self->_container.backgroundColor = backgroundColor;
|
|
126
|
-
self->_container.translatesAutoresizingMaskIntoConstraints = NO;
|
|
127
|
-
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hide)];
|
|
128
|
-
[self->_container addGestureRecognizer:tapGesture];
|
|
129
|
-
self->_container.userInteractionEnabled = YES;
|
|
130
|
-
|
|
131
|
-
self->_label = [[UILabel alloc] init];
|
|
132
|
-
self->_label.translatesAutoresizingMaskIntoConstraints = NO;
|
|
133
|
-
self->_label.font = [UIFont monospacedDigitSystemFontOfSize:12.0 weight:UIFontWeightRegular];
|
|
134
|
-
self->_label.textAlignment = NSTextAlignmentCenter;
|
|
135
|
-
self->_label.textColor = color;
|
|
136
|
-
self->_label.text = message;
|
|
137
|
-
|
|
138
|
-
[self->_window.rootViewController.view addSubview:self->_container];
|
|
139
|
-
[self->_container addSubview:self->_label];
|
|
191
|
+
self->_window.rootViewController = [UIViewController new];
|
|
192
|
+
[self->_window.rootViewController.view addSubview:self->_container];
|
|
193
|
+
}
|
|
140
194
|
|
|
141
195
|
CGFloat topSafeAreaHeight = mainWindow.safeAreaInsets.top;
|
|
142
|
-
CGFloat height = topSafeAreaHeight + 25;
|
|
143
|
-
self->_window.frame = CGRectMake(0, 0, mainWindow.frame.size.width, height);
|
|
144
|
-
|
|
145
196
|
self->_window.hidden = NO;
|
|
146
197
|
|
|
147
198
|
[self->_window layoutIfNeeded];
|
|
148
199
|
|
|
149
|
-
[
|
|
200
|
+
NSMutableArray *constraints = [NSMutableArray arrayWithArray:@[
|
|
150
201
|
// Container constraints
|
|
151
202
|
[self->_container.topAnchor constraintEqualToAnchor:self->_window.rootViewController.view.topAnchor],
|
|
152
203
|
[self->_container.leadingAnchor constraintEqualToAnchor:self->_window.rootViewController.view.leadingAnchor],
|
|
153
204
|
[self->_container.trailingAnchor constraintEqualToAnchor:self->_window.rootViewController.view.trailingAnchor],
|
|
154
|
-
[self->_container.heightAnchor constraintEqualToConstant:height],
|
|
155
205
|
|
|
156
206
|
// Label constraints
|
|
157
|
-
[self->_label.
|
|
158
|
-
[self->_label.
|
|
207
|
+
[self->_label.topAnchor constraintEqualToAnchor:self->_container.topAnchor constant:topSafeAreaHeight + 8],
|
|
208
|
+
[self->_label.leadingAnchor constraintEqualToAnchor:self->_container.leadingAnchor constant:10],
|
|
209
|
+
[self->_label.bottomAnchor constraintEqualToAnchor:self->_container.bottomAnchor constant:-8],
|
|
159
210
|
]];
|
|
211
|
+
|
|
212
|
+
// Add button-specific constraints if button exists
|
|
213
|
+
if (self->_dismissButton != nullptr) {
|
|
214
|
+
[constraints addObjectsFromArray:@[
|
|
215
|
+
[self->_dismissButton.trailingAnchor constraintEqualToAnchor:self->_container.trailingAnchor constant:-10],
|
|
216
|
+
[self->_dismissButton.centerYAnchor constraintEqualToAnchor:self->_label.centerYAnchor],
|
|
217
|
+
[self->_dismissButton.heightAnchor constraintEqualToConstant:22],
|
|
218
|
+
[self->_label.trailingAnchor constraintEqualToAnchor:self->_dismissButton.leadingAnchor constant:-10],
|
|
219
|
+
]];
|
|
220
|
+
} else {
|
|
221
|
+
[constraints addObject:[self->_label.trailingAnchor constraintEqualToAnchor:self->_container.trailingAnchor
|
|
222
|
+
constant:-10]];
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
[NSLayoutConstraint activateConstraints:constraints];
|
|
226
|
+
|
|
227
|
+
[self->_window layoutIfNeeded];
|
|
228
|
+
self->_window.frame = CGRectMake(0, 0, mainWindow.frame.size.width, self->_container.frame.size.height);
|
|
160
229
|
});
|
|
161
230
|
}
|
|
162
231
|
|
|
163
232
|
RCT_EXPORT_METHOD(
|
|
164
233
|
showMessage : (NSString *)message withColor : (NSNumber *__nonnull)color withBackgroundColor : (NSNumber *__nonnull)
|
|
165
|
-
backgroundColor)
|
|
234
|
+
backgroundColor withDismissButton : (NSNumber *)dismissButton)
|
|
166
235
|
{
|
|
167
|
-
[self showMessage:message
|
|
236
|
+
[self showMessage:message
|
|
237
|
+
color:[RCTConvert UIColor:color]
|
|
238
|
+
backgroundColor:[RCTConvert UIColor:backgroundColor]
|
|
239
|
+
dismissButton:[dismissButton boolValue]];
|
|
168
240
|
}
|
|
169
|
-
|
|
170
241
|
RCT_EXPORT_METHOD(hide)
|
|
171
242
|
{
|
|
172
243
|
if (!RCTDevLoadingViewGetEnabled()) {
|
|
@@ -192,6 +263,9 @@ RCT_EXPORT_METHOD(hide)
|
|
|
192
263
|
self->_window.frame = windowFrame;
|
|
193
264
|
self->_window.hidden = YES;
|
|
194
265
|
self->_window = nil;
|
|
266
|
+
self->_container = nil;
|
|
267
|
+
self->_label = nil;
|
|
268
|
+
self->_dismissButton = nil;
|
|
195
269
|
self->_hiding = false;
|
|
196
270
|
}];
|
|
197
271
|
});
|
|
@@ -215,7 +289,7 @@ RCT_EXPORT_METHOD(hide)
|
|
|
215
289
|
backgroundColor = [UIColor colorWithHue:0 saturation:0 brightness:0.98 alpha:1];
|
|
216
290
|
}
|
|
217
291
|
|
|
218
|
-
[self showMessage:message color:color backgroundColor:backgroundColor];
|
|
292
|
+
[self showMessage:message color:color backgroundColor:backgroundColor dismissButton:false];
|
|
219
293
|
}
|
|
220
294
|
|
|
221
295
|
- (void)showOfflineMessage
|
|
@@ -229,7 +303,7 @@ RCT_EXPORT_METHOD(hide)
|
|
|
229
303
|
}
|
|
230
304
|
|
|
231
305
|
NSString *message = [NSString stringWithFormat:@"Connect to %@ to develop JavaScript.", RCT_PACKAGER_NAME];
|
|
232
|
-
[self showMessage:message color:color backgroundColor:backgroundColor];
|
|
306
|
+
[self showMessage:message color:color backgroundColor:backgroundColor dismissButton:false];
|
|
233
307
|
}
|
|
234
308
|
|
|
235
309
|
- (BOOL)isDarkModeEnabled
|
|
@@ -288,10 +362,16 @@ RCT_EXPORT_METHOD(hide)
|
|
|
288
362
|
+ (void)setEnabled:(BOOL)enabled
|
|
289
363
|
{
|
|
290
364
|
}
|
|
291
|
-
- (void)showMessage:(NSString *)message
|
|
365
|
+
- (void)showMessage:(NSString *)message
|
|
366
|
+
color:(UIColor *)color
|
|
367
|
+
backgroundColor:(UIColor *)backgroundColor
|
|
368
|
+
dismissButton:(BOOL)dismissButton
|
|
292
369
|
{
|
|
293
370
|
}
|
|
294
|
-
- (void)showMessage:(NSString *)message
|
|
371
|
+
- (void)showMessage:(NSString *)message
|
|
372
|
+
withColor:(NSNumber *)color
|
|
373
|
+
withBackgroundColor:(NSNumber *)backgroundColor
|
|
374
|
+
withDismissButton:(NSNumber *)dismissButton
|
|
295
375
|
{
|
|
296
376
|
}
|
|
297
377
|
- (void)showWithURL:(NSURL *)URL
|
|
@@ -11,6 +11,14 @@
|
|
|
11
11
|
#import <React/RCTEventEmitter.h>
|
|
12
12
|
#import <React/RCTInitializing.h>
|
|
13
13
|
|
|
14
|
+
@class RCTPackagerClientResponder;
|
|
15
|
+
typedef uint32_t RCTHandlerToken;
|
|
16
|
+
typedef void (^RCTNotificationHandler)(NSDictionary<NSString *, id> *);
|
|
17
|
+
typedef void (^RCTRequestHandler)(NSDictionary<NSString *, id> *, RCTPackagerClientResponder *);
|
|
18
|
+
typedef void (^RCTConnectedHandler)(void);
|
|
19
|
+
|
|
20
|
+
@class RCTPackagerConnection;
|
|
21
|
+
|
|
14
22
|
@protocol RCTPackagerClientMethod;
|
|
15
23
|
|
|
16
24
|
/**
|
|
@@ -85,6 +93,10 @@
|
|
|
85
93
|
*/
|
|
86
94
|
@property (nonatomic, assign) BOOL isPerfMonitorShown;
|
|
87
95
|
|
|
96
|
+
#if RCT_DEV
|
|
97
|
+
@property (nonatomic, readonly) RCTPackagerConnection *packagerConnection;
|
|
98
|
+
#endif
|
|
99
|
+
|
|
88
100
|
/**
|
|
89
101
|
* Toggle the element inspector.
|
|
90
102
|
*/
|
|
@@ -102,7 +114,30 @@
|
|
|
102
114
|
|
|
103
115
|
#if RCT_DEV_MENU
|
|
104
116
|
- (void)addHandler:(id<RCTPackagerClientMethod>)handler
|
|
105
|
-
forPackagerMethod:(NSString *)name __deprecated_msg("Use
|
|
117
|
+
forPackagerMethod:(NSString *)name __deprecated_msg("Use addRequestHandler or addNotificationHandler instead");
|
|
118
|
+
#endif
|
|
119
|
+
|
|
120
|
+
#if RCT_DEV
|
|
121
|
+
/**
|
|
122
|
+
* Registers a handler for a notification broadcast from the packager. An
|
|
123
|
+
* example is "reload" - an instruction to reload from the packager.
|
|
124
|
+
* If multiple notification handlers are registered for the same method, they
|
|
125
|
+
* will all be invoked sequentially.
|
|
126
|
+
*/
|
|
127
|
+
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|
|
128
|
+
queue:(dispatch_queue_t)queue
|
|
129
|
+
forMethod:(NSString *)method;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Registers a handler for a request from the packager. An example is
|
|
133
|
+
* pokeSamplingProfiler; it asks for profile data from the client.
|
|
134
|
+
* Only one handler can be registered for a given method; calling this
|
|
135
|
+
* displaces any previous request handler registered for that method.
|
|
136
|
+
*/
|
|
137
|
+
- (RCTHandlerToken)addRequestHandler:(RCTRequestHandler)handler
|
|
138
|
+
queue:(dispatch_queue_t)queue
|
|
139
|
+
forMethod:(NSString *)method;
|
|
140
|
+
|
|
106
141
|
#endif
|
|
107
142
|
|
|
108
143
|
@end
|
|
@@ -32,9 +32,12 @@ static NSString *const kRCTDevSettingIsPerfMonitorShown = @"RCTPerfMonitorKey";
|
|
|
32
32
|
|
|
33
33
|
static NSString *const kRCTDevSettingsUserDefaultsKey = @"RCTDevMenu";
|
|
34
34
|
|
|
35
|
+
#if RCT_DEV
|
|
36
|
+
#import <React/RCTPackagerConnection.h>
|
|
37
|
+
#endif
|
|
38
|
+
|
|
35
39
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
36
40
|
#import <React/RCTPackagerClient.h>
|
|
37
|
-
#import <React/RCTPackagerConnection.h>
|
|
38
41
|
#endif
|
|
39
42
|
|
|
40
43
|
#if RCT_ENABLE_INSPECTOR
|
|
@@ -145,6 +148,9 @@ RCT_EXPORT_MODULE()
|
|
|
145
148
|
};
|
|
146
149
|
RCTDevSettingsUserDefaultsDataSource *dataSource =
|
|
147
150
|
[[RCTDevSettingsUserDefaultsDataSource alloc] initWithDefaultValues:defaultValues];
|
|
151
|
+
#if RCT_DEV
|
|
152
|
+
_packagerConnection = [RCTPackagerConnection new];
|
|
153
|
+
#endif
|
|
148
154
|
_isShakeGestureEnabled = true;
|
|
149
155
|
return [self initWithDataSource:dataSource];
|
|
150
156
|
}
|
|
@@ -178,18 +184,27 @@ RCT_EXPORT_MODULE()
|
|
|
178
184
|
|
|
179
185
|
- (void)initialize
|
|
180
186
|
{
|
|
187
|
+
#if RCT_DEV
|
|
188
|
+
[_packagerConnection startWithBundleManager:_bundleManager];
|
|
189
|
+
#endif
|
|
190
|
+
|
|
181
191
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
182
192
|
if (numInitializedModules++ == 0) {
|
|
183
|
-
reloadToken = [
|
|
193
|
+
reloadToken = [self
|
|
184
194
|
addNotificationHandler:^(id params) {
|
|
185
195
|
RCTTriggerReloadCommandListeners(@"Global hotkey");
|
|
186
196
|
}
|
|
187
197
|
queue:dispatch_get_main_queue()
|
|
188
198
|
forMethod:@"reload"];
|
|
189
199
|
#if RCT_DEV_MENU
|
|
190
|
-
|
|
200
|
+
__weak __typeof(self) weakSelf = self;
|
|
201
|
+
devMenuToken = [self
|
|
191
202
|
addNotificationHandler:^(id params) {
|
|
192
|
-
|
|
203
|
+
__typeof(self) strongSelf = weakSelf;
|
|
204
|
+
if (strongSelf == nullptr) {
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
[[strongSelf.moduleRegistry moduleForName:"DevMenu"] show];
|
|
193
208
|
}
|
|
194
209
|
queue:dispatch_get_main_queue()
|
|
195
210
|
forMethod:@"devMenu"];
|
|
@@ -240,9 +255,9 @@ RCT_EXPORT_MODULE()
|
|
|
240
255
|
[super invalidate];
|
|
241
256
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
242
257
|
if (--numInitializedModules == 0) {
|
|
243
|
-
[
|
|
258
|
+
[_packagerConnection removeHandler:reloadToken];
|
|
244
259
|
#if RCT_DEV_MENU
|
|
245
|
-
[
|
|
260
|
+
[_packagerConnection removeHandler:devMenuToken];
|
|
246
261
|
#endif
|
|
247
262
|
}
|
|
248
263
|
#endif
|
|
@@ -422,10 +437,27 @@ RCT_EXPORT_METHOD(addMenuItem : (NSString *)title)
|
|
|
422
437
|
}
|
|
423
438
|
}
|
|
424
439
|
|
|
440
|
+
#if RCT_DEV
|
|
441
|
+
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|
|
442
|
+
queue:(dispatch_queue_t)queue
|
|
443
|
+
forMethod:(NSString *)method
|
|
444
|
+
{
|
|
445
|
+
return [_packagerConnection addNotificationHandler:handler queue:queue forMethod:method];
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
- (RCTHandlerToken)addRequestHandler:(RCTRequestHandler)handler
|
|
449
|
+
queue:(dispatch_queue_t)queue
|
|
450
|
+
forMethod:(NSString *)method
|
|
451
|
+
{
|
|
452
|
+
return [_packagerConnection addRequestHandler:handler queue:queue forMethod:method];
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
#endif
|
|
456
|
+
|
|
425
457
|
- (void)addHandler:(id<RCTPackagerClientMethod>)handler forPackagerMethod:(NSString *)name
|
|
426
458
|
{
|
|
427
459
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
428
|
-
[
|
|
460
|
+
[_packagerConnection addHandler:handler forMethod:name];
|
|
429
461
|
#endif
|
|
430
462
|
}
|
|
431
463
|
|
|
@@ -512,7 +544,7 @@ RCT_EXPORT_METHOD(openDebugger)
|
|
|
512
544
|
|
|
513
545
|
@end
|
|
514
546
|
|
|
515
|
-
#else // #if RCT_DEV_MENU
|
|
547
|
+
#else // #if RCT_DEV_MENU || RCT_REMOTE_PROFILE
|
|
516
548
|
|
|
517
549
|
@interface RCTDevSettings () <NativeDevSettingsSpec>
|
|
518
550
|
@end
|
|
@@ -578,6 +610,10 @@ RCT_EXPORT_METHOD(openDebugger)
|
|
|
578
610
|
return std::make_shared<facebook::react::NativeDevSettingsSpecJSI>(params);
|
|
579
611
|
}
|
|
580
612
|
|
|
613
|
+
- (void)addHandler:(id<RCTPackagerClientMethod>)handler forPackagerMethod:(NSString *)name
|
|
614
|
+
{
|
|
615
|
+
}
|
|
616
|
+
|
|
581
617
|
@end
|
|
582
618
|
|
|
583
619
|
#endif // #if RCT_DEV_MENU
|
|
@@ -77,8 +77,11 @@ RCT_EXPORT_MODULE()
|
|
|
77
77
|
RCTTriggerReloadCommandListeners(@"JS Crash Reload");
|
|
78
78
|
} else if (!RCT_DEV) {
|
|
79
79
|
NSString *description = [@"Unhandled JS Exception: " stringByAppendingString:message];
|
|
80
|
-
NSDictionary *errorInfo =
|
|
81
|
-
|
|
80
|
+
NSDictionary *errorInfo = @{
|
|
81
|
+
NSLocalizedDescriptionKey : description,
|
|
82
|
+
RCTJSStackTraceKey : stack == nil ? (id)kCFNull : stack,
|
|
83
|
+
RCTJSExtraDataKey : extraDataAsJSON == nil ? (id)kCFNull : extraDataAsJSON
|
|
84
|
+
};
|
|
82
85
|
RCTFatal([NSError errorWithDomain:RCTErrorDomain code:0 userInfo:errorInfo]);
|
|
83
86
|
}
|
|
84
87
|
}
|
|
@@ -31,10 +31,11 @@ static NSString *interfaceIdiom(UIUserInterfaceIdiom idiom)
|
|
|
31
31
|
return @"tv";
|
|
32
32
|
case UIUserInterfaceIdiomCarPlay:
|
|
33
33
|
return @"carplay";
|
|
34
|
-
#if TARGET_OS_VISION
|
|
35
34
|
case UIUserInterfaceIdiomVision:
|
|
36
35
|
return @"vision";
|
|
37
|
-
|
|
36
|
+
case UIUserInterfaceIdiomMac:
|
|
37
|
+
return @"mac";
|
|
38
|
+
case UIUserInterfaceIdiomUnspecified:
|
|
38
39
|
default:
|
|
39
40
|
return @"unknown";
|
|
40
41
|
}
|
|
@@ -218,7 +218,7 @@ RCT_EXPORT_METHOD(setNetworkActivityIndicatorVisible : (BOOL)visible)
|
|
|
218
218
|
|
|
219
219
|
- (facebook::react::ModuleConstants<JS::NativeStatusBarManagerIOS::Constants>)constantsToExport
|
|
220
220
|
{
|
|
221
|
-
return
|
|
221
|
+
return [self getConstants];
|
|
222
222
|
}
|
|
223
223
|
|
|
224
224
|
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
#import <React/RCTConstants.h>
|
|
20
20
|
#import <React/RCTConvert.h>
|
|
21
21
|
#import <React/RCTCxxBridgeDelegate.h>
|
|
22
|
-
#import <React/RCTCxxModule.h>
|
|
23
22
|
#import <React/RCTCxxUtils.h>
|
|
24
23
|
#import <React/RCTDevSettings.h>
|
|
25
24
|
#import <React/RCTDisplayLink.h>
|
|
@@ -992,7 +991,7 @@ struct RCTInstanceCallback : public InstanceCallback {
|
|
|
992
991
|
// modules on the main thread in parallel with loading the JS code, so
|
|
993
992
|
// they will already be available before they are ever required.
|
|
994
993
|
dispatch_block_t block = ^{
|
|
995
|
-
if (self.valid
|
|
994
|
+
if (self.valid) {
|
|
996
995
|
[self->_performanceLogger appendStartForTag:RCTPLNativeModuleMainThread];
|
|
997
996
|
(void)[moduleData instance];
|
|
998
997
|
[moduleData gatherConstants];
|
|
@@ -129,7 +129,7 @@ using namespace facebook::react;
|
|
|
129
129
|
// TODO: we should convert this to JSValue directly
|
|
130
130
|
return convertFollyDynamicToId(result);
|
|
131
131
|
}
|
|
132
|
-
} catch (const facebook::xplat::JsArgumentException &ex) {
|
|
132
|
+
} catch ([[maybe_unused]] const facebook::xplat::JsArgumentException &ex) {
|
|
133
133
|
RCTLogError(
|
|
134
134
|
@"Method %@.%s argument error: %s",
|
|
135
135
|
RCTBridgeModuleNameForClass([module class]),
|
|
@@ -13,7 +13,6 @@
|
|
|
13
13
|
#import <jsi/jsi.h>
|
|
14
14
|
|
|
15
15
|
#import "DispatchMessageQueueThread.h"
|
|
16
|
-
#import "RCTCxxModule.h"
|
|
17
16
|
#import "RCTNativeModule.h"
|
|
18
17
|
|
|
19
18
|
namespace facebook::react {
|
|
@@ -27,16 +26,7 @@ createNativeModules(NSArray<RCTModuleData *> *modules, RCTBridge *bridge, const
|
|
|
27
26
|
{
|
|
28
27
|
std::vector<std::unique_ptr<NativeModule>> nativeModules;
|
|
29
28
|
for (RCTModuleData *moduleData in modules) {
|
|
30
|
-
|
|
31
|
-
nativeModules.emplace_back(
|
|
32
|
-
std::make_unique<CxxNativeModule>(
|
|
33
|
-
instance,
|
|
34
|
-
[moduleData.name UTF8String],
|
|
35
|
-
[moduleData] { return [(RCTCxxModule *)(moduleData.instance) createModule]; },
|
|
36
|
-
std::make_shared<DispatchMessageQueueThread>(moduleData)));
|
|
37
|
-
} else {
|
|
38
|
-
nativeModules.emplace_back(std::make_unique<RCTNativeModule>(bridge, moduleData));
|
|
39
|
-
}
|
|
29
|
+
nativeModules.emplace_back(std::make_unique<RCTNativeModule>(bridge, moduleData));
|
|
40
30
|
}
|
|
41
31
|
return nativeModules;
|
|
42
32
|
}
|
|
@@ -78,7 +68,7 @@ NSError *tryAndReturnError(const std::function<void()> &func)
|
|
|
78
68
|
return nil;
|
|
79
69
|
} @catch (NSException *exception) {
|
|
80
70
|
return RCTErrorWithNSException(exception);
|
|
81
|
-
} @catch (id
|
|
71
|
+
} @catch (id) {
|
|
82
72
|
// This will catch any other ObjC exception, but no C++ exceptions
|
|
83
73
|
return RCTErrorWithMessage(@"non-std ObjC Exception");
|
|
84
74
|
}
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
|
|
12
12
|
@protocol RCTDevLoadingViewProtocol <NSObject>
|
|
13
13
|
+ (void)setEnabled:(BOOL)enabled;
|
|
14
|
-
- (void)showMessage:(NSString *)message
|
|
14
|
+
- (void)showMessage:(NSString *)message
|
|
15
|
+
color:(UIColor *)color
|
|
16
|
+
backgroundColor:(UIColor *)backgroundColor
|
|
17
|
+
dismissButton:(BOOL)dismissButton;
|
|
15
18
|
- (void)showWithURL:(NSURL *)URL;
|
|
16
19
|
- (void)updateProgress:(RCTLoadingProgress *)progress;
|
|
17
20
|
- (void)hide;
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
9
9
|
|
|
10
|
+
#import <React/RCTBundleManager.h>
|
|
10
11
|
#import <React/RCTDefines.h>
|
|
11
12
|
|
|
12
13
|
#if RCT_DEV
|
|
@@ -24,8 +25,6 @@ typedef void (^RCTConnectedHandler)(void);
|
|
|
24
25
|
/** Encapsulates singleton connection to React Native packager. */
|
|
25
26
|
@interface RCTPackagerConnection : NSObject
|
|
26
27
|
|
|
27
|
-
+ (instancetype)sharedPackagerConnection;
|
|
28
|
-
|
|
29
28
|
/**
|
|
30
29
|
* Registers a handler for a notification broadcast from the packager. An
|
|
31
30
|
* example is "reload" - an instruction to reload from the packager.
|
|
@@ -62,6 +61,9 @@ typedef void (^RCTConnectedHandler)(void);
|
|
|
62
61
|
/** Reconnect with given packager server, if packagerServerHostPort has changed. */
|
|
63
62
|
- (void)reconnect:(NSString *)packagerServerHostPort;
|
|
64
63
|
|
|
64
|
+
/** starts packager connection with configuration from the bundle manager */
|
|
65
|
+
- (void)startWithBundleManager:(RCTBundleManager *)bundleManager;
|
|
66
|
+
|
|
65
67
|
/**
|
|
66
68
|
* Historically no distinction was made between notification and request
|
|
67
69
|
* handlers. If you use this method, it will be registered as *both* a
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
#import <React/RCTAssert.h>
|
|
15
15
|
#import <React/RCTBridge.h>
|
|
16
|
+
#import <React/RCTBundleManager.h>
|
|
16
17
|
#import <React/RCTBundleURLProvider.h>
|
|
17
18
|
#import <React/RCTConstants.h>
|
|
18
19
|
#import <React/RCTConvert.h>
|
|
@@ -50,43 +51,13 @@ struct Registration {
|
|
|
50
51
|
std::vector<Registration<RCTNotificationHandler>> _notificationRegistrations;
|
|
51
52
|
std::vector<Registration<RCTRequestHandler>> _requestRegistrations;
|
|
52
53
|
std::vector<Registration<RCTConnectedHandler>> _connectedRegistrations;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
+ (instancetype)sharedPackagerConnection
|
|
56
|
-
{
|
|
57
|
-
static RCTPackagerConnection *connection;
|
|
58
|
-
static dispatch_once_t onceToken;
|
|
59
|
-
dispatch_once(&onceToken, ^{
|
|
60
|
-
connection = [RCTPackagerConnection new];
|
|
61
|
-
});
|
|
62
|
-
return connection;
|
|
54
|
+
RCTBundleManager *_bundleManager;
|
|
63
55
|
}
|
|
64
56
|
|
|
65
57
|
- (instancetype)init
|
|
66
58
|
{
|
|
67
59
|
if (self = [super init]) {
|
|
68
60
|
_nextToken = 1; // Prevent randomly erasing a handler if you pass a bogus 0 token
|
|
69
|
-
_serverHostPortForSocket = [[RCTBundleURLProvider sharedSettings] packagerServerHostPort];
|
|
70
|
-
_serverSchemeForSocket = [[RCTBundleURLProvider sharedSettings] packagerScheme];
|
|
71
|
-
_socket = socketForLocation(_serverHostPortForSocket, _serverSchemeForSocket);
|
|
72
|
-
_socket.delegate = self;
|
|
73
|
-
[_socket start];
|
|
74
|
-
|
|
75
|
-
RCTPackagerConnection *const __weak weakSelf = self;
|
|
76
|
-
_bundleURLChangeObserver =
|
|
77
|
-
[[NSNotificationCenter defaultCenter] addObserverForName:RCTBundleURLProviderUpdatedNotification
|
|
78
|
-
object:nil
|
|
79
|
-
queue:[NSOperationQueue mainQueue]
|
|
80
|
-
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
81
|
-
[weakSelf bundleURLSettingsChanged];
|
|
82
|
-
}];
|
|
83
|
-
_reloadWithPotentiallyNewURLObserver =
|
|
84
|
-
[[NSNotificationCenter defaultCenter] addObserverForName:RCTTriggerReloadCommandNotification
|
|
85
|
-
object:nil
|
|
86
|
-
queue:[NSOperationQueue mainQueue]
|
|
87
|
-
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
88
|
-
[weakSelf bundleURLSettingsChanged];
|
|
89
|
-
}];
|
|
90
61
|
}
|
|
91
62
|
return self;
|
|
92
63
|
}
|
|
@@ -119,6 +90,32 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
119
90
|
return [[RCTReconnectingWebSocket alloc] initWithURL:components.URL queue:queue];
|
|
120
91
|
}
|
|
121
92
|
|
|
93
|
+
- (void)startWithBundleManager:(RCTBundleManager *)bundleManager
|
|
94
|
+
{
|
|
95
|
+
_serverHostPortForSocket = [bundleManager.bundleConfig getPackagerServerHost];
|
|
96
|
+
_serverSchemeForSocket = [bundleManager.bundleConfig getPackagerServerScheme];
|
|
97
|
+
_socket = socketForLocation(_serverHostPortForSocket, _serverSchemeForSocket);
|
|
98
|
+
_socket.delegate = self;
|
|
99
|
+
[_socket start];
|
|
100
|
+
_bundleManager = bundleManager;
|
|
101
|
+
|
|
102
|
+
RCTPackagerConnection *const __weak weakSelf = self;
|
|
103
|
+
_bundleURLChangeObserver =
|
|
104
|
+
[[NSNotificationCenter defaultCenter] addObserverForName:RCTBundleURLProviderUpdatedNotification
|
|
105
|
+
object:nil
|
|
106
|
+
queue:[NSOperationQueue mainQueue]
|
|
107
|
+
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
108
|
+
[weakSelf bundleURLSettingsChanged];
|
|
109
|
+
}];
|
|
110
|
+
_reloadWithPotentiallyNewURLObserver =
|
|
111
|
+
[[NSNotificationCenter defaultCenter] addObserverForName:RCTTriggerReloadCommandNotification
|
|
112
|
+
object:nil
|
|
113
|
+
queue:[NSOperationQueue mainQueue]
|
|
114
|
+
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
115
|
+
[weakSelf bundleURLSettingsChanged];
|
|
116
|
+
}];
|
|
117
|
+
}
|
|
118
|
+
|
|
122
119
|
- (void)stop
|
|
123
120
|
{
|
|
124
121
|
std::lock_guard<std::mutex> l(_mutex);
|
|
@@ -144,7 +141,7 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
144
141
|
return; // already stopped
|
|
145
142
|
}
|
|
146
143
|
|
|
147
|
-
NSString *const serverScheme = [
|
|
144
|
+
NSString *const serverScheme = [_bundleManager.bundleConfig getPackagerServerScheme];
|
|
148
145
|
if ([packagerServerHostPort isEqual:_serverHostPortForSocket] && [serverScheme isEqual:_serverSchemeForSocket]) {
|
|
149
146
|
return; // unchanged
|
|
150
147
|
}
|
|
@@ -161,7 +158,7 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
161
158
|
- (void)bundleURLSettingsChanged
|
|
162
159
|
{
|
|
163
160
|
// Will only reconnect if `packagerServerHostPort` has actually changed
|
|
164
|
-
[self reconnect:[
|
|
161
|
+
[self reconnect:[_bundleManager.bundleConfig getPackagerServerHost]];
|
|
165
162
|
}
|
|
166
163
|
|
|
167
164
|
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|