react-native-windows 0.84.0 → 0.85.0-preview.1
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/.flowconfig +1 -5
- package/Directory.Build.props +1 -16
- package/Directory.Build.targets +12 -4
- package/Folly/ThreadNameStub.cpp +4 -6
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +3 -3
- package/Libraries/Animated/Animated.d.ts +8 -1
- package/Libraries/Animated/AnimatedEvent.js +4 -4
- package/Libraries/Animated/AnimatedImplementation.js +2 -2
- package/Libraries/Animated/animations/Animation.js +3 -3
- package/Libraries/Animated/animations/DecayAnimation.js +4 -4
- package/Libraries/Animated/animations/SpringAnimation.js +5 -5
- package/Libraries/Animated/animations/TimingAnimation.js +5 -5
- package/Libraries/Animated/createAnimatedComponent.js +7 -7
- package/Libraries/Animated/nodes/AnimatedColor.js +2 -2
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +12 -12
- package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +3 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +6 -6
- package/Libraries/Animated/nodes/AnimatedStyle.js +7 -7
- package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
- package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
- package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
- package/Libraries/Animated/useAnimatedColor.d.ts +15 -0
- package/Libraries/Animated/useAnimatedColor.js +25 -0
- package/Libraries/Animated/useAnimatedValueXY.d.ts +15 -0
- package/Libraries/Animated/useAnimatedValueXY.js +26 -0
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/MessageQueue.js +3 -3
- package/Libraries/BatchedBridge/NativeModules.js +12 -10
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -26
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +34 -30
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +2 -2
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/Button.windows.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +2 -2
- package/Libraries/Components/Keyboard/Keyboard.js +6 -6
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.d.ts +5 -0
- package/Libraries/Components/Pressable/Pressable.js +3 -3
- package/Libraries/Components/Pressable/Pressable.windows.js +3 -3
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +4 -4
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +3 -3
- package/Libraries/Components/RefreshControl/RefreshControl.js +5 -5
- package/Libraries/Components/RefreshControl/RefreshControl.windows.js +5 -5
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +8 -12
- package/Libraries/Components/ScrollView/ScrollView.d.ts +9 -0
- package/Libraries/Components/ScrollView/ScrollView.js +19 -9
- package/Libraries/Components/ScrollView/ScrollView.windows.js +19 -9
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +8 -18
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +8 -18
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +4 -3
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/StatusBar.js +8 -8
- package/Libraries/Components/Switch/Switch.js +3 -3
- package/Libraries/Components/Switch/Switch.windows.js +3 -3
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -48
- package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -11
- package/Libraries/Components/TextInput/TextInput.flow.js +21 -20
- package/Libraries/Components/TextInput/TextInput.flow.windows.js +23 -22
- package/Libraries/Components/TextInput/TextInput.js +8 -4
- package/Libraries/Components/TextInput/TextInput.windows.js +3 -4
- package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +33 -48
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +2 -2
- package/Libraries/Components/Touchable/Touchable.windows.js +2 -2
- package/Libraries/Components/Touchable/TouchableBounce.js +4 -4
- package/Libraries/Components/Touchable/TouchableBounce.windows.js +4 -4
- package/Libraries/Components/Touchable/TouchableHighlight.js +8 -8
- package/Libraries/Components/Touchable/TouchableHighlight.windows.js +9 -9
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +7 -7
- package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +7 -7
- package/Libraries/Components/Touchable/TouchableOpacity.js +4 -4
- package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -4
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +68 -31
- package/Libraries/Components/View/View.windows.js +1 -1
- package/Libraries/Components/View/ViewAccessibility.js +7 -7
- package/Libraries/Components/View/ViewAccessibility.windows.js +7 -7
- package/Libraries/Components/View/ViewPropTypes.js +14 -14
- package/Libraries/Components/View/ViewPropTypes.windows.js +18 -16
- package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
- package/Libraries/Core/ExceptionsManager.js +2 -2
- package/Libraries/Core/ExtendedError.js +3 -3
- package/Libraries/Core/RawEventEmitter.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +3 -2
- package/Libraries/Core/setUpDeveloperTools.js +1 -1
- package/Libraries/Core/setUpErrorHandling.js +4 -2
- package/Libraries/Core/setUpReactDevTools.js +23 -6
- package/Libraries/Core/setUpSegmentFetcher.js +1 -1
- package/Libraries/Debugging/DebuggingOverlay.js +2 -2
- package/Libraries/EventEmitter/NativeEventEmitter.js +7 -9
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +1 -1
- package/Libraries/Image/AssetSourceResolver.js +1 -1
- package/Libraries/Image/AssetSourceResolver.windows.js +1 -1
- package/Libraries/Image/Image.android.js +172 -306
- package/Libraries/Image/ImageProps.js +9 -11
- package/Libraries/Image/ImageSource.js +2 -2
- package/Libraries/Image/ImageSourceUtils.js +8 -4
- package/Libraries/Image/ImageTypes.flow.js +2 -2
- package/Libraries/Image/ImageViewNativeComponent.js +7 -16
- package/Libraries/Image/nativeImageSource.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +5 -4
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +3 -3
- package/Libraries/Lists/SectionList.js +1 -1
- package/Libraries/Lists/SectionListModern.js +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +38 -24
- package/Libraries/LogBox/Data/LogBoxLog.js +43 -112
- package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -117
- package/Libraries/LogBox/LogBox.js +42 -19
- package/Libraries/LogBox/LogBoxInspectorContainer.js +2 -2
- package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
- package/Libraries/LogBox/UI/LogBoxButton.js +14 -16
- package/Libraries/LogBox/UI/LogBoxInspector.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -9
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +6 -9
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +10 -15
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +25 -18
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +15 -16
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +8 -10
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -6
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.windows.js +3 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +17 -29
- package/Libraries/LogBox/UI/LogBoxMessage.js +28 -37
- package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
- package/Libraries/Modal/Modal.d.ts +4 -0
- package/Libraries/Modal/Modal.js +3 -3
- package/Libraries/Modal/Modal.windows.js +7 -3
- package/Libraries/NativeComponent/BaseViewConfig.android.js +28 -52
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -21
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +26 -17
- 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.windows.js +1 -1
- package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +1 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
- package/Libraries/Pressability/Pressability.js +5 -5
- package/Libraries/Pressability/Pressability.windows.js +5 -5
- package/Libraries/Pressability/PressabilityDebug.js +1 -1
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
- package/Libraries/Pressability/usePressability.js +3 -14
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +18 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +2 -2
- package/Libraries/ReactNative/FabricUIManager.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +4 -4
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -2
- package/Libraries/Renderer/shims/ReactFabric.js +1 -3
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
- package/Libraries/Renderer/shims/ReactNative.js +3 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
- package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +1 -3
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
- package/Libraries/StyleSheet/PointPropType.js +1 -1
- package/Libraries/StyleSheet/Rect.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
- package/Libraries/StyleSheet/StyleSheetExports.js +16 -25
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +2 -7
- package/Libraries/StyleSheet/StyleSheetTypes.js +33 -35
- package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
- package/Libraries/StyleSheet/private/_TransformStyle.js +7 -7
- package/Libraries/StyleSheet/processBackgroundImage.js +7 -7
- package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
- package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
- package/Libraries/StyleSheet/processBackgroundSize.js +4 -4
- package/Libraries/StyleSheet/processBoxShadow.js +44 -4
- package/Libraries/StyleSheet/processColorArray.js +2 -2
- package/Libraries/StyleSheet/processFilter.js +2 -2
- package/Libraries/Text/Text.js +295 -627
- package/Libraries/Text/Text.windows.js +342 -717
- package/Libraries/Text/TextNativeComponent.js +14 -7
- package/Libraries/Text/TextProps.js +4 -4
- package/Libraries/Text/TextProps.windows.js +4 -4
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CoreEventTypes.js +21 -21
- package/Libraries/Types/CoreEventTypes.windows.js +21 -21
- package/Libraries/Types/ReactDevToolsTypes.js +2 -2
- package/Libraries/Utilities/Appearance.js +6 -1
- package/Libraries/Utilities/Dimensions.js +1 -1
- package/Libraries/Utilities/HMRClient.js +32 -5
- package/Libraries/Utilities/IPerformanceLogger.js +4 -4
- package/Libraries/Utilities/codegenNativeCommands.js +4 -4
- package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
- package/Libraries/Utilities/codegenNativeComponent.js +2 -2
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +3 -3
- package/Libraries/Utilities/useMergeRefs.js +2 -2
- package/Libraries/vendor/core/ErrorUtils.js +4 -4
- package/Libraries/vendor/emitter/EventEmitter.js +16 -20
- package/Microsoft.ReactNative/CallInvoker.cpp +14 -4
- package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/AbiPortalShadowNode.cpp +2 -2
- package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.cpp +73 -97
- package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.h +4 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +4 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +135 -18
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +10 -0
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +7 -2
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +2 -0
- package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +63 -15
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +3 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +11 -0
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +1 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +3 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -3
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +2 -7
- package/Microsoft.ReactNative/IReactPackageBuilder.idl +6 -0
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -61
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +1 -26
- package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -1
- package/Microsoft.ReactNative/Modules/AppStateModule.cpp +2 -17
- package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -4
- package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +0 -2
- package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +16 -15
- package/Microsoft.ReactNative/Modules/AppearanceModule.h +5 -1
- package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +2 -7
- package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +0 -1
- package/Microsoft.ReactNative/Modules/I18nManagerModule.h +4 -4
- package/Microsoft.ReactNative/QuirkSettings.cpp +0 -133
- package/Microsoft.ReactNative/QuirkSettings.h +0 -43
- package/Microsoft.ReactNative/QuirkSettings.idl +0 -41
- package/Microsoft.ReactNative/ReactHost/CrashManager.cpp +0 -4
- package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -2
- package/Microsoft.ReactNative/ReactHost/React.h +0 -5
- package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -1
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +3 -26
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +0 -5
- package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -2
- package/Microsoft.ReactNative/ReactNativeAppBuilder.idl +3 -0
- package/Microsoft.ReactNative/ReactPackageBuilder.cpp +7 -0
- package/Microsoft.ReactNative/ReactPackageBuilder.h +1 -0
- package/Microsoft.ReactNative/RedBox.cpp +0 -9
- package/Microsoft.ReactNative/RedBoxHandler.cpp +0 -4
- package/Microsoft.ReactNative/TurboModulesProvider.cpp +5 -10
- package/Microsoft.ReactNative/TurboModulesProvider.h +2 -0
- package/Microsoft.ReactNative/Utils/ValueUtils.cpp +1 -1
- package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -7
- package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +0 -22
- package/Microsoft.ReactNative.Cxx/ModuleRegistration.cpp +8 -2
- package/Microsoft.ReactNative.Cxx/ModuleRegistration.h +36 -20
- package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -3
- package/Microsoft.ReactNative.Cxx/NativeModules.h +8 -2
- package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -9
- package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -9
- package/PropertySheets/Autolink.props +1 -1
- package/PropertySheets/Bundle.props +1 -1
- package/PropertySheets/Codegen.props +1 -1
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/PropertySheets/NuGet.LockFile.props +8 -0
- package/PropertySheets/React.Cpp.props +4 -4
- package/PropertySheets/ReactNativeArchitecture.props +6 -24
- package/ReactCommon/ReactCommon.vcxproj +5 -6
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +1 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +15 -4
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +13 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/defaults/DefaultTurboModules.cpp +69 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/animationbackend/AnimatedPropSerializer.cpp +717 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +10 -10
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +2 -21
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +151 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +50 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBuffer.cpp +178 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManager.cpp +69 -39
- package/Scripts/OfficeReact.Win32.nuspec +0 -1
- package/Scripts/Tfs/Layout-Desktop-Headers.ps1 +4 -39
- package/Scripts/creaternwapp.cmd +1 -9
- package/Scripts/creaternwlib.cmd +4 -24
- package/Shared/DevSettings.h +0 -3
- package/Shared/Networking/WinRTWebSocketResource.cpp +23 -408
- package/Shared/Networking/WinRTWebSocketResource.h +3 -119
- package/Shared/Shared.vcxitems +63 -38
- package/Shared/Shared.vcxitems.filters +54 -0
- package/Shared/Utils.cpp +0 -88
- package/Shared/Utils.h +0 -14
- package/Shared/WebSocketResourceFactory.cpp +28 -0
- package/Shared/tracing/fbsystrace.h +1 -0
- package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +172 -160
- package/codegen/react/components/rnwcore/ModalHostView.g.h +8 -0
- package/codegen/react/components/rnwcore/Props.cpp +17 -7
- package/codegen/react/components/rnwcore/Props.h +3 -1
- package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +4 -4
- package/codegen/rnwcoreJSI.h +93 -77
- package/index.js +9 -0
- package/index.windows.js +9 -0
- package/jest/RefreshControlMock.js +2 -2
- package/jest/assetFileTransformer.js +8 -3
- package/jest/mockComponent.js +3 -4
- package/jest/mockNativeComponent.js +1 -1
- package/jest/mocks/ActivityIndicator.js +2 -2
- package/jest/mocks/Image.js +2 -2
- package/jest/mocks/Modal.js +2 -2
- package/jest/mocks/RefreshControl.js +3 -3
- package/jest/mocks/RendererProxy.js +2 -2
- package/jest/mocks/ScrollView.js +5 -5
- package/jest/mocks/Text.js +2 -2
- package/jest/mocks/TextInput.js +2 -2
- package/jest/mocks/View.js +2 -2
- package/jest/mocks/ViewNativeComponent.js +1 -1
- package/jest/mocks/requireNativeComponent.js +1 -1
- package/jest/mocks/useColorScheme.js +1 -1
- package/jest/setup.js +68 -31
- package/package.json +27 -22
- package/src/private/animated/NativeAnimatedHelper.js +2 -2
- package/src/private/animated/createAnimatedPropsMemoHook.js +19 -19
- package/src/private/components/virtualview/VirtualView.js +14 -21
- package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
- package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +39 -17
- package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
- package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
- package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
- package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
- package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +71 -79
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -2
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -12
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +7 -3
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/styles/composeStyles.js +1 -1
- package/src/private/utilities/toError.js +27 -0
- package/src/private/utilities/toExtendedError.js +30 -0
- package/src/private/webapis/dom/events/Event.js +1 -1
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
- package/src/private/webapis/dom/events/EventTarget.js +3 -3
- package/src/private/webapis/dom/events/internals/EventInternals.js +2 -2
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +2 -2
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +14 -14
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/geometry/DOMRectList.js +2 -2
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +8 -8
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +6 -6
- package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
- package/src/private/webapis/mutationobserver/MutationRecord.js +2 -2
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +3 -3
- package/src/private/webapis/performance/LongTasks.js +3 -3
- package/src/private/webapis/performance/Performance.js +4 -4
- package/src/private/webapis/performance/PerformanceEntry.js +1 -1
- package/src/private/webapis/performance/PerformanceObserver.js +2 -2
- package/src/private/webapis/performance/specs/NativePerformance.js +8 -8
- package/src/private/webapis/structuredClone/structuredClone.js +2 -2
- package/src/types/globals.d.ts +4 -4
- package/template/cpp-lib/proj/MyLib.sln +0 -33
- package/template/cpp-lib/proj/MyLib.vcxproj +1 -1
- package/template/cs-lib/proj/MyLib.sln +0 -33
- package/template/metro.config.js +12 -2
- package/templates/cpp-app/metro.config.js +12 -2
- package/templates/cpp-app/windows/MyApp/MyApp.cpp +9 -6
- package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +1 -1
- package/templates/cpp-app/windows/MyApp.sln +0 -33
- package/templates/cpp-lib/example/metro.config.js +12 -2
- package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +1 -1
- package/templates/cpp-lib/windows/MyLib.sln +0 -33
- package/types/index.d.ts +2 -0
- package/Folly/.clang-format +0 -2
- package/Folly/Folly.natvis +0 -25
- package/Folly/Folly.vcxproj +0 -378
- package/Folly/Folly.vcxproj.filters +0 -558
- package/Folly/TEMP_UntilFollyUpdate/ConstexprMath.h +0 -978
- package/Folly/TEMP_UntilFollyUpdate/Conv.cpp +0 -1205
- package/Folly/TEMP_UntilFollyUpdate/chrono/Hardware.h +0 -155
- package/Folly/TEMP_UntilFollyUpdate/concurrency/CacheLocality.cpp +0 -633
- package/Folly/TEMP_UntilFollyUpdate/json/dynamic-inl.h +0 -1438
- package/Folly/TEMP_UntilFollyUpdate/json/json.cpp +0 -1118
- package/Folly/TEMP_UntilFollyUpdate/lang/SafeAssert.h +0 -188
- package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.cpp +0 -348
- package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +0 -182
- package/Folly/TEMP_UntilFollyUpdate/portability/Unistd.cpp +0 -33
- package/Folly/cgmanifest.json +0 -25
- package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -60
- package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +0 -64
- package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -75
- package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService_emptyimpl.cpp +0 -27
- package/Microsoft.ReactNative/Fabric/Composition/Theme_emptyimpl.cpp +0 -81
- package/Microsoft.ReactNative/Modules/CreateModules.cpp +0 -24
- package/Microsoft.ReactNative/ReactSupport.cpp +0 -221
- package/Microsoft.ReactNative/ReactSupport.h +0 -13
- package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.cpp +0 -107
- package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -62
- package/Microsoft.ReactNative/Utils/UwpScriptStore.cpp +0 -56
- package/Microsoft.ReactNative/Utils/UwpScriptStore.h +0 -23
- package/Microsoft.ReactNative/XamlUIService.cpp +0 -68
- package/Microsoft.ReactNative/XamlUIService.h +0 -37
- package/Microsoft.ReactNative/XamlUIService.idl +0 -53
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +0 -259
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/Instance.cpp +0 -381
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSIndexedRAMBundle.cpp +0 -145
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/MethodCall.cpp +0 -100
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ModuleRegistry.cpp +0 -256
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +0 -363
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/RAMBundleRegistry.cpp +0 -93
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ReactMarker.cpp +0 -148
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +0 -190
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsiexecutor/jsireact/JSINativeModules.cpp +0 -123
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +0 -27
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/webperformance/NativePerformance.cpp +0 -414
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +0 -91
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventDispatcher.cpp +0 -80
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventQueueProcessor.cpp +0 -138
- package/fmt/.clang-format +0 -2
- package/fmt/cgmanifest.json +0 -15
- package/fmt/fmt.vcxproj +0 -153
- package/fmt/fmt.vcxproj.filters +0 -59
- package/fmt/pch.cpp +0 -4
- package/fmt/pch.h +0 -2
|
@@ -13,11 +13,12 @@ import type {ProcessedColorValue} from '../StyleSheet/processColor';
|
|
|
13
13
|
import type {GestureResponderEvent} from '../Types/CoreEventTypes';
|
|
14
14
|
import type {TextProps} from './TextProps';
|
|
15
15
|
|
|
16
|
+
import {enablePreparedTextLayout} from '../../src/private/featureflags/ReactNativeFeatureFlags';
|
|
16
17
|
import {createViewConfig} from '../NativeComponent/ViewConfig';
|
|
17
18
|
import UIManager from '../ReactNative/UIManager';
|
|
18
19
|
import createReactNativeComponentClass from '../Renderer/shims/createReactNativeComponentClass';
|
|
19
20
|
|
|
20
|
-
export type NativeTextProps =
|
|
21
|
+
export type NativeTextProps = Readonly<{
|
|
21
22
|
...TextProps,
|
|
22
23
|
isHighlighted?: ?boolean,
|
|
23
24
|
selectionColor?: ?ProcessedColorValue,
|
|
@@ -54,7 +55,7 @@ const textViewConfig = {
|
|
|
54
55
|
},
|
|
55
56
|
},
|
|
56
57
|
uiViewClassName: 'RCTText',
|
|
57
|
-
};
|
|
58
|
+
} as const;
|
|
58
59
|
|
|
59
60
|
const virtualTextViewConfig = {
|
|
60
61
|
validAttributes: {
|
|
@@ -63,7 +64,7 @@ const virtualTextViewConfig = {
|
|
|
63
64
|
maxFontSizeMultiplier: true,
|
|
64
65
|
},
|
|
65
66
|
uiViewClassName: 'RCTVirtualText',
|
|
66
|
-
};
|
|
67
|
+
} as const;
|
|
67
68
|
|
|
68
69
|
/**
|
|
69
70
|
* `NativeText` is an internal React Native host component, and is exported to
|
|
@@ -77,8 +78,6 @@ const virtualTextViewConfig = {
|
|
|
77
78
|
// and <View> wrappers so that we no longer have any reason to export these APIs.
|
|
78
79
|
export const NativeText: HostComponent<NativeTextProps> =
|
|
79
80
|
(createReactNativeComponentClass('RCTText', () =>
|
|
80
|
-
/* $FlowFixMe[incompatible-type] Natural Inference rollout. See
|
|
81
|
-
* https://fburl.com/workplace/6291gfvu */
|
|
82
81
|
createViewConfig(textViewConfig),
|
|
83
82
|
): any);
|
|
84
83
|
|
|
@@ -86,7 +85,15 @@ export const NativeVirtualText: HostComponent<NativeTextProps> =
|
|
|
86
85
|
!global.RN$Bridgeless && !UIManager.hasViewManagerConfig('RCTVirtualText')
|
|
87
86
|
? NativeText
|
|
88
87
|
: (createReactNativeComponentClass('RCTVirtualText', () =>
|
|
89
|
-
/* $FlowFixMe[incompatible-type] Natural Inference rollout. See
|
|
90
|
-
* https://fburl.com/workplace/6291gfvu */
|
|
91
88
|
createViewConfig(virtualTextViewConfig),
|
|
92
89
|
): any);
|
|
90
|
+
|
|
91
|
+
export const NativeSelectableText: HostComponent<NativeTextProps> =
|
|
92
|
+
enablePreparedTextLayout()
|
|
93
|
+
? (createReactNativeComponentClass('RCTSelectableText', () =>
|
|
94
|
+
createViewConfig({
|
|
95
|
+
...textViewConfig,
|
|
96
|
+
uiViewClassName: 'RCTSelectableText',
|
|
97
|
+
}),
|
|
98
|
+
): any)
|
|
99
|
+
: NativeText;
|
|
@@ -25,14 +25,14 @@ import type {
|
|
|
25
25
|
|
|
26
26
|
import * as React from 'react';
|
|
27
27
|
|
|
28
|
-
export type PressRetentionOffset =
|
|
28
|
+
export type PressRetentionOffset = Readonly<{
|
|
29
29
|
top: number,
|
|
30
30
|
left: number,
|
|
31
31
|
bottom: number,
|
|
32
32
|
right: number,
|
|
33
33
|
}>;
|
|
34
34
|
|
|
35
|
-
type TextPointerEventProps =
|
|
35
|
+
type TextPointerEventProps = Readonly<{
|
|
36
36
|
onPointerEnter?: (event: PointerEvent) => void,
|
|
37
37
|
onPointerLeave?: (event: PointerEvent) => void,
|
|
38
38
|
onPointerMove?: (event: PointerEvent) => void,
|
|
@@ -121,7 +121,7 @@ export type TextPropsAndroid = {
|
|
|
121
121
|
minimumFontScale?: ?number,
|
|
122
122
|
};
|
|
123
123
|
|
|
124
|
-
type TextBaseProps =
|
|
124
|
+
type TextBaseProps = Readonly<{
|
|
125
125
|
onAccessibilityAction?: ?(event: AccessibilityActionEvent) => unknown,
|
|
126
126
|
|
|
127
127
|
/**
|
|
@@ -268,7 +268,7 @@ type TextBaseProps = $ReadOnly<{
|
|
|
268
268
|
/**
|
|
269
269
|
* @see https://reactnative.dev/docs/text#reference
|
|
270
270
|
*/
|
|
271
|
-
export type TextProps =
|
|
271
|
+
export type TextProps = Readonly<{
|
|
272
272
|
...TextPointerEventProps,
|
|
273
273
|
...TextPropsIOS,
|
|
274
274
|
...TextPropsAndroid,
|
|
@@ -25,14 +25,14 @@ import type {
|
|
|
25
25
|
|
|
26
26
|
import * as React from 'react';
|
|
27
27
|
|
|
28
|
-
export type PressRetentionOffset =
|
|
28
|
+
export type PressRetentionOffset = Readonly<{
|
|
29
29
|
top: number,
|
|
30
30
|
left: number,
|
|
31
31
|
bottom: number,
|
|
32
32
|
right: number,
|
|
33
33
|
}>;
|
|
34
34
|
|
|
35
|
-
type TextPointerEventProps =
|
|
35
|
+
type TextPointerEventProps = Readonly<{
|
|
36
36
|
onPointerEnter?: (event: PointerEvent) => void,
|
|
37
37
|
onPointerLeave?: (event: PointerEvent) => void,
|
|
38
38
|
onPointerMove?: (event: PointerEvent) => void,
|
|
@@ -121,7 +121,7 @@ export type TextPropsAndroid = {
|
|
|
121
121
|
minimumFontScale?: ?number,
|
|
122
122
|
};
|
|
123
123
|
|
|
124
|
-
type TextBaseProps =
|
|
124
|
+
type TextBaseProps = Readonly<{
|
|
125
125
|
onAccessibilityAction?: ?(event: AccessibilityActionEvent) => unknown,
|
|
126
126
|
accessibilityLevel?: ?number, // Windows
|
|
127
127
|
accessibilityPosInSet?: ?number, // Windows
|
|
@@ -278,7 +278,7 @@ type TextBaseProps = $ReadOnly<{
|
|
|
278
278
|
/**
|
|
279
279
|
* @see https://reactnative.dev/docs/text#reference
|
|
280
280
|
*/
|
|
281
|
-
export type TextProps =
|
|
281
|
+
export type TextProps = Readonly<{
|
|
282
282
|
...TextPointerEventProps,
|
|
283
283
|
...TextPropsIOS,
|
|
284
284
|
...TextPropsAndroid,
|
|
@@ -33,7 +33,7 @@ export type Int32 = number;
|
|
|
33
33
|
export type UnsafeObject = Object;
|
|
34
34
|
export type UnsafeMixed = unknown;
|
|
35
35
|
|
|
36
|
-
type DefaultTypes = number | boolean | string |
|
|
36
|
+
type DefaultTypes = number | boolean | string | ReadonlyArray<string>;
|
|
37
37
|
// Default handling, ignore the unused value
|
|
38
38
|
// we're only using it for type checking
|
|
39
39
|
//
|
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
|
|
11
11
|
import type {HostInstance} from '../../src/private/types/HostInstance';
|
|
12
12
|
|
|
13
|
-
export type NativeSyntheticEvent<+T> =
|
|
13
|
+
export type NativeSyntheticEvent<+T> = Readonly<{
|
|
14
14
|
bubbles: ?boolean,
|
|
15
15
|
cancelable: ?boolean,
|
|
16
16
|
currentTarget: number | HostInstance,
|
|
17
17
|
defaultPrevented: ?boolean,
|
|
18
|
-
dispatchConfig:
|
|
18
|
+
dispatchConfig: Readonly<{
|
|
19
19
|
registrationName: string,
|
|
20
20
|
}>,
|
|
21
21
|
eventPhase: ?number,
|
|
@@ -31,14 +31,14 @@ export type NativeSyntheticEvent<+T> = $ReadOnly<{
|
|
|
31
31
|
type: ?string,
|
|
32
32
|
}>;
|
|
33
33
|
|
|
34
|
-
export type ResponderSyntheticEvent<T> =
|
|
34
|
+
export type ResponderSyntheticEvent<T> = Readonly<{
|
|
35
35
|
...NativeSyntheticEvent<T>,
|
|
36
|
-
touchHistory:
|
|
36
|
+
touchHistory: Readonly<{
|
|
37
37
|
indexOfSingleActiveTouch: number,
|
|
38
38
|
mostRecentTimeStamp: number,
|
|
39
39
|
numberActiveTouches: number,
|
|
40
|
-
touchBank:
|
|
41
|
-
|
|
40
|
+
touchBank: ReadonlyArray<
|
|
41
|
+
Readonly<{
|
|
42
42
|
touchActive: boolean,
|
|
43
43
|
startPageX: number,
|
|
44
44
|
startPageY: number,
|
|
@@ -54,14 +54,14 @@ export type ResponderSyntheticEvent<T> = $ReadOnly<{
|
|
|
54
54
|
}>,
|
|
55
55
|
}>;
|
|
56
56
|
|
|
57
|
-
export type LayoutRectangle =
|
|
57
|
+
export type LayoutRectangle = Readonly<{
|
|
58
58
|
x: number,
|
|
59
59
|
y: number,
|
|
60
60
|
width: number,
|
|
61
61
|
height: number,
|
|
62
62
|
}>;
|
|
63
63
|
|
|
64
|
-
export type TextLayoutLine =
|
|
64
|
+
export type TextLayoutLine = Readonly<{
|
|
65
65
|
...LayoutRectangle,
|
|
66
66
|
ascender: number,
|
|
67
67
|
capHeight: number,
|
|
@@ -71,12 +71,12 @@ export type TextLayoutLine = $ReadOnly<{
|
|
|
71
71
|
}>;
|
|
72
72
|
|
|
73
73
|
export type LayoutChangeEvent = NativeSyntheticEvent<
|
|
74
|
-
|
|
74
|
+
Readonly<{
|
|
75
75
|
layout: LayoutRectangle,
|
|
76
76
|
}>,
|
|
77
77
|
>;
|
|
78
78
|
|
|
79
|
-
type TextLayoutEventData =
|
|
79
|
+
type TextLayoutEventData = Readonly<{
|
|
80
80
|
lines: Array<TextLayoutLine>,
|
|
81
81
|
}>;
|
|
82
82
|
|
|
@@ -220,11 +220,11 @@ export interface NativePointerEvent extends NativeMouseEvent {
|
|
|
220
220
|
|
|
221
221
|
export type PointerEvent = NativeSyntheticEvent<NativePointerEvent>;
|
|
222
222
|
|
|
223
|
-
export type NativeTouchEvent =
|
|
223
|
+
export type NativeTouchEvent = Readonly<{
|
|
224
224
|
/**
|
|
225
225
|
* Array of all touch events that have changed since the last event
|
|
226
226
|
*/
|
|
227
|
-
changedTouches:
|
|
227
|
+
changedTouches: ReadonlyArray<NativeTouchEvent>,
|
|
228
228
|
/**
|
|
229
229
|
* 3D Touch reported force
|
|
230
230
|
* @platform ios
|
|
@@ -261,34 +261,34 @@ export type NativeTouchEvent = $ReadOnly<{
|
|
|
261
261
|
/**
|
|
262
262
|
* Array of all current touches on the screen
|
|
263
263
|
*/
|
|
264
|
-
touches:
|
|
264
|
+
touches: ReadonlyArray<NativeTouchEvent>,
|
|
265
265
|
}>;
|
|
266
266
|
|
|
267
267
|
export type GestureResponderEvent = ResponderSyntheticEvent<NativeTouchEvent>;
|
|
268
268
|
|
|
269
|
-
export type NativeScrollRectangle =
|
|
269
|
+
export type NativeScrollRectangle = Readonly<{
|
|
270
270
|
bottom: number,
|
|
271
271
|
left: number,
|
|
272
272
|
right: number,
|
|
273
273
|
top: number,
|
|
274
274
|
}>;
|
|
275
275
|
|
|
276
|
-
export type NativeScrollPoint =
|
|
276
|
+
export type NativeScrollPoint = Readonly<{
|
|
277
277
|
y: number,
|
|
278
278
|
x: number,
|
|
279
279
|
}>;
|
|
280
280
|
|
|
281
|
-
export type NativeScrollVelocity =
|
|
281
|
+
export type NativeScrollVelocity = Readonly<{
|
|
282
282
|
y: number,
|
|
283
283
|
x: number,
|
|
284
284
|
}>;
|
|
285
285
|
|
|
286
|
-
export type NativeScrollSize =
|
|
286
|
+
export type NativeScrollSize = Readonly<{
|
|
287
287
|
height: number,
|
|
288
288
|
width: number,
|
|
289
289
|
}>;
|
|
290
290
|
|
|
291
|
-
export type NativeScrollEvent =
|
|
291
|
+
export type NativeScrollEvent = Readonly<{
|
|
292
292
|
contentInset: NativeScrollRectangle,
|
|
293
293
|
contentOffset: NativeScrollPoint,
|
|
294
294
|
contentSize: NativeScrollSize,
|
|
@@ -304,7 +304,7 @@ export type NativeScrollEvent = $ReadOnly<{
|
|
|
304
304
|
|
|
305
305
|
export type ScrollEvent = NativeSyntheticEvent<NativeScrollEvent>;
|
|
306
306
|
|
|
307
|
-
export type TargetedEvent =
|
|
307
|
+
export type TargetedEvent = Readonly<{
|
|
308
308
|
target: number,
|
|
309
309
|
...
|
|
310
310
|
}>;
|
|
@@ -314,7 +314,7 @@ export type BlurEvent = NativeSyntheticEvent<TargetedEvent>;
|
|
|
314
314
|
export type FocusEvent = NativeSyntheticEvent<TargetedEvent>;
|
|
315
315
|
|
|
316
316
|
export type MouseEvent = NativeSyntheticEvent<
|
|
317
|
-
|
|
317
|
+
Readonly<{
|
|
318
318
|
clientX: number,
|
|
319
319
|
clientY: number,
|
|
320
320
|
pageX: number,
|
|
@@ -323,7 +323,7 @@ export type MouseEvent = NativeSyntheticEvent<
|
|
|
323
323
|
}>,
|
|
324
324
|
>;
|
|
325
325
|
|
|
326
|
-
export type KeyEvent =
|
|
326
|
+
export type KeyEvent = Readonly<{
|
|
327
327
|
/**
|
|
328
328
|
* The actual key that was pressed. For example, F would be "f" or "F" depending on the shift key.
|
|
329
329
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key
|
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
|
|
11
11
|
import type {HostInstance} from '../../src/private/types/HostInstance';
|
|
12
12
|
|
|
13
|
-
export type NativeSyntheticEvent<+T> =
|
|
13
|
+
export type NativeSyntheticEvent<+T> = Readonly<{
|
|
14
14
|
bubbles: ?boolean,
|
|
15
15
|
cancelable: ?boolean,
|
|
16
16
|
currentTarget: number | HostInstance,
|
|
17
17
|
defaultPrevented: ?boolean,
|
|
18
|
-
dispatchConfig:
|
|
18
|
+
dispatchConfig: Readonly<{
|
|
19
19
|
registrationName: string,
|
|
20
20
|
}>,
|
|
21
21
|
eventPhase: ?number,
|
|
@@ -31,14 +31,14 @@ export type NativeSyntheticEvent<+T> = $ReadOnly<{
|
|
|
31
31
|
type: ?string,
|
|
32
32
|
}>;
|
|
33
33
|
|
|
34
|
-
export type ResponderSyntheticEvent<T> =
|
|
34
|
+
export type ResponderSyntheticEvent<T> = Readonly<{
|
|
35
35
|
...NativeSyntheticEvent<T>,
|
|
36
|
-
touchHistory:
|
|
36
|
+
touchHistory: Readonly<{
|
|
37
37
|
indexOfSingleActiveTouch: number,
|
|
38
38
|
mostRecentTimeStamp: number,
|
|
39
39
|
numberActiveTouches: number,
|
|
40
|
-
touchBank:
|
|
41
|
-
|
|
40
|
+
touchBank: ReadonlyArray<
|
|
41
|
+
Readonly<{
|
|
42
42
|
touchActive: boolean,
|
|
43
43
|
startPageX: number,
|
|
44
44
|
startPageY: number,
|
|
@@ -54,14 +54,14 @@ export type ResponderSyntheticEvent<T> = $ReadOnly<{
|
|
|
54
54
|
}>,
|
|
55
55
|
}>;
|
|
56
56
|
|
|
57
|
-
export type LayoutRectangle =
|
|
57
|
+
export type LayoutRectangle = Readonly<{
|
|
58
58
|
x: number,
|
|
59
59
|
y: number,
|
|
60
60
|
width: number,
|
|
61
61
|
height: number,
|
|
62
62
|
}>;
|
|
63
63
|
|
|
64
|
-
export type TextLayoutLine =
|
|
64
|
+
export type TextLayoutLine = Readonly<{
|
|
65
65
|
...LayoutRectangle,
|
|
66
66
|
ascender: number,
|
|
67
67
|
capHeight: number,
|
|
@@ -71,12 +71,12 @@ export type TextLayoutLine = $ReadOnly<{
|
|
|
71
71
|
}>;
|
|
72
72
|
|
|
73
73
|
export type LayoutChangeEvent = NativeSyntheticEvent<
|
|
74
|
-
|
|
74
|
+
Readonly<{
|
|
75
75
|
layout: LayoutRectangle,
|
|
76
76
|
}>,
|
|
77
77
|
>;
|
|
78
78
|
|
|
79
|
-
type TextLayoutEventData =
|
|
79
|
+
type TextLayoutEventData = Readonly<{
|
|
80
80
|
lines: Array<TextLayoutLine>,
|
|
81
81
|
}>;
|
|
82
82
|
|
|
@@ -230,13 +230,13 @@ export interface NativePointerEvent extends NativeMouseEvent {
|
|
|
230
230
|
|
|
231
231
|
export type PointerEvent = NativeSyntheticEvent<NativePointerEvent>;
|
|
232
232
|
|
|
233
|
-
export type NativeTouchEvent =
|
|
233
|
+
export type NativeTouchEvent = Readonly<{
|
|
234
234
|
altKey: ?boolean, // TODO(macOS)
|
|
235
235
|
button: ?number, // TODO(macOS)
|
|
236
236
|
/**
|
|
237
237
|
* Array of all touch events that have changed since the last event
|
|
238
238
|
*/
|
|
239
|
-
changedTouches:
|
|
239
|
+
changedTouches: ReadonlyArray<NativeTouchEvent>,
|
|
240
240
|
/**
|
|
241
241
|
* 3D Touch reported force
|
|
242
242
|
* @platform ios
|
|
@@ -276,34 +276,34 @@ export type NativeTouchEvent = $ReadOnly<{
|
|
|
276
276
|
/**
|
|
277
277
|
* Array of all current touches on the screen
|
|
278
278
|
*/
|
|
279
|
-
touches:
|
|
279
|
+
touches: ReadonlyArray<NativeTouchEvent>,
|
|
280
280
|
}>;
|
|
281
281
|
|
|
282
282
|
export type GestureResponderEvent = ResponderSyntheticEvent<NativeTouchEvent>;
|
|
283
283
|
|
|
284
|
-
export type NativeScrollRectangle =
|
|
284
|
+
export type NativeScrollRectangle = Readonly<{
|
|
285
285
|
bottom: number,
|
|
286
286
|
left: number,
|
|
287
287
|
right: number,
|
|
288
288
|
top: number,
|
|
289
289
|
}>;
|
|
290
290
|
|
|
291
|
-
export type NativeScrollPoint =
|
|
291
|
+
export type NativeScrollPoint = Readonly<{
|
|
292
292
|
y: number,
|
|
293
293
|
x: number,
|
|
294
294
|
}>;
|
|
295
295
|
|
|
296
|
-
export type NativeScrollVelocity =
|
|
296
|
+
export type NativeScrollVelocity = Readonly<{
|
|
297
297
|
y: number,
|
|
298
298
|
x: number,
|
|
299
299
|
}>;
|
|
300
300
|
|
|
301
|
-
export type NativeScrollSize =
|
|
301
|
+
export type NativeScrollSize = Readonly<{
|
|
302
302
|
height: number,
|
|
303
303
|
width: number,
|
|
304
304
|
}>;
|
|
305
305
|
|
|
306
|
-
export type NativeScrollEvent =
|
|
306
|
+
export type NativeScrollEvent = Readonly<{
|
|
307
307
|
contentInset: NativeScrollRectangle,
|
|
308
308
|
contentOffset: NativeScrollPoint,
|
|
309
309
|
contentSize: NativeScrollSize,
|
|
@@ -319,7 +319,7 @@ export type NativeScrollEvent = $ReadOnly<{
|
|
|
319
319
|
|
|
320
320
|
export type ScrollEvent = NativeSyntheticEvent<NativeScrollEvent>;
|
|
321
321
|
|
|
322
|
-
export type TargetedEvent =
|
|
322
|
+
export type TargetedEvent = Readonly<{
|
|
323
323
|
target: number,
|
|
324
324
|
...
|
|
325
325
|
}>;
|
|
@@ -332,7 +332,7 @@ export type FocusEvent = NativeSyntheticEvent<TargetedEvent>;
|
|
|
332
332
|
// introduced for react-native-web. Replace typings with our values to catch
|
|
333
333
|
// anything dependent on react-native-web specific values
|
|
334
334
|
export type MouseEvent = NativeSyntheticEvent<
|
|
335
|
-
|
|
335
|
+
Readonly<{
|
|
336
336
|
target: number,
|
|
337
337
|
identifier: number,
|
|
338
338
|
clientX: number,
|
|
@@ -357,7 +357,7 @@ export type MouseEvent = NativeSyntheticEvent<
|
|
|
357
357
|
>;
|
|
358
358
|
// Windows]
|
|
359
359
|
|
|
360
|
-
export type KeyEvent =
|
|
360
|
+
export type KeyEvent = Readonly<{
|
|
361
361
|
/**
|
|
362
362
|
* The actual key that was pressed. For example, F would be "f" or "F" depending on the shift key.
|
|
363
363
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key
|
|
@@ -34,12 +34,12 @@ export type ReactDevToolsAgentEvents = {
|
|
|
34
34
|
export type ReactDevToolsAgent = {
|
|
35
35
|
selectNode(node: unknown): void,
|
|
36
36
|
stopInspectingNative(value: boolean): void,
|
|
37
|
-
addListener<Event:
|
|
37
|
+
addListener<Event: keyof ReactDevToolsAgentEvents>(
|
|
38
38
|
event: Event,
|
|
39
39
|
listener: (...ReactDevToolsAgentEvents[Event]) => void,
|
|
40
40
|
): void,
|
|
41
41
|
removeListener(
|
|
42
|
-
event:
|
|
42
|
+
event: keyof ReactDevToolsAgentEvents,
|
|
43
43
|
listener: () => void,
|
|
44
44
|
): void,
|
|
45
45
|
};
|
|
@@ -99,7 +99,12 @@ export function setColorScheme(colorScheme: ColorSchemeName): void {
|
|
|
99
99
|
if (NativeAppearance != null) {
|
|
100
100
|
NativeAppearance.setColorScheme(colorScheme);
|
|
101
101
|
state.appearance = {
|
|
102
|
-
|
|
102
|
+
// When setting to 'unspecified', get the actual system color scheme.
|
|
103
|
+
// Fall back to the passed value if getColorScheme() returns null.
|
|
104
|
+
colorScheme:
|
|
105
|
+
colorScheme === 'unspecified'
|
|
106
|
+
? (NativeAppearance.getColorScheme() ?? colorScheme)
|
|
107
|
+
: colorScheme,
|
|
103
108
|
};
|
|
104
109
|
}
|
|
105
110
|
}
|
|
@@ -60,7 +60,7 @@ class Dimensions {
|
|
|
60
60
|
*
|
|
61
61
|
* @param {DimensionsPayload} dims Simple string-keyed object of dimensions to set
|
|
62
62
|
*/
|
|
63
|
-
static set(dims:
|
|
63
|
+
static set(dims: Readonly<DimensionsPayload>): void {
|
|
64
64
|
// We calculate the window dimensions in JS so that we don't encounter loss of
|
|
65
65
|
// precision in transferring the dimensions (which could be non-integers) over
|
|
66
66
|
// the bridge.
|
|
@@ -26,7 +26,7 @@ let hmrUnavailableReason: string | null = null;
|
|
|
26
26
|
let hmrOrigin: string | null = null;
|
|
27
27
|
let currentCompileErrorMessage: string | null = null;
|
|
28
28
|
let didConnect: boolean = false;
|
|
29
|
-
let pendingLogs: Array<[LogLevel,
|
|
29
|
+
let pendingLogs: Array<[LogLevel, ReadonlyArray<unknown>]> = [];
|
|
30
30
|
|
|
31
31
|
type LogLevel =
|
|
32
32
|
| 'trace'
|
|
@@ -43,7 +43,7 @@ export type HMRClientNativeInterface = {
|
|
|
43
43
|
enable(): void,
|
|
44
44
|
disable(): void,
|
|
45
45
|
registerBundle(requestUrl: string): void,
|
|
46
|
-
log(level: LogLevel, data:
|
|
46
|
+
log(level: LogLevel, data: ReadonlyArray<unknown>): void,
|
|
47
47
|
setup(
|
|
48
48
|
platform: string,
|
|
49
49
|
bundleEntry: string,
|
|
@@ -113,7 +113,7 @@ const HMRClient: HMRClientNativeInterface = {
|
|
|
113
113
|
registerBundleEntryPoints(hmrClient);
|
|
114
114
|
},
|
|
115
115
|
|
|
116
|
-
log(level: LogLevel, data:
|
|
116
|
+
log(level: LogLevel, data: ReadonlyArray<unknown>) {
|
|
117
117
|
if (!hmrClient) {
|
|
118
118
|
// Catch a reasonable number of early logs
|
|
119
119
|
// in case hmrClient gets initialized later.
|
|
@@ -141,7 +141,7 @@ const HMRClient: HMRClientNativeInterface = {
|
|
|
141
141
|
),
|
|
142
142
|
}),
|
|
143
143
|
);
|
|
144
|
-
} catch
|
|
144
|
+
} catch {
|
|
145
145
|
// If sending logs causes any failures we want to silently ignore them
|
|
146
146
|
// to ensure we do not cause infinite-logging loops.
|
|
147
147
|
}
|
|
@@ -212,6 +212,7 @@ Error: ${e.message}`;
|
|
|
212
212
|
});
|
|
213
213
|
|
|
214
214
|
let pendingUpdatesCount = 0;
|
|
215
|
+
let lastMarkerChangeId: string | null = null;
|
|
215
216
|
client.on('update-start', ({isInitialUpdate}) => {
|
|
216
217
|
pendingUpdatesCount++;
|
|
217
218
|
currentCompileErrorMessage = null;
|
|
@@ -229,10 +230,15 @@ Error: ${e.message}`;
|
|
|
229
230
|
}
|
|
230
231
|
});
|
|
231
232
|
|
|
232
|
-
client.on('update-done',
|
|
233
|
+
client.on('update-done', body => {
|
|
233
234
|
pendingUpdatesCount--;
|
|
234
235
|
if (pendingUpdatesCount === 0) {
|
|
235
236
|
DevLoadingView.hide();
|
|
237
|
+
const changeId = body?.changeId;
|
|
238
|
+
if (changeId != null && changeId !== lastMarkerChangeId) {
|
|
239
|
+
lastMarkerChangeId = changeId;
|
|
240
|
+
emitFastRefreshCompleteEvents();
|
|
241
|
+
}
|
|
236
242
|
}
|
|
237
243
|
});
|
|
238
244
|
|
|
@@ -379,4 +385,25 @@ function showCompileError() {
|
|
|
379
385
|
throw error;
|
|
380
386
|
}
|
|
381
387
|
|
|
388
|
+
function emitFastRefreshCompleteEvents() {
|
|
389
|
+
// Add marker entry in performance timeline
|
|
390
|
+
performance.mark('Fast Refresh - Update done', {
|
|
391
|
+
detail: {
|
|
392
|
+
devtools: {
|
|
393
|
+
dataType: 'marker',
|
|
394
|
+
color: 'primary',
|
|
395
|
+
tooltipText: 'Fast Refresh \u269b',
|
|
396
|
+
},
|
|
397
|
+
},
|
|
398
|
+
});
|
|
399
|
+
|
|
400
|
+
// Notify CDP clients via internal binding
|
|
401
|
+
if (
|
|
402
|
+
// $FlowFixMe[prop-missing] - Injected by RuntimeTarget
|
|
403
|
+
typeof globalThis.__notifyFastRefreshComplete === 'function'
|
|
404
|
+
) {
|
|
405
|
+
globalThis.__notifyFastRefreshComplete();
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
|
|
382
409
|
export default HMRClient;
|
|
@@ -34,10 +34,10 @@ export interface IPerformanceLogger {
|
|
|
34
34
|
clearCompleted(): void;
|
|
35
35
|
close(): void;
|
|
36
36
|
currentTimestamp(): number;
|
|
37
|
-
getExtras():
|
|
38
|
-
getPoints():
|
|
39
|
-
getPointExtras():
|
|
40
|
-
getTimespans():
|
|
37
|
+
getExtras(): Readonly<{[key: string]: ?ExtraValue, ...}>;
|
|
38
|
+
getPoints(): Readonly<{[key: string]: ?number, ...}>;
|
|
39
|
+
getPointExtras(): Readonly<{[key: string]: ?Extras, ...}>;
|
|
40
|
+
getTimespans(): Readonly<{[key: string]: ?Timespan, ...}>;
|
|
41
41
|
hasTimespan(key: string): boolean;
|
|
42
42
|
isClosed(): boolean;
|
|
43
43
|
logEverything(): void;
|
|
@@ -10,14 +10,14 @@
|
|
|
10
10
|
|
|
11
11
|
const {dispatchCommand} = require('../ReactNative/RendererProxy');
|
|
12
12
|
|
|
13
|
-
type NativeCommandsOptions<T = string> =
|
|
14
|
-
supportedCommands:
|
|
13
|
+
type NativeCommandsOptions<T = string> = Readonly<{
|
|
14
|
+
supportedCommands: ReadonlyArray<T>,
|
|
15
15
|
}>;
|
|
16
16
|
|
|
17
17
|
function codegenNativeCommands<T: interface {}>(
|
|
18
|
-
options: NativeCommandsOptions
|
|
18
|
+
options: NativeCommandsOptions<keyof T>,
|
|
19
19
|
): T {
|
|
20
|
-
const commandObj: {[
|
|
20
|
+
const commandObj: {[keyof T]: (...ReadonlyArray<unknown>) => void} = {};
|
|
21
21
|
|
|
22
22
|
options.supportedCommands.forEach(command => {
|
|
23
23
|
// $FlowFixMe[missing-local-annot]
|
|
@@ -14,6 +14,8 @@ interface Options {
|
|
|
14
14
|
readonly paperComponentName?: string | undefined;
|
|
15
15
|
readonly paperComponentNameDeprecated?: string | undefined;
|
|
16
16
|
readonly excludedPlatforms?: ReadonlyArray<'iOS' | 'android'> | undefined;
|
|
17
|
+
readonly generateOptionalProperties?: boolean | undefined;
|
|
18
|
+
readonly generateOptionalObjectProperties?: boolean | undefined;
|
|
17
19
|
}
|
|
18
20
|
|
|
19
21
|
type NativeComponentType<T> = HostComponent<T>;
|
|
@@ -16,11 +16,11 @@ import requireNativeComponent from '../../Libraries/ReactNative/requireNativeCom
|
|
|
16
16
|
import UIManager from '../ReactNative/UIManager';
|
|
17
17
|
|
|
18
18
|
// TODO: import from CodegenSchema once workspaces are enabled
|
|
19
|
-
type NativeComponentOptions =
|
|
19
|
+
type NativeComponentOptions = Readonly<{
|
|
20
20
|
interfaceOnly?: boolean,
|
|
21
21
|
paperComponentName?: string,
|
|
22
22
|
paperComponentNameDeprecated?: string,
|
|
23
|
-
excludedPlatforms?:
|
|
23
|
+
excludedPlatforms?: ReadonlyArray<'iOS' | 'android'>,
|
|
24
24
|
}>;
|
|
25
25
|
|
|
26
26
|
export type NativeComponentType<T: {...}> = HostComponent<T>;
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* `console.error` as a failure callback - it's not properly bound. If passes an
|
|
16
16
|
* `Error` object, it will print the message and stack.
|
|
17
17
|
*/
|
|
18
|
-
const logError = function (...args:
|
|
18
|
+
const logError = function (...args: ReadonlyArray<unknown>) {
|
|
19
19
|
if (args.length === 1 && args[0] instanceof Error) {
|
|
20
20
|
const err = args[0];
|
|
21
21
|
console.error('Error: "' + err.message + '". Stack:\n' + err.stack);
|
|
@@ -84,7 +84,7 @@ export function createStringifySafeWithLimits(limits: {
|
|
|
84
84
|
} else if (typeof arg === 'function') {
|
|
85
85
|
try {
|
|
86
86
|
return arg.toString();
|
|
87
|
-
} catch
|
|
87
|
+
} catch {
|
|
88
88
|
return '[function unknown]';
|
|
89
89
|
}
|
|
90
90
|
} else if (arg instanceof Error) {
|
|
@@ -98,12 +98,12 @@ export function createStringifySafeWithLimits(limits: {
|
|
|
98
98
|
return '["' + typeof arg + '" failed to stringify]';
|
|
99
99
|
}
|
|
100
100
|
return ret;
|
|
101
|
-
} catch
|
|
101
|
+
} catch {
|
|
102
102
|
if (typeof arg.toString === 'function') {
|
|
103
103
|
try {
|
|
104
104
|
// $FlowFixMe[incompatible-use] : toString shouldn't take any arguments in general.
|
|
105
105
|
return arg.toString();
|
|
106
|
-
} catch
|
|
106
|
+
} catch {}
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
}
|
|
@@ -22,11 +22,11 @@ import {useCallback} from 'react';
|
|
|
22
22
|
* lead to problems with the given refs being invoked more times than desired.
|
|
23
23
|
*/
|
|
24
24
|
export default function useMergeRefs<Instance>(
|
|
25
|
-
...refs:
|
|
25
|
+
...refs: ReadonlyArray<?React.RefSetter<Instance>>
|
|
26
26
|
): React.RefSetter<Instance> {
|
|
27
27
|
const refEffect = useCallback(
|
|
28
28
|
(current: Instance) => {
|
|
29
|
-
const cleanups:
|
|
29
|
+
const cleanups: ReadonlyArray<void | (() => void)> = refs.map(ref => {
|
|
30
30
|
if (ref == null) {
|
|
31
31
|
return undefined;
|
|
32
32
|
} else {
|