react-native-windows 0.80.1 → 0.81.0-preview.4
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 +10 -5
- package/Directory.Build.props +1 -1
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.js +3 -3
- package/Libraries/Alert/Alert.windows.js +5 -2
- package/Libraries/Alert/NativeAlertManager.js +1 -0
- package/Libraries/Alert/RCTAlertManager.android.js +19 -13
- package/Libraries/Alert/RCTAlertManager.ios.js +10 -12
- package/Libraries/Alert/RCTAlertManager.js +1 -3
- package/Libraries/Alert/RCTAlertManager.js.flow +5 -7
- package/Libraries/Animated/Animated.js +0 -1
- package/Libraries/Animated/Animated.js.flow +0 -1
- package/Libraries/Animated/AnimatedEvent.js +4 -3
- package/Libraries/Animated/AnimatedExports.js +0 -1
- package/Libraries/Animated/AnimatedExports.js.flow +5 -1
- package/Libraries/Animated/AnimatedImplementation.js +44 -44
- package/Libraries/Animated/AnimatedMock.js +2 -2
- package/Libraries/Animated/Easing.js +1 -1
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/SpringConfig.js +1 -1
- package/Libraries/Animated/animations/Animation.js +10 -2
- package/Libraries/Animated/components/AnimatedScrollView.js +58 -56
- package/Libraries/Animated/components/AnimatedText.js +2 -5
- package/Libraries/Animated/components/AnimatedView.js +2 -1
- package/Libraries/Animated/createAnimatedComponent.js +39 -37
- package/Libraries/Animated/nodes/AnimatedObject.js +2 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +31 -4
- package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +6 -1
- package/Libraries/AppState/NativeAppState.js +1 -0
- package/Libraries/AppTheme/AppTheme.js +1 -1
- package/Libraries/BatchedBridge/BatchedBridge.js +1 -1
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/BlobManager.js +4 -0
- package/Libraries/Blob/NativeBlobModule.js +1 -0
- package/Libraries/Blob/NativeFileReaderModule.js +1 -0
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +5 -1
- package/Libraries/Blob/URLSearchParams.js.flow +2 -1
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -2
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.windows.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +19 -19
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
- package/Libraries/Components/Button.js +10 -7
- package/Libraries/Components/Button.windows.js +4 -4
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/Clipboard/NativeClipboard.js +1 -2
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -3
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -4
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +1 -1
- package/Libraries/Components/Flyout/FlyoutNativeComponent.js +1 -1
- package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
- package/Libraries/Components/Keyboard/Keyboard.js +1 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +3 -2
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -2
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +0 -1
- package/Libraries/Components/Popup/PopupNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.js +17 -8
- package/Libraries/Components/Pressable/Pressable.windows.js +17 -14
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +14 -13
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -3
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -3
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -1
- package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
- package/Libraries/Components/RefreshControl/RefreshControl.windows.js +1 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -3
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +9 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +3 -2
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -3
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +33 -6
- package/Libraries/Components/ScrollView/ScrollView.js +25 -15
- package/Libraries/Components/ScrollView/ScrollView.windows.js +25 -14
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -1
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +19 -6
- package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
- package/Libraries/Components/Sound/NativeSoundManager.js +1 -2
- package/Libraries/Components/Sound/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -2
- package/Libraries/Components/StatusBar/StatusBar.d.ts +4 -0
- package/Libraries/Components/StatusBar/StatusBar.js +6 -1
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -3
- package/Libraries/Components/Switch/Switch.js +10 -3
- package/Libraries/Components/Switch/Switch.windows.js +10 -3
- package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -3
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -24
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -3
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +9 -3
- package/Libraries/Components/TextInput/TextInput.flow.js +13 -15
- package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -15
- package/Libraries/Components/TextInput/TextInput.js +42 -39
- package/Libraries/Components/TextInput/TextInput.windows.js +69 -38
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
- package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +1 -17
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -2
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +1 -1
- package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Position.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +17 -3
- package/Libraries/Components/Touchable/Touchable.windows.js +17 -3
- package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
- package/Libraries/Components/Touchable/TouchableBounce.windows.js +9 -3
- package/Libraries/Components/Touchable/TouchableHighlight.js +14 -5
- package/Libraries/Components/Touchable/TouchableHighlight.windows.js +14 -5
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +5 -3
- package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +5 -3
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +1 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +10 -5
- package/Libraries/Components/Touchable/TouchableOpacity.windows.js +10 -5
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +3 -3
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -3
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +7 -16
- package/Libraries/Components/View/View.js +114 -29
- package/Libraries/Components/View/View.windows.js +261 -217
- package/Libraries/Components/View/ViewAccessibility.js +1 -8
- package/Libraries/Components/View/ViewAccessibility.windows.js +1 -8
- package/Libraries/Components/View/ViewPropTypes.d.ts +21 -1
- package/Libraries/Components/View/ViewPropTypes.js +9 -1
- package/Libraries/Components/View/ViewPropTypes.windows.js +9 -1
- package/Libraries/Core/Devtools/getDevServer.js +1 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.js +49 -7
- package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +49 -7
- package/Libraries/Core/Devtools/openFileInEditor.js +1 -1
- package/Libraries/Core/Devtools/openURLInBrowser.js +1 -1
- package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
- package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +27 -16
- package/Libraries/Core/InitializeCore.js +2 -23
- package/Libraries/Core/NativeExceptionsManager.js +1 -0
- package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +3 -2
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/Timers/NativeTiming.js +1 -0
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/Timers/queueMicrotask.js +1 -1
- package/Libraries/Core/checkNativeVersion.js +1 -0
- package/Libraries/Core/setUpDeveloperTools.js +13 -11
- package/Libraries/Core/setUpReactDevTools.js +21 -4
- package/Libraries/Debugging/DebuggingOverlay.js +12 -14
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +0 -1
- package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +0 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/Image/AssetRegistry.js +4 -10
- package/Libraries/Image/Image.android.js +113 -107
- package/Libraries/Image/Image.ios.js +10 -2
- package/Libraries/Image/Image.windows.js +30 -20
- package/Libraries/Image/ImageAnalyticsTagContext.js +2 -2
- package/Libraries/Image/ImageInjection.js +1 -1
- package/Libraries/Image/ImageSource.d.ts +5 -0
- package/Libraries/Image/ImageViewNativeComponent.js +3 -3
- package/Libraries/Image/NativeImageEditor.js +1 -0
- package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
- package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
- package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
- package/Libraries/Image/NativeImageStoreIOS.js +1 -0
- package/Libraries/Image/RelativeImageStub.js +2 -1
- package/Libraries/Image/TextInlineImageNativeComponent.js +4 -4
- package/Libraries/Image/resolveAssetSource.js +1 -1
- package/Libraries/Image/resolveAssetSource.windows.js +1 -1
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +64 -54
- package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
- package/Libraries/Interaction/TaskQueue.js +8 -9
- package/Libraries/Interaction/TouchHistoryMath.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -8
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Linking/NativeIntentAndroid.js +1 -0
- package/Libraries/Linking/NativeLinkingManager.js +1 -0
- package/Libraries/Lists/FlatList.d.ts +9 -5
- package/Libraries/Lists/FlatList.js +6 -7
- package/Libraries/Lists/SectionList.js +4 -4
- package/Libraries/Lists/SectionListModern.js +9 -3
- package/Libraries/Lists/VirtualizedList.js +3 -2
- package/Libraries/LogBox/Data/LogBoxData.js +7 -4
- package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
- package/Libraries/LogBox/LogBox.js +72 -99
- package/Libraries/LogBox/UI/LogBoxButton.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -2
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -1
- package/Libraries/Modal/Modal.d.ts +8 -2
- package/Libraries/Modal/Modal.js +24 -3
- package/Libraries/Modal/Modal.windows.js +24 -3
- package/Libraries/Modal/NativeModalManager.js +1 -0
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +21 -18
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -17
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +9 -18
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
- package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
- package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
- package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
- package/Libraries/NativeModules/specs/NativeDialogManagerWindows.js +1 -0
- package/Libraries/NativeModules/specs/NativeLogBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
- package/Libraries/Network/FormData.js +1 -1
- package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
- package/Libraries/Network/NativeNetworkingIOS.js +1 -0
- package/Libraries/Network/RCTNetworking.android.js +2 -2
- 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/XMLHttpRequest.js +3 -3
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -3
- package/Libraries/Pressability/Pressability.js +1 -1
- package/Libraries/Pressability/Pressability.windows.js +1 -1
- package/Libraries/Promise.js +1 -1
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +3 -2
- package/Libraries/ReactNative/AppContainer-dev.js +4 -4
- package/Libraries/ReactNative/AppContainer-prod.js +0 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +2 -13
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
- package/Libraries/ReactNative/NativeI18nManager.js +1 -0
- package/Libraries/ReactNative/NativeUIManager.js +1 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +81 -62
- package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +1 -1
- package/Libraries/ReactNative/RendererProxy.js +1 -1
- package/Libraries/ReactNative/RootTag.js +2 -2
- package/Libraries/ReactNative/renderApplication.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -1
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -1
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -36
- package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +261 -0
- package/Libraries/Settings/NativeSettingsManager.js +1 -0
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/Settings/Settings.js +1 -1
- package/Libraries/Settings/SettingsFallback.js +1 -1
- package/Libraries/Share/NativeShareModule.js +1 -0
- package/Libraries/Share/Share.js +1 -1
- package/Libraries/StyleSheet/EdgeInsetsPropType.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +1 -1
- package/Libraries/StyleSheet/PointPropType.js +1 -1
- package/Libraries/StyleSheet/Rect.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js +1 -0
- package/Libraries/StyleSheet/StyleSheetTypes.js +0 -1
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/processAspectRatio.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +1 -1
- package/Libraries/StyleSheet/processBoxShadow.js +0 -1
- package/Libraries/StyleSheet/processColor.js +1 -1
- package/Libraries/StyleSheet/processColorArray.js +1 -1
- package/Libraries/StyleSheet/processFilter.js +1 -2
- package/Libraries/StyleSheet/processFontVariant.js +1 -1
- package/Libraries/StyleSheet/processTransform.js +1 -1
- package/Libraries/StyleSheet/processTransformOrigin.js +1 -1
- package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
- package/Libraries/Text/Text.d.ts +1 -2
- package/Libraries/Text/Text.js +255 -246
- package/Libraries/Text/Text.windows.js +282 -301
- package/Libraries/Text/TextAncestor.js +3 -9
- package/Libraries/Text/TextAncestorContext.js +23 -0
- package/Libraries/Text/TextNativeComponent.js +4 -0
- package/Libraries/Text/TextProps.js +2 -5
- package/Libraries/Text/TextProps.windows.js +2 -6
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CodegenTypesNamespace.js +2 -1
- package/Libraries/Types/CoreEventTypes.d.ts +4 -0
- package/Libraries/Types/ReactDevToolsTypes.js +0 -1
- package/Libraries/Utilities/Appearance.js +1 -1
- package/Libraries/Utilities/BackHandler.js.flow +1 -1
- package/Libraries/Utilities/DevLoadingView.js +1 -1
- package/Libraries/Utilities/DeviceInfo.js +1 -1
- package/Libraries/Utilities/Dimensions.js +1 -1
- package/Libraries/Utilities/HMRClient.js +13 -3
- package/Libraries/Utilities/HMRClientProdShim.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +1 -0
- package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -2
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -0
- package/Libraries/Utilities/PerformanceLoggerContext.js +2 -2
- package/Libraries/Utilities/PixelRatio.js +1 -1
- package/Libraries/Utilities/Platform.android.js +2 -5
- package/Libraries/Utilities/Platform.ios.js +2 -5
- package/Libraries/Utilities/Platform.js +1 -1
- package/Libraries/Utilities/Platform.js.flow +2 -2
- package/Libraries/Utilities/Platform.windows.js +2 -5
- package/Libraries/Utilities/PlatformTypes.js +2 -2
- package/Libraries/Utilities/RCTLog.js +1 -1
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +5 -3
- package/Libraries/Utilities/codegenNativeComponent.js +4 -4
- package/Libraries/Utilities/createPerformanceLogger.js +27 -20
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
- package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
- package/Libraries/Utilities/differ/deepDiffer.js +1 -1
- package/Libraries/Utilities/differ/insetsDiffer.js +1 -1
- package/Libraries/Utilities/differ/matricesDiffer.js +1 -1
- package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/mapWithSeparator.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +1 -1
- package/Libraries/Utilities/stringifyViewConfig.js +1 -1
- package/Libraries/Utilities/useColorScheme.js +1 -1
- package/Libraries/Utilities/useWindowDimensions.js +1 -1
- package/Libraries/Utilities/warnOnce.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +1 -0
- package/Libraries/Vibration/Vibration.js +1 -2
- package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
- package/Libraries/WebSocket/WebSocket.js +1 -1
- package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
- package/Libraries/promiseRejectionTrackingOptions.js +1 -1
- package/Libraries/vendor/core/ErrorUtils.js +1 -1
- package/Libraries/vendor/emitter/EventEmitter.js +6 -6
- package/Microsoft.ReactNative/CompositionSwitcher.idl +163 -162
- package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +3 -3
- package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.h +3 -3
- package/Microsoft.ReactNative/Fabric/AbiShadowNode.cpp +2 -1
- package/Microsoft.ReactNative/Fabric/AbiShadowNode.h +2 -2
- package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +3 -3
- package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.cpp +2 -1
- package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +104 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +18 -7
- package/Microsoft.ReactNative/Fabric/Composition/DebuggerUIIsland.cpp +169 -0
- package/Microsoft.ReactNative/Fabric/Composition/DebuggerUIIsland.h +42 -0
- package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +41 -33
- package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +68 -1
- package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +9 -0
- package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +19 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +3 -3
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +108 -24
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +1 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +21 -17
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +4 -4
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +19 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.h +76 -0
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +12 -1
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +6 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +62 -39
- package/Microsoft.ReactNative/Fabric/platform/react/threading/TaskDispatchThread.cpp +75 -24
- package/Microsoft.ReactNative/Fabric/platform/react/threading/TaskDispatchThread.h +4 -25
- package/Microsoft.ReactNative/JsiApi.cpp +1 -1
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -0
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +3 -0
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -2
- package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +0 -1
- package/Microsoft.ReactNative/Modules/CreateModules.cpp +0 -3
- package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +27 -11
- package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +19 -2
- package/Microsoft.ReactNative/QuirkSettings.cpp +16 -0
- package/Microsoft.ReactNative/QuirkSettings.h +3 -0
- package/Microsoft.ReactNative/QuirkSettings.idl +5 -0
- package/Microsoft.ReactNative/ReactHost/DebuggerNotifications.h +54 -0
- package/Microsoft.ReactNative/ReactHost/React.h +11 -4
- package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +199 -29
- package/Microsoft.ReactNative/ReactHost/ReactHost.h +22 -4
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +68 -52
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
- package/Microsoft.ReactNative/ReactRootView.cpp +108 -0
- package/Microsoft.ReactNative/ReactRootView.h +6 -0
- package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +1 -0
- package/Microsoft.ReactNative/Views/DevMenu.cpp +1 -1
- package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +36 -8
- package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +6 -2
- package/Microsoft.ReactNative/Views/ViewManager.h +0 -1
- package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +9 -1
- package/Microsoft.ReactNative.Cxx/JSI/decorator.h +41 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +16 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +125 -0
- package/Microsoft.ReactNative.Cxx/JSI/jsi.h +167 -1
- package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
- package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +110 -38
- package/Microsoft.ReactNative.Cxx/ReactCommon/CallInvoker.h +5 -5
- package/Microsoft.ReactNative.Cxx/ReactCommon/SchedulerPriority.h +0 -2
- package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +0 -19
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Base.h +45 -34
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bool.h +1 -1
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +1 -0
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +36 -33
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Number.h +10 -10
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Promise.h +14 -8
- package/Microsoft.ReactNative.Cxx/node-api/js_native_api.h +44 -31
- package/Microsoft.ReactNative.Cxx/node-api/js_native_api_types.h +13 -14
- package/Microsoft.ReactNative.Cxx/node-api/js_runtime_api.h +19 -4
- package/Microsoft.ReactNative.Cxx/node-api/node_api.h +270 -0
- package/Microsoft.ReactNative.Cxx/node-api/node_api_types.h +52 -0
- package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +13 -4
- package/PropertySheets/External/Microsoft.ReactNative.Cpp.Dependencies.props +10 -0
- package/PropertySheets/Generated/PackageVersion.g.props +4 -4
- package/PropertySheets/JSEngine.props +1 -1
- package/PropertySheets/React.Cpp.props +6 -4
- package/README.md +1 -1
- package/ReactCommon/ReactCommon.vcxproj +29 -21
- package/ReactCommon/ReactCommon.vcxproj.filters +36 -13
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +5 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +6 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +111 -7
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +57 -4
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +17 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp +175 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/Bridging.h +1 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +69 -56
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +35 -18
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +445 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +92 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +35 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +37 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +250 -80
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +528 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/css/CSSTokenizer.h +1 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +9 -12
- package/ReactCommon/cgmanifest.json +1 -1
- package/Scripts/Analyze-Crash.ps1 +87 -3
- package/Scripts/OfficeReact.Win32.nuspec +0 -1
- package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +2 -0
- package/Scripts/Tfs/Start-TestServers.ps1 +2 -1
- package/Scripts/creaternwapp.cmd +10 -6
- package/Scripts/rnw-dependencies.ps1 +33 -4
- package/Shared/CreateModules.h +0 -35
- package/Shared/DevServerHelper.h +13 -3
- package/Shared/DevSettings.h +6 -5
- package/Shared/DevSupportManager.cpp +79 -20
- package/Shared/DevSupportManager.h +7 -19
- package/Shared/Hermes/HermesRuntimeAgentDelegate.cpp +99 -0
- package/Shared/Hermes/HermesRuntimeAgentDelegate.h +81 -0
- package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +274 -0
- package/Shared/Hermes/HermesRuntimeTargetDelegate.h +77 -0
- package/Shared/HermesRuntimeHolder.cpp +29 -111
- package/Shared/HermesRuntimeHolder.h +214 -32
- package/Shared/IDevSupportManager.h +5 -2
- package/Shared/Inspector/ReactInspectorPackagerConnectionDelegate.cpp +108 -0
- package/Shared/Inspector/ReactInspectorPackagerConnectionDelegate.h +19 -0
- package/Shared/Inspector/ReactInspectorThread.h +18 -0
- package/Shared/JSI/RuntimeHolder.h +5 -2
- package/Shared/Modules/BlobModule.cpp +0 -90
- package/Shared/Modules/BlobModule.h +0 -40
- package/Shared/Modules/FileReaderModule.cpp +0 -104
- package/Shared/Modules/FileReaderModule.h +0 -38
- package/Shared/Modules/HttpModule.cpp +0 -172
- package/Shared/Modules/HttpModule.h +0 -47
- package/Shared/Modules/WebSocketModule.cpp +0 -287
- package/Shared/Modules/WebSocketModule.h +1 -94
- package/Shared/OInstance.cpp +45 -139
- package/Shared/OInstance.h +0 -1
- package/Shared/Shared.vcxitems +33 -32
- package/Shared/Shared.vcxitems.filters +38 -51
- package/Shared/TurboModuleManager.cpp +0 -1
- package/codegen/NativeDOMSpec.g.h +6 -0
- package/codegen/NativeDeviceInfoSpec.g.h +2 -0
- package/codegen/NativeIntersectionObserverSpec.g.h +19 -5
- package/codegen/NativeMutationObserverSpec.g.h +4 -4
- package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +159 -93
- package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
- package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
- package/codegen/react/components/rnwcore/ModalHostView.g.h +4 -0
- package/codegen/react/components/rnwcore/Props.cpp +535 -24
- package/codegen/react/components/rnwcore/Props.h +138 -0
- package/codegen/react/components/rnwcore/States.h +9 -78
- package/codegen/react/components/rnwcore/VirtualView.g.h +226 -0
- package/codegen/rnwcoreJSI-generated.cpp +101 -31
- package/codegen/rnwcoreJSI.h +169 -88
- package/include/Shared/II18nModule.h +0 -1
- package/index.js +22 -2
- package/index.windows.js +131 -221
- package/interface.js +1 -1
- package/jest/MockNativeMethods.js +9 -3
- package/jest/RefreshControlMock.js +32 -0
- package/jest/assetFileTransformer.js +1 -0
- package/jest/local-setup.js +4 -3
- package/jest/mock.js +39 -0
- package/jest/mockComponent.js +47 -17
- package/jest/mockNativeComponent.js +26 -15
- package/jest/mocks/AccessibilityInfo.js +62 -0
- package/jest/mocks/ActivityIndicator.js +23 -0
- package/jest/mocks/AppState.js +19 -0
- package/jest/mocks/Clipboard.js +16 -0
- package/jest/mocks/Image.js +23 -0
- package/jest/mocks/InitializeCore.js +9 -0
- package/jest/mocks/Linking.js +28 -0
- package/jest/mocks/Modal.js +33 -0
- package/jest/mocks/NativeComponentRegistry.js +30 -0
- package/jest/mocks/NativeModules.js +239 -0
- package/jest/mocks/RefreshControl.js +31 -0
- package/jest/mocks/RendererProxy.js +45 -0
- package/jest/mocks/ScrollView.js +58 -0
- package/jest/mocks/Text.js +27 -0
- package/jest/mocks/TextInput.js +32 -0
- package/jest/mocks/UIManager.js +60 -0
- package/jest/mocks/Vibration.js +16 -0
- package/jest/mocks/View.js +27 -0
- package/jest/mocks/ViewNativeComponent.js +23 -0
- package/jest/mocks/requireNativeComponent.js +22 -0
- package/{Libraries/Utilities/infoLog.js → jest/mocks/useColorScheme.js} +7 -9
- package/jest/react-native-env.js +1 -0
- package/jest/renderer.js +1 -2
- package/jest/resolver.js +1 -0
- package/jest/setup.js +64 -449
- package/package.json +24 -24
- package/src/private/animated/NativeAnimatedHelper.js +8 -1
- package/src/private/animated/createAnimatedPropsHook.js +14 -4
- package/src/private/animated/createAnimatedPropsMemoHook.js +2 -3
- package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +0 -1
- package/src/private/components/scrollview/HScrollViewNativeComponents.js +0 -1
- package/src/private/components/scrollview/VScrollViewNativeComponents.js +0 -1
- package/src/private/components/virtualview/VirtualView.js +145 -0
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +90 -0
- package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
- package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +1 -1
- package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +0 -1
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +8 -9
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +12 -15
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.windows.js +8 -9
- package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +0 -1
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +0 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +88 -8
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -3
- package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
- package/src/private/setup/setUpPerformanceObserver.js +7 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +8 -5
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +10 -7
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +5 -4
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +7 -4
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +10 -7
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +9 -6
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +15 -6
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +9 -6
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +5 -5
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +1 -0
- package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +9 -6
- package/src/private/styles/composeStyles.js +5 -12
- package/src/private/types/HostInstance.js +1 -1
- package/src/private/webapis/dom/events/Event.js +3 -0
- package/src/private/webapis/dom/events/EventTarget.js +3 -0
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +1 -1
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +7 -24
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +4 -2
- package/src/private/webapis/dom/nodes/ReadOnlyText.js +1 -1
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +1 -1
- 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/internals/Traversal.js +1 -1
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +38 -0
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +4 -1
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +4 -1
- package/src/private/webapis/errors/DOMException.js +166 -0
- package/src/private/webapis/geometry/DOMRect.js +5 -0
- package/src/private/webapis/geometry/DOMRectList.js +4 -1
- package/src/private/webapis/geometry/DOMRectReadOnly.js +6 -0
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +4 -2
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +15 -7
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +3 -0
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +83 -18
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +12 -0
- package/src/private/webapis/mutationobserver/MutationObserver.js +13 -38
- package/src/private/webapis/mutationobserver/MutationRecord.js +3 -0
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +7 -29
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +1 -4
- package/src/private/webapis/performance/EventTiming.js +1 -1
- package/src/private/webapis/performance/LongTasks.js +1 -1
- package/src/private/webapis/performance/MemoryInfo.js +4 -1
- package/src/private/webapis/performance/Performance.js +20 -9
- package/src/private/webapis/performance/PerformanceEntry.js +5 -1
- package/src/private/webapis/performance/PerformanceObserver.js +32 -28
- package/src/private/webapis/performance/ReactNativeStartupTiming.js +4 -1
- package/src/private/webapis/performance/ResourceTiming.js +108 -0
- package/src/private/webapis/performance/UserTiming.js +1 -1
- package/src/private/webapis/performance/internals/RawPerformanceEntry.js +50 -33
- package/src/private/webapis/performance/internals/Utilities.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
- package/src/private/webapis/structuredClone/structuredClone.js +233 -0
- package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
- package/src/private/webapis/webidl/PlatformObjects.js +59 -0
- package/template/metro.config.js +2 -4
- package/templates/cpp-app/metro.config.js +2 -4
- package/templates/cpp-lib/example/metro.config.js +2 -3
- package/templates/cpp-lib/template.config.js +24 -0
- package/templates/cpp-lib/windows/MyLib/MyLib.h +20 -1
- package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +0 -1
- package/types/modules/Devtools.d.ts +23 -9
- package/Libraries/BugReporting/BugReporting.js +0 -140
- package/Libraries/BugReporting/NativeBugReporting.js +0 -13
- package/Libraries/BugReporting/dumpReactTree.js +0 -151
- package/Libraries/BugReporting/getReactData.js +0 -187
- package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +0 -78
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.h +0 -196
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jserrorhandler/JsErrorHandler.cpp +0 -429
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsitooling/react/runtime/JSRuntimeFactory.cpp +0 -45
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsitooling/react/runtime/JSRuntimeFactory.h +0 -91
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/CullingContext.cpp +0 -49
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +0 -191
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +0 -670
- package/Shared/InspectorPackagerConnection.cpp +0 -232
- package/Shared/InspectorPackagerConnection.h +0 -61
- package/Shared/Modules/ExceptionsManagerModule.cpp +0 -209
- package/Shared/Modules/ExceptionsManagerModule.h +0 -32
- package/Shared/Modules/I18nModule.cpp +0 -36
- package/Shared/Modules/I18nModule.h +0 -28
- package/Shared/Modules/NetworkingModule.cpp +0 -432
- package/Shared/Modules/NetworkingModule.h +0 -34
- package/Shared/Modules/PlatformConstantsModule.cpp +0 -60
- package/Shared/Modules/PlatformConstantsModule.h +0 -23
- package/Shared/Modules/SourceCodeModule.cpp +0 -35
- package/Shared/Modules/SourceCodeModule.h +0 -27
- package/Shared/Modules/StatusBarManagerModule.cpp +0 -25
- package/Shared/Modules/StatusBarManagerModule.h +0 -19
- package/codegen/NativeBugReportingSpec.g.h +0 -41
- package/jest/mockModal.js +0 -32
- package/jest/mockScrollView.js +0 -35
- package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +0 -20
- /package/Shared/{HermesSamplingProfiler.cpp → Hermes/HermesSamplingProfiler.cpp} +0 -0
- /package/Shared/{HermesSamplingProfiler.h → Hermes/HermesSamplingProfiler.h} +0 -0
|
@@ -1,178 +1,179 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
3
|
|
|
4
|
-
#include "NamespaceRedirect.h"
|
|
5
4
|
#include "DocString.h"
|
|
5
|
+
#include "NamespaceRedirect.h"
|
|
6
6
|
import "Composition.Input.idl";
|
|
7
7
|
|
|
8
|
-
namespace Microsoft.ReactNative.Composition.Experimental
|
|
8
|
+
namespace Microsoft.ReactNative.Composition.Experimental {
|
|
9
|
+
enum CompositionStretch {
|
|
10
|
+
None,
|
|
11
|
+
Fill,
|
|
12
|
+
Uniform,
|
|
13
|
+
UniformToFill,
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
enum BackfaceVisibility { Inherit, Visible, Hidden };
|
|
17
|
+
|
|
18
|
+
enum AnimationClass {
|
|
19
|
+
None = 0,
|
|
20
|
+
ScrollBar,
|
|
21
|
+
ScrollBarThumbHorizontal,
|
|
22
|
+
ScrollBarThumbVertical,
|
|
23
|
+
SwitchThumb,
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
enum SnapPointsAlignment {
|
|
27
|
+
Near = 0, // Start alignment (left/top)
|
|
28
|
+
Center = 1, // Center alignment
|
|
29
|
+
Far = 2, // End alignment (right/bottom)
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
[webhosthidden][uuid("172def51-9e1a-4e3c-841a-e5a470065acc")] // uuid needed for empty interfaces
|
|
33
|
+
[version(0)][experimental] interface IBrush {}
|
|
34
|
+
|
|
35
|
+
[webhosthidden][experimental] interface IDrawingSurfaceBrush
|
|
36
|
+
requires IBrush
|
|
37
|
+
{
|
|
38
|
+
void HorizontalAlignmentRatio(Single value);
|
|
39
|
+
void VerticalAlignmentRatio(Single value);
|
|
40
|
+
void Stretch(CompositionStretch value);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
[webhosthidden][experimental] interface IDropShadow {
|
|
44
|
+
void Offset(Windows.Foundation.Numerics.Vector3 value);
|
|
45
|
+
void Opacity(Single value);
|
|
46
|
+
void BlurRadius(Single value);
|
|
47
|
+
void Color(Windows.UI.Color value);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
[webhosthidden][experimental] interface IVisual {
|
|
51
|
+
void InsertAt(IVisual visual, Int32 index);
|
|
52
|
+
void Remove(IVisual visual);
|
|
53
|
+
IVisual GetAt(UInt32 index);
|
|
54
|
+
void Opacity(Single opacity);
|
|
55
|
+
void Scale(Windows.Foundation.Numerics.Vector3 scale);
|
|
56
|
+
void TransformMatrix(Windows.Foundation.Numerics.Matrix4x4 transform);
|
|
57
|
+
void RotationAngle(Single angle);
|
|
58
|
+
void IsVisible(Boolean isVisible);
|
|
59
|
+
void Size(Windows.Foundation.Numerics.Vector2 size);
|
|
60
|
+
void Offset(Windows.Foundation.Numerics.Vector3 offset);
|
|
61
|
+
void Offset(Windows.Foundation.Numerics.Vector3 offset, Windows.Foundation.Numerics.Vector3 relativeAdjustment);
|
|
62
|
+
void RelativeSizeWithOffset(
|
|
63
|
+
Windows.Foundation.Numerics.Vector2 size, Windows.Foundation.Numerics.Vector2 relativeSizeAdjustment);
|
|
64
|
+
BackfaceVisibility BackfaceVisibility {
|
|
65
|
+
get;
|
|
66
|
+
set;
|
|
67
|
+
};
|
|
68
|
+
String Comment {
|
|
69
|
+
get;
|
|
70
|
+
set;
|
|
71
|
+
};
|
|
72
|
+
void AnimationClass(AnimationClass value);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
[webhosthidden][experimental] interface ISpriteVisual
|
|
76
|
+
requires IVisual
|
|
77
|
+
{
|
|
78
|
+
void Brush(IBrush brush);
|
|
79
|
+
void Shadow(IDropShadow shadow);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
[webhosthidden][experimental] interface IRoundedRectangleVisual
|
|
83
|
+
requires IVisual
|
|
9
84
|
{
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
85
|
+
void Brush(IBrush brush);
|
|
86
|
+
void CornerRadius(Windows.Foundation.Numerics.Vector2 value);
|
|
87
|
+
void StrokeBrush(IBrush brush);
|
|
88
|
+
void StrokeThickness(Single value);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
[webhosthidden][experimental] interface IScrollPositionChangedArgs {
|
|
92
|
+
Windows.Foundation.Numerics.Vector2 Position {
|
|
93
|
+
get;
|
|
16
94
|
};
|
|
95
|
+
}
|
|
17
96
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
97
|
+
[webhosthidden][experimental] interface IScrollVisual
|
|
98
|
+
requires IVisual
|
|
99
|
+
{
|
|
100
|
+
void Brush(IBrush brush);
|
|
101
|
+
void ScrollEnabled(Boolean isScrollEnabled);
|
|
102
|
+
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollPositionChanged;
|
|
103
|
+
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollBeginDrag;
|
|
104
|
+
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollEndDrag;
|
|
105
|
+
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollMomentumBegin;
|
|
106
|
+
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollMomentumEnd;
|
|
107
|
+
void ContentSize(Windows.Foundation.Numerics.Vector2 size);
|
|
108
|
+
Windows.Foundation.Numerics.Vector3 ScrollPosition {
|
|
109
|
+
get;
|
|
110
|
+
};
|
|
111
|
+
void ScrollBy(Windows.Foundation.Numerics.Vector3 offset, Boolean animate);
|
|
112
|
+
void TryUpdatePosition(Windows.Foundation.Numerics.Vector3 position, Boolean animate);
|
|
113
|
+
void OnPointerPressed(Microsoft.ReactNative.Composition.Input.PointerRoutedEventArgs args);
|
|
114
|
+
void SetDecelerationRate(Windows.Foundation.Numerics.Vector3 decelerationRate);
|
|
115
|
+
void SetMaximumZoomScale(Single maximumZoomScale);
|
|
116
|
+
void SetMinimumZoomScale(Single minimumZoomScale);
|
|
117
|
+
Boolean Horizontal;
|
|
118
|
+
void SetSnapPoints(
|
|
119
|
+
Boolean snapToStart, Boolean snapToEnd, Windows.Foundation.Collections.IVectorView<Single> offsets);
|
|
120
|
+
void PagingEnabled(Boolean pagingEnabled);
|
|
121
|
+
void SnapToInterval(Single interval);
|
|
122
|
+
void SnapToAlignment(SnapPointsAlignment alignment);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
[webhosthidden][experimental] interface IActivityVisual
|
|
126
|
+
requires IVisual
|
|
127
|
+
{
|
|
128
|
+
void Size(Single value);
|
|
129
|
+
void Brush(IBrush brush);
|
|
130
|
+
void StartAnimation();
|
|
131
|
+
void StopAnimation();
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
[webhosthidden][experimental] interface ICaretVisual {
|
|
135
|
+
IVisual InnerVisual {
|
|
136
|
+
get;
|
|
23
137
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
{
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
ScrollBarThumbHorizontal,
|
|
30
|
-
ScrollBarThumbVertical,
|
|
31
|
-
SwitchThumb,
|
|
138
|
+
void Size(Windows.Foundation.Numerics.Vector2 size);
|
|
139
|
+
void Position(Windows.Foundation.Numerics.Vector2 position);
|
|
140
|
+
Boolean IsVisible {
|
|
141
|
+
get;
|
|
142
|
+
set;
|
|
32
143
|
};
|
|
144
|
+
void Brush(IBrush brush);
|
|
145
|
+
}
|
|
33
146
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
[webhosthidden]
|
|
60
|
-
[experimental]
|
|
61
|
-
interface IVisual
|
|
62
|
-
{
|
|
63
|
-
void InsertAt(IVisual visual, Int32 index);
|
|
64
|
-
void Remove(IVisual visual);
|
|
65
|
-
IVisual GetAt(UInt32 index);
|
|
66
|
-
void Opacity(Single opacity);
|
|
67
|
-
void Scale(Windows.Foundation.Numerics.Vector3 scale);
|
|
68
|
-
void TransformMatrix(Windows.Foundation.Numerics.Matrix4x4 transform);
|
|
69
|
-
void RotationAngle(Single angle);
|
|
70
|
-
void IsVisible(Boolean isVisible);
|
|
71
|
-
void Size(Windows.Foundation.Numerics.Vector2 size);
|
|
72
|
-
void Offset(Windows.Foundation.Numerics.Vector3 offset);
|
|
73
|
-
void Offset(Windows.Foundation.Numerics.Vector3 offset, Windows.Foundation.Numerics.Vector3 relativeAdjustment);
|
|
74
|
-
void RelativeSizeWithOffset(Windows.Foundation.Numerics.Vector2 size, Windows.Foundation.Numerics.Vector2 relativeSizeAdjustment);
|
|
75
|
-
BackfaceVisibility BackfaceVisibility{ get; set; };
|
|
76
|
-
String Comment { get; set; };
|
|
77
|
-
void AnimationClass(AnimationClass value);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
[webhosthidden]
|
|
81
|
-
[experimental]
|
|
82
|
-
interface ISpriteVisual requires IVisual
|
|
83
|
-
{
|
|
84
|
-
void Brush(IBrush brush);
|
|
85
|
-
void Shadow(IDropShadow shadow);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
[webhosthidden]
|
|
89
|
-
[experimental]
|
|
90
|
-
interface IRoundedRectangleVisual requires IVisual
|
|
91
|
-
{
|
|
92
|
-
void Brush(IBrush brush);
|
|
93
|
-
void CornerRadius(Windows.Foundation.Numerics.Vector2 value);
|
|
94
|
-
void StrokeBrush(IBrush brush);
|
|
95
|
-
void StrokeThickness(Single value);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
[webhosthidden]
|
|
99
|
-
[experimental]
|
|
100
|
-
interface IScrollPositionChangedArgs
|
|
101
|
-
{
|
|
102
|
-
Windows.Foundation.Numerics.Vector2 Position { get; };
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
[webhosthidden]
|
|
106
|
-
[experimental]
|
|
107
|
-
interface IScrollVisual requires IVisual
|
|
108
|
-
{
|
|
109
|
-
void Brush(IBrush brush);
|
|
110
|
-
void ScrollEnabled(Boolean isScrollEnabled);
|
|
111
|
-
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollPositionChanged;
|
|
112
|
-
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollBeginDrag;
|
|
113
|
-
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollEndDrag;
|
|
114
|
-
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollMomentumBegin;
|
|
115
|
-
event Windows.Foundation.EventHandler<IScrollPositionChangedArgs> ScrollMomentumEnd;
|
|
116
|
-
void ContentSize(Windows.Foundation.Numerics.Vector2 size);
|
|
117
|
-
Windows.Foundation.Numerics.Vector3 ScrollPosition { get; };
|
|
118
|
-
void ScrollBy(Windows.Foundation.Numerics.Vector3 offset, Boolean animate);
|
|
119
|
-
void TryUpdatePosition(Windows.Foundation.Numerics.Vector3 position, Boolean animate);
|
|
120
|
-
void OnPointerPressed(Microsoft.ReactNative.Composition.Input.PointerRoutedEventArgs args);
|
|
121
|
-
void SetDecelerationRate(Windows.Foundation.Numerics.Vector3 decelerationRate);
|
|
122
|
-
void SetMaximumZoomScale(Single maximumZoomScale);
|
|
123
|
-
void SetMinimumZoomScale(Single minimumZoomScale);
|
|
124
|
-
Boolean Horizontal;
|
|
125
|
-
void SetSnapPoints(Boolean snapToStart, Boolean snapToEnd, Windows.Foundation.Collections.IVectorView<Single> offsets);
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
[webhosthidden]
|
|
129
|
-
[experimental]
|
|
130
|
-
interface IActivityVisual requires IVisual
|
|
131
|
-
{
|
|
132
|
-
void Size(Single value);
|
|
133
|
-
void Brush(IBrush brush);
|
|
134
|
-
void StartAnimation();
|
|
135
|
-
void StopAnimation();
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
[webhosthidden]
|
|
139
|
-
[experimental]
|
|
140
|
-
interface ICaretVisual
|
|
141
|
-
{
|
|
142
|
-
IVisual InnerVisual { get; };
|
|
143
|
-
void Size(Windows.Foundation.Numerics.Vector2 size);
|
|
144
|
-
void Position(Windows.Foundation.Numerics.Vector2 position);
|
|
145
|
-
Boolean IsVisible { get; set; };
|
|
146
|
-
void Brush(IBrush brush);
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
[webhosthidden]
|
|
150
|
-
[experimental]
|
|
151
|
-
interface IFocusVisual
|
|
152
|
-
{
|
|
153
|
-
IVisual InnerVisual { get; };
|
|
154
|
-
Boolean IsFocused { get; set; };
|
|
155
|
-
Single ScaleFactor { get; set; };
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
[webhosthidden]
|
|
159
|
-
[experimental]
|
|
160
|
-
interface ICompositionContext
|
|
161
|
-
{
|
|
162
|
-
ISpriteVisual CreateSpriteVisual();
|
|
163
|
-
IScrollVisual CreateScrollerVisual();
|
|
164
|
-
IRoundedRectangleVisual CreateRoundedRectangleVisual();
|
|
165
|
-
IActivityVisual CreateActivityVisual();
|
|
166
|
-
ICaretVisual CreateCaretVisual();
|
|
167
|
-
IFocusVisual CreateFocusVisual();
|
|
168
|
-
IDropShadow CreateDropShadow();
|
|
169
|
-
IBrush CreateColorBrush(Windows.UI.Color color);
|
|
170
|
-
IDrawingSurfaceBrush CreateDrawingSurfaceBrush(Windows.Foundation.Size surfaceSize,
|
|
147
|
+
[webhosthidden][experimental] interface IFocusVisual {
|
|
148
|
+
IVisual InnerVisual {
|
|
149
|
+
get;
|
|
150
|
+
};
|
|
151
|
+
Boolean IsFocused {
|
|
152
|
+
get;
|
|
153
|
+
set;
|
|
154
|
+
};
|
|
155
|
+
Single ScaleFactor {
|
|
156
|
+
get;
|
|
157
|
+
set;
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
[webhosthidden][experimental] interface ICompositionContext {
|
|
162
|
+
ISpriteVisual CreateSpriteVisual();
|
|
163
|
+
IScrollVisual CreateScrollerVisual();
|
|
164
|
+
IRoundedRectangleVisual CreateRoundedRectangleVisual();
|
|
165
|
+
IActivityVisual CreateActivityVisual();
|
|
166
|
+
ICaretVisual CreateCaretVisual();
|
|
167
|
+
IFocusVisual CreateFocusVisual();
|
|
168
|
+
IDropShadow CreateDropShadow();
|
|
169
|
+
IBrush CreateColorBrush(Windows.UI.Color color);
|
|
170
|
+
IDrawingSurfaceBrush CreateDrawingSurfaceBrush(
|
|
171
|
+
Windows.Foundation.Size surfaceSize,
|
|
171
172
|
Windows.Graphics.DirectX.DirectXPixelFormat pixelFormat,
|
|
172
173
|
Windows.Graphics.DirectX.DirectXAlphaMode alphaMode);
|
|
173
174
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
175
|
+
// TODO Add and hook up to rootnode - to notify the tree
|
|
176
|
+
// event Windows.Foundation.EventHandler<RenderingDeviceReplacedArgs> RenderingDeviceReplaced;
|
|
177
|
+
}
|
|
177
178
|
|
|
178
|
-
} // namespace Microsoft.ReactNative.Composition.Experimental
|
|
179
|
+
} // namespace Microsoft.ReactNative.Composition. Experimental
|
|
@@ -55,7 +55,7 @@ std::shared_ptr<facebook::react::ShadowNode> AbiComponentDescriptor::createShado
|
|
|
55
55
|
return shadowNode;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
facebook::react::ShadowNode
|
|
58
|
+
std::shared_ptr<facebook::react::ShadowNode> AbiComponentDescriptor::cloneShadowNode(
|
|
59
59
|
const facebook::react::ShadowNode &sourceShadowNode,
|
|
60
60
|
const facebook::react::ShadowNodeFragment &fragment) const {
|
|
61
61
|
auto shadowNode = std::make_shared<ShadowNodeT>(sourceShadowNode, fragment);
|
|
@@ -69,8 +69,8 @@ facebook::react::ShadowNode::Unshared AbiComponentDescriptor::cloneShadowNode(
|
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
void AbiComponentDescriptor::appendChild(
|
|
72
|
-
const facebook::react::ShadowNode
|
|
73
|
-
const facebook::react::ShadowNode
|
|
72
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &parentShadowNode,
|
|
73
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &childShadowNode) const {
|
|
74
74
|
auto concreteParentShadowNode = std::static_pointer_cast<const ShadowNodeT>(parentShadowNode);
|
|
75
75
|
auto concreteNonConstParentShadowNode = std::const_pointer_cast<ShadowNodeT>(concreteParentShadowNode);
|
|
76
76
|
concreteNonConstParentShadowNode->appendChild(childShadowNode);
|
|
@@ -32,13 +32,13 @@ class AbiComponentDescriptor : public facebook::react::ComponentDescriptor {
|
|
|
32
32
|
std::shared_ptr<facebook::react::ShadowNode> createShadowNode(
|
|
33
33
|
const facebook::react::ShadowNodeFragment &fragment,
|
|
34
34
|
facebook::react::ShadowNodeFamily::Shared const &family) const override;
|
|
35
|
-
facebook::react::ShadowNode
|
|
35
|
+
std::shared_ptr<facebook::react::ShadowNode> cloneShadowNode(
|
|
36
36
|
const facebook::react::ShadowNode &sourceShadowNode,
|
|
37
37
|
const facebook::react::ShadowNodeFragment &fragment) const override;
|
|
38
38
|
|
|
39
39
|
void appendChild(
|
|
40
|
-
const facebook::react::ShadowNode
|
|
41
|
-
const facebook::react::ShadowNode
|
|
40
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &parentShadowNode,
|
|
41
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &childShadowNode) const override;
|
|
42
42
|
virtual facebook::react::Props::Shared cloneProps(
|
|
43
43
|
const facebook::react::PropsParserContext &context,
|
|
44
44
|
const facebook::react::Props::Shared &props,
|
|
@@ -27,7 +27,8 @@ winrt::Microsoft::ReactNative::IComponentProps AbiProps::UserProps() const noexc
|
|
|
27
27
|
return m_componentProps;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
ShadowNode::ShadowNode(facebook::react::ShadowNode
|
|
30
|
+
ShadowNode::ShadowNode(std::shared_ptr<const facebook::react::ShadowNode> shadowNode) noexcept
|
|
31
|
+
: m_shadowNode(shadowNode) {}
|
|
31
32
|
|
|
32
33
|
void ShadowNode::EnsureUnsealed() noexcept {
|
|
33
34
|
if (auto shadowNode = m_shadowNode.lock()) {
|
|
@@ -34,7 +34,7 @@ class AbiProps final : public facebook::react::Props {
|
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
struct ShadowNode : ShadowNodeT<ShadowNode> {
|
|
37
|
-
ShadowNode(facebook::react::ShadowNode
|
|
37
|
+
ShadowNode(std::shared_ptr<const facebook::react::ShadowNode> shadowNode) noexcept;
|
|
38
38
|
|
|
39
39
|
void EnsureUnsealed() noexcept;
|
|
40
40
|
winrt::Windows::Foundation::IInspectable Tag() const noexcept;
|
|
@@ -46,7 +46,7 @@ struct ShadowNode : ShadowNodeT<ShadowNode> {
|
|
|
46
46
|
winrt::Microsoft::ReactNative::EventEmitter EventEmitter() const noexcept;
|
|
47
47
|
|
|
48
48
|
protected:
|
|
49
|
-
facebook::react::ShadowNode
|
|
49
|
+
std::weak_ptr<const facebook::react::ShadowNode> m_shadowNode;
|
|
50
50
|
winrt::Windows::Foundation::IInspectable m_tag;
|
|
51
51
|
};
|
|
52
52
|
|
|
@@ -70,7 +70,7 @@ class ConcreteAbiViewComponentDescriptor : public facebook::react::ComponentDesc
|
|
|
70
70
|
return shadowNode;
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
facebook::react::ShadowNode
|
|
73
|
+
std::shared_ptr<facebook::react::ShadowNode> cloneShadowNode(
|
|
74
74
|
const facebook::react::ShadowNode &sourceShadowNode,
|
|
75
75
|
const facebook::react::ShadowNodeFragment &fragment) const override {
|
|
76
76
|
auto shadowNode = std::make_shared<ShadowNodeT>(sourceShadowNode, fragment);
|
|
@@ -83,8 +83,8 @@ class ConcreteAbiViewComponentDescriptor : public facebook::react::ComponentDesc
|
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
void appendChild(
|
|
86
|
-
const facebook::react::ShadowNode
|
|
87
|
-
const facebook::react::ShadowNode
|
|
86
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &parentShadowNode,
|
|
87
|
+
const std::shared_ptr<const facebook::react::ShadowNode> &childShadowNode) const override {
|
|
88
88
|
auto concreteParentShadowNode = std::static_pointer_cast<const ShadowNodeT>(parentShadowNode);
|
|
89
89
|
auto concreteNonConstParentShadowNode = std::const_pointer_cast<ShadowNodeT>(concreteParentShadowNode);
|
|
90
90
|
concreteNonConstParentShadowNode->appendChild(childShadowNode);
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
|
|
14
14
|
namespace winrt::Microsoft::ReactNative::implementation {
|
|
15
15
|
|
|
16
|
-
YogaLayoutableShadowNode::YogaLayoutableShadowNode(
|
|
16
|
+
YogaLayoutableShadowNode::YogaLayoutableShadowNode(
|
|
17
|
+
std::shared_ptr<const facebook::react::ShadowNode> shadowNode) noexcept
|
|
17
18
|
: base_type(shadowNode) {}
|
|
18
19
|
|
|
19
20
|
void YogaLayoutableShadowNode::Layout(winrt::Microsoft::ReactNative::LayoutContext layoutContext) noexcept {
|
|
@@ -49,7 +49,7 @@ struct LayoutContext : LayoutContextT<LayoutContext> {
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
struct YogaLayoutableShadowNode : YogaLayoutableShadowNodeT<YogaLayoutableShadowNode, implementation::ShadowNode> {
|
|
52
|
-
YogaLayoutableShadowNode(facebook::react::ShadowNode
|
|
52
|
+
YogaLayoutableShadowNode(std::shared_ptr<const facebook::react::ShadowNode> shadowNode) noexcept;
|
|
53
53
|
|
|
54
54
|
void Layout(winrt::Microsoft::ReactNative::LayoutContext layoutContext) noexcept;
|
|
55
55
|
};
|
|
@@ -910,6 +910,31 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
910
910
|
m_snapToOffsets.push_back(offset);
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
|
+
// Match Paper behavior: snapToOffsets disables pagingEnabled and snapToInterval
|
|
914
|
+
if (!m_snapToOffsets.empty()) {
|
|
915
|
+
m_pagingEnabled = false;
|
|
916
|
+
m_snapToInterval = 0.0f;
|
|
917
|
+
}
|
|
918
|
+
ConfigureSnapInertiaModifiers();
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
void PagingEnabled(bool pagingEnabled) noexcept {
|
|
922
|
+
m_pagingEnabled = pagingEnabled;
|
|
923
|
+
ConfigureSnapInertiaModifiers();
|
|
924
|
+
}
|
|
925
|
+
|
|
926
|
+
void SnapToInterval(float interval) noexcept {
|
|
927
|
+
m_snapToInterval = interval;
|
|
928
|
+
// Match Paper behavior: snapToOffsets disables snapToInterval
|
|
929
|
+
if (!m_snapToOffsets.empty()) {
|
|
930
|
+
m_snapToInterval = 0.0f;
|
|
931
|
+
}
|
|
932
|
+
ConfigureSnapInertiaModifiers();
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
void SnapToAlignment(
|
|
936
|
+
winrt::Microsoft::ReactNative::Composition::Experimental::SnapPointsAlignment alignment) noexcept {
|
|
937
|
+
m_snapToAlignment = alignment;
|
|
913
938
|
ConfigureSnapInertiaModifiers();
|
|
914
939
|
}
|
|
915
940
|
|
|
@@ -934,9 +959,13 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
934
959
|
}
|
|
935
960
|
|
|
936
961
|
void Size(winrt::Windows::Foundation::Numerics::float2 const &size) noexcept {
|
|
962
|
+
bool sizeChanged = (m_visualSize.x != size.x || m_visualSize.y != size.y);
|
|
937
963
|
m_visualSize = size;
|
|
938
964
|
m_visual.Size(size);
|
|
939
965
|
UpdateMaxPosition();
|
|
966
|
+
if (sizeChanged && m_pagingEnabled) {
|
|
967
|
+
ConfigureSnapInertiaModifiers();
|
|
968
|
+
}
|
|
940
969
|
}
|
|
941
970
|
|
|
942
971
|
void Offset(winrt::Windows::Foundation::Numerics::float3 const &offset) noexcept {
|
|
@@ -1046,9 +1075,13 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
1046
1075
|
}
|
|
1047
1076
|
|
|
1048
1077
|
void ContentSize(winrt::Windows::Foundation::Numerics::float2 const &size) noexcept {
|
|
1078
|
+
bool sizeChanged = (m_contentSize.x != size.x || m_contentSize.y != size.y);
|
|
1049
1079
|
m_contentSize = size;
|
|
1050
1080
|
m_contentVisual.Size(size);
|
|
1051
1081
|
UpdateMaxPosition();
|
|
1082
|
+
if (sizeChanged && m_pagingEnabled) {
|
|
1083
|
+
ConfigureSnapInertiaModifiers();
|
|
1084
|
+
}
|
|
1052
1085
|
}
|
|
1053
1086
|
|
|
1054
1087
|
winrt::Windows::Foundation::Numerics::float3 ScrollPosition() const noexcept {
|
|
@@ -1155,11 +1188,73 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
1155
1188
|
// Collect and deduplicate all snap positions
|
|
1156
1189
|
std::vector<float> snapPositions;
|
|
1157
1190
|
|
|
1158
|
-
|
|
1159
|
-
|
|
1191
|
+
// Priority: snapToOffsets > snapToInterval > pagingEnabled
|
|
1192
|
+
if (!m_snapToOffsets.empty()) {
|
|
1193
|
+
// Use explicit snap points when snapToOffsets is set (highest priority)
|
|
1194
|
+
if (m_snapToStart) {
|
|
1195
|
+
snapPositions.push_back(0.0f);
|
|
1196
|
+
}
|
|
1197
|
+
snapPositions.insert(snapPositions.end(), m_snapToOffsets.begin(), m_snapToOffsets.end());
|
|
1198
|
+
} else if (m_snapToInterval > 0.0f) {
|
|
1199
|
+
// Generate snap points at interval positions
|
|
1200
|
+
float viewportSize = m_horizontal ? visualSize.x : visualSize.y;
|
|
1201
|
+
float maxScroll =
|
|
1202
|
+
m_horizontal ? std::max(contentSize.x - visualSize.x, 0.0f) : std::max(contentSize.y - visualSize.y, 0.0f);
|
|
1203
|
+
|
|
1204
|
+
// Calculate alignment offset based on snapToAlignment
|
|
1205
|
+
float alignmentOffset = 0.0f;
|
|
1206
|
+
using SnapPointsAlignment = winrt::Microsoft::ReactNative::Composition::Experimental::SnapPointsAlignment;
|
|
1207
|
+
if (m_snapToAlignment == SnapPointsAlignment::Center) {
|
|
1208
|
+
alignmentOffset = -viewportSize / 2.0f;
|
|
1209
|
+
} else if (m_snapToAlignment == SnapPointsAlignment::Far) {
|
|
1210
|
+
alignmentOffset = -viewportSize;
|
|
1211
|
+
}
|
|
1212
|
+
// Near (start) alignment has no offset (alignmentOffset = 0)
|
|
1213
|
+
|
|
1214
|
+
// Generate snap points at interval positions with alignment offset
|
|
1215
|
+
for (float position = alignmentOffset; position <= maxScroll; position += m_snapToInterval) {
|
|
1216
|
+
if (position >= 0.0f) { // Only include positions >= 0
|
|
1217
|
+
snapPositions.push_back(position);
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1220
|
+
|
|
1221
|
+
// Ensure we have at least the start position
|
|
1222
|
+
if (snapPositions.empty() || snapPositions.front() > 0.0f) {
|
|
1223
|
+
snapPositions.insert(snapPositions.begin(), 0.0f);
|
|
1224
|
+
}
|
|
1225
|
+
|
|
1226
|
+
// Ensure the end position is included if not already
|
|
1227
|
+
if (!snapPositions.empty() && snapPositions.back() < maxScroll) {
|
|
1228
|
+
snapPositions.push_back(maxScroll);
|
|
1229
|
+
}
|
|
1230
|
+
} else if (m_pagingEnabled) {
|
|
1231
|
+
// Generate snap points at viewport intervals (paging)
|
|
1232
|
+
float viewportSize = m_horizontal ? visualSize.x : visualSize.y;
|
|
1233
|
+
float maxScroll =
|
|
1234
|
+
m_horizontal ? std::max(contentSize.x - visualSize.x, 0.0f) : std::max(contentSize.y - visualSize.y, 0.0f);
|
|
1235
|
+
|
|
1236
|
+
// Only generate paging snap points if viewport size is valid
|
|
1237
|
+
if (viewportSize > 0 && maxScroll > 0) {
|
|
1238
|
+
// Add snap points at each page (viewport size) interval
|
|
1239
|
+
for (float position = 0.0f; position <= maxScroll; position += viewportSize) {
|
|
1240
|
+
snapPositions.push_back(position);
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
// Ensure the end position is included if not already
|
|
1244
|
+
if (!snapPositions.empty() && snapPositions.back() < maxScroll) {
|
|
1245
|
+
snapPositions.push_back(maxScroll);
|
|
1246
|
+
}
|
|
1247
|
+
} else {
|
|
1248
|
+
// If content fits in viewport or invalid size, just snap to start
|
|
1249
|
+
snapPositions.push_back(0.0f);
|
|
1250
|
+
}
|
|
1251
|
+
} else {
|
|
1252
|
+
// No interval or paging - use explicit snap points only
|
|
1253
|
+
if (m_snapToStart) {
|
|
1254
|
+
snapPositions.push_back(0.0f);
|
|
1255
|
+
}
|
|
1160
1256
|
}
|
|
1161
1257
|
|
|
1162
|
-
snapPositions.insert(snapPositions.end(), m_snapToOffsets.begin(), m_snapToOffsets.end());
|
|
1163
1258
|
std::sort(snapPositions.begin(), snapPositions.end());
|
|
1164
1259
|
snapPositions.erase(std::unique(snapPositions.begin(), snapPositions.end()), snapPositions.end());
|
|
1165
1260
|
|
|
@@ -1222,7 +1317,8 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
1222
1317
|
restingValues.push_back(restingValue);
|
|
1223
1318
|
}
|
|
1224
1319
|
|
|
1225
|
-
|
|
1320
|
+
// Only add snapToEnd handling when NOT using pagingEnabled or snapToInterval (they already include end position)
|
|
1321
|
+
if (m_snapToEnd && !m_pagingEnabled && m_snapToInterval <= 0.0f) {
|
|
1226
1322
|
auto endRestingValue = TTypeRedirects::InteractionTrackerInertiaRestingValue::Create(compositor);
|
|
1227
1323
|
|
|
1228
1324
|
// Create property sets to dynamically compute content - visual size
|
|
@@ -1286,6 +1382,10 @@ struct CompScrollerVisual : winrt::implements<
|
|
|
1286
1382
|
bool m_horizontal{false};
|
|
1287
1383
|
bool m_snapToStart{true};
|
|
1288
1384
|
bool m_snapToEnd{true};
|
|
1385
|
+
bool m_pagingEnabled{false};
|
|
1386
|
+
float m_snapToInterval{0.0f};
|
|
1387
|
+
winrt::Microsoft::ReactNative::Composition::Experimental::SnapPointsAlignment m_snapToAlignment{
|
|
1388
|
+
winrt::Microsoft::ReactNative::Composition::Experimental::SnapPointsAlignment::Near};
|
|
1289
1389
|
std::vector<float> m_snapToOffsets;
|
|
1290
1390
|
bool m_inertia{false};
|
|
1291
1391
|
bool m_custom{false};
|
|
@@ -407,13 +407,24 @@ HRESULT __stdcall CompositionDynamicAutomationProvider::GetPropertyValue(PROPERT
|
|
|
407
407
|
case UIA_IsOffscreenPropertyId: {
|
|
408
408
|
pRetVal->vt = VT_BOOL;
|
|
409
409
|
|
|
410
|
-
//
|
|
411
|
-
bool isOffscreen =
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
if (
|
|
415
|
-
|
|
416
|
-
|
|
410
|
+
// Special handling for modal content - check if component is in a popup/modal window
|
|
411
|
+
bool isOffscreen = true;
|
|
412
|
+
auto clipState = compositionView->getClipState();
|
|
413
|
+
|
|
414
|
+
if (clipState != ClipState::FullyClipped) {
|
|
415
|
+
isOffscreen = false;
|
|
416
|
+
} else {
|
|
417
|
+
// Component appears clipped, but check if it's modal content
|
|
418
|
+
// Modal content may appear clipped due to lack of parent relationships
|
|
419
|
+
// but should still be considered visible if it's in its own window
|
|
420
|
+
if (auto hwnd = compositionView->GetHwndForParenting()) {
|
|
421
|
+
// Check if this window is visible and not minimized
|
|
422
|
+
if (IsWindowVisible(hwnd) && !IsIconic(hwnd)) {
|
|
423
|
+
isOffscreen = false; // Window is visible, so content is not offscreen
|
|
424
|
+
}
|
|
425
|
+
} else {
|
|
426
|
+
// If we can't get window info, fall back to clip state
|
|
427
|
+
isOffscreen = true;
|
|
417
428
|
}
|
|
418
429
|
}
|
|
419
430
|
|