react-native-windows 0.78.6 → 0.79.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 +3 -1
- package/Common/Common.vcxproj +1 -1
- package/Folly/Folly.vcxproj +1 -1
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +39 -18
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
- package/Libraries/Alert/Alert.js +33 -10
- package/Libraries/Alert/Alert.windows.js +34 -12
- package/Libraries/Alert/NativeAlertManager.js +2 -2
- package/Libraries/Alert/RCTAlertManager.android.js +1 -1
- package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
- package/Libraries/Alert/RCTAlertManager.js.flow +18 -0
- package/Libraries/Animated/Animated.js +8 -37
- package/Libraries/Animated/Animated.js.flow +15 -0
- package/Libraries/Animated/AnimatedExports.js +47 -0
- package/Libraries/Animated/AnimatedExports.js.flow +48 -0
- package/Libraries/Animated/AnimatedMock.js +1 -1
- package/Libraries/Animated/NativeAnimatedModule.js +2 -2
- package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
- package/Libraries/Animated/animations/Animation.js +1 -4
- package/Libraries/Animated/createAnimatedComponent.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +1 -0
- package/Libraries/Animated/nodes/AnimatedValue.js +30 -22
- package/Libraries/Animated/useAnimatedProps.js +4 -333
- package/Libraries/Animated/useAnimatedValue.js +1 -3
- package/Libraries/AppState/AppState.js +24 -7
- package/Libraries/AppState/NativeAppState.js +2 -2
- package/Libraries/AppTheme/NativeAppTheme.js +2 -2
- package/Libraries/BatchedBridge/BatchedBridge.js +4 -2
- package/Libraries/BatchedBridge/MessageQueue.js +5 -4
- package/Libraries/BatchedBridge/NativeModules.js +6 -4
- package/Libraries/Blob/Blob.js +5 -5
- package/Libraries/Blob/BlobManager.js +3 -2
- package/Libraries/Blob/BlobRegistry.js +3 -9
- package/Libraries/Blob/File.js +3 -2
- package/Libraries/Blob/FileReader.js +8 -174
- package/Libraries/Blob/FileReader_new.js +231 -0
- package/Libraries/Blob/FileReader_old.js +186 -0
- package/Libraries/Blob/NativeBlobModule.js +2 -2
- package/Libraries/Blob/NativeFileReaderModule.js +2 -2
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +9 -10
- package/Libraries/Blob/URLSearchParams.js.flow +23 -0
- package/Libraries/BugReporting/BugReporting.js +2 -2
- package/Libraries/BugReporting/NativeBugReporting.js +2 -2
- package/Libraries/BugReporting/dumpReactTree.js +2 -2
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +1 -1
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -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 +20 -0
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.windows.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +11 -11
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
- package/Libraries/Components/Button.js +6 -6
- package/Libraries/Components/Button.windows.js +9 -6
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +14 -100
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +64 -3
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +138 -0
- package/Libraries/Components/Flyout/FlyoutNativeComponent.js +1 -1
- package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
- package/Libraries/Components/Keyboard/Keyboard.js +9 -9
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +24 -25
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +7 -5
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
- package/Libraries/Components/Popup/PopupNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.js +28 -73
- package/Libraries/Components/Pressable/Pressable.windows.js +29 -77
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +17 -17
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +4 -47
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +9 -5
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +54 -0
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/RefreshControl.js +17 -14
- package/Libraries/Components/RefreshControl/RefreshControl.windows.js +17 -14
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
- package/Libraries/Components/ScrollView/ScrollView.js +139 -134
- package/Libraries/Components/ScrollView/ScrollView.windows.js +139 -134
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +7 -9
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +9 -8
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +10 -11
- package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
- package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
- package/Libraries/Components/Sound/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +4 -4
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
- package/Libraries/Components/StatusBar/StatusBar.js +57 -31
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
- package/Libraries/Components/Switch/Switch.js +74 -45
- package/Libraries/Components/Switch/Switch.windows.js +74 -45
- package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -35
- package/Libraries/Components/TextInput/InputAccessoryView.js +5 -3
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +2 -4
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -4
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +5 -2
- package/Libraries/Components/TextInput/TextInput.flow.js +131 -121
- package/Libraries/Components/TextInput/TextInput.js +152 -149
- package/Libraries/Components/TextInput/TextInput.windows.js +154 -151
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.js +6 -20
- package/Libraries/Components/TextInput/TextInputState.windows.js +6 -20
- package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +33 -35
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +68 -6
- package/Libraries/Components/ToastAndroid/ToastAndroid.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 +23 -23
- package/Libraries/Components/Touchable/Touchable.windows.js +23 -23
- package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
- package/Libraries/Components/Touchable/TouchableBounce.windows.js +9 -9
- package/Libraries/Components/Touchable/TouchableHighlight.js +44 -23
- package/Libraries/Components/Touchable/TouchableHighlight.windows.js +53 -22
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +102 -54
- package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +102 -54
- package/Libraries/Components/Touchable/TouchableOpacity.js +57 -15
- package/Libraries/Components/Touchable/TouchableOpacity.windows.js +57 -15
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +114 -61
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +129 -74
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +11 -3
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +17 -3
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
- package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +1 -1
- package/Libraries/Components/View/View.js +2 -2
- package/Libraries/Components/View/View.windows.js +4 -4
- package/Libraries/Components/View/ViewAccessibility.js +245 -5
- package/Libraries/Components/View/ViewAccessibility.windows.js +254 -5
- package/Libraries/Components/View/ViewNativeComponent.js +2 -4
- package/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
- package/Libraries/Components/View/ViewPropTypes.js +65 -253
- package/Libraries/Components/View/ViewPropTypes.windows.js +72 -258
- package/Libraries/Core/Devtools/getDevServer.js +1 -3
- package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
- package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +4 -2
- package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
- package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
- package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
- package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +6 -5
- package/Libraries/Core/ExceptionsManager.js +6 -4
- package/Libraries/Core/InitializeCore.js +7 -3
- package/Libraries/Core/NativeExceptionsManager.js +2 -2
- package/Libraries/Core/RawEventEmitter.js +2 -2
- package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +3 -5
- package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +10 -8
- package/Libraries/Core/Timers/NativeTiming.js +2 -2
- package/Libraries/Core/Timers/immediateShim.js +2 -9
- package/Libraries/Core/polyfillPromise.js +1 -1
- package/Libraries/Core/registerCallableModule.js +1 -1
- package/Libraries/Core/setUpAlert.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +13 -8
- package/Libraries/Core/setUpDeveloperTools.js +3 -35
- package/Libraries/Core/setUpErrorHandling.js +2 -2
- package/Libraries/Core/setUpReactDevTools.js +26 -6
- package/Libraries/Core/setUpReactRefresh.js +1 -1
- package/Libraries/Core/setUpTimers.js +45 -66
- package/Libraries/Core/setUpXHR.js +11 -8
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +10 -7
- package/Libraries/EventEmitter/NativeEventEmitter.js +8 -2
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -5
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -2
- package/Libraries/Events/CustomEvent.js +3 -3
- package/Libraries/Events/EventPolyfill.js +2 -2
- package/Libraries/Image/AssetRegistry.js +8 -1
- package/Libraries/Image/AssetSourceResolver.js +4 -4
- package/Libraries/Image/AssetSourceResolver.windows.js +4 -4
- package/Libraries/Image/Image.android.js +4 -2
- package/Libraries/Image/Image.ios.js +1 -1
- package/Libraries/Image/Image.js.flow +27 -0
- package/Libraries/Image/Image.windows.js +1 -2
- package/Libraries/Image/ImageBackground.js +2 -2
- package/Libraries/Image/ImageProps.js +109 -39
- package/Libraries/Image/ImageTypes.flow.js +16 -6
- package/Libraries/Image/ImageViewNativeComponent.js +8 -11
- package/Libraries/Image/NativeImageEditor.js +2 -2
- package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
- package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
- package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
- package/Libraries/Image/NativeImageStoreIOS.js +2 -2
- package/Libraries/Image/RelativeImageStub.js +3 -1
- package/Libraries/Image/TextInlineImageNativeComponent.js +2 -4
- package/Libraries/Image/assetPaths.js +2 -0
- package/Libraries/Image/nativeImageSource.js +3 -3
- package/Libraries/Image/resolveAssetSource.js +4 -2
- package/Libraries/Image/resolveAssetSource.windows.js +5 -3
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +20 -9
- package/Libraries/Interaction/InteractionManagerStub.js +10 -2
- package/Libraries/Interaction/JSEventLoopWatchdog.js +2 -2
- package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
- package/Libraries/Interaction/PanResponder.js +49 -46
- package/Libraries/Interaction/TaskQueue.js +4 -4
- package/Libraries/Interaction/TouchHistoryMath.js +27 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +20 -6
- package/Libraries/Linking/Linking.d.ts +3 -3
- package/Libraries/Linking/Linking.js +10 -9
- package/Libraries/Linking/NativeIntentAndroid.js +2 -2
- package/Libraries/Linking/NativeLinkingManager.js +2 -2
- package/Libraries/Lists/FillRateHelper.js +4 -4
- package/Libraries/Lists/FlatList.js +30 -30
- package/Libraries/Lists/SectionList.js +10 -10
- package/Libraries/Lists/SectionListModern.js +9 -7
- package/Libraries/Lists/ViewabilityHelper.js +4 -3
- package/Libraries/Lists/VirtualizeUtils.js +3 -5
- package/Libraries/Lists/VirtualizedList.js +6 -6
- package/Libraries/Lists/VirtualizedListContext.js +5 -5
- package/Libraries/Lists/VirtualizedSectionList.js +5 -3
- package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +15 -15
- package/Libraries/LogBox/Data/LogBoxLog.js +51 -29
- package/Libraries/LogBox/Data/parseLogBoxLog.js +10 -10
- package/Libraries/LogBox/LogBox.js +22 -2
- package/Libraries/LogBox/LogBoxInspectorContainer.js +3 -3
- package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
- package/Libraries/LogBox/UI/AnsiHighlight.js +7 -3
- package/Libraries/LogBox/UI/LogBoxButton.js +8 -6
- package/Libraries/LogBox/UI/LogBoxInspector.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorBody.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +50 -31
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +50 -31
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +11 -3
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -4
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -4
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.windows.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -2
- package/Libraries/LogBox/UI/LogBoxNotification.js +6 -2
- package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +3 -1
- package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +4 -1
- package/Libraries/Modal/Modal.js +82 -89
- package/Libraries/Modal/Modal.windows.js +85 -89
- package/Libraries/Modal/NativeModalManager.js +2 -2
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
- package/Libraries/NativeComponent/BaseViewConfig.android.js +16 -6
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -9
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +14 -0
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +19 -9
- package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +5 -1
- package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
- package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
- package/Libraries/NativeModules/specs/NativeDialogManagerWindows.js +2 -2
- package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
- package/Libraries/Network/FormData.js +1 -1
- package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
- package/Libraries/Network/NativeNetworkingIOS.js +2 -2
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +44 -0
- package/Libraries/Network/RCTNetworking.windows.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +10 -685
- package/Libraries/Network/XMLHttpRequest_new.js +794 -0
- package/Libraries/Network/XMLHttpRequest_old.js +701 -0
- package/Libraries/Network/convertRequestBody.js +7 -4
- package/Libraries/Network/fetch.js +4 -3
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +65 -63
- package/Libraries/Pressability/HoverState.js +1 -0
- package/Libraries/Pressability/Pressability.js +34 -34
- package/Libraries/Pressability/Pressability.windows.js +34 -34
- package/Libraries/Pressability/PressabilityDebug.js +2 -2
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +2 -2
- package/Libraries/Promise.js +2 -2
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +119 -16
- package/Libraries/ReactNative/AppContainer-dev.js +4 -3
- package/Libraries/ReactNative/AppContainer.js +3 -3
- package/Libraries/ReactNative/AppRegistry.js +4 -4
- package/Libraries/ReactNative/BridgelessUIManager.js +4 -9
- package/Libraries/ReactNative/FabricUIManager.js +22 -10
- package/Libraries/ReactNative/I18nManager.js +4 -3
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
- package/Libraries/ReactNative/NativeI18nManager.js +2 -2
- package/Libraries/ReactNative/NativeUIManager.js +2 -2
- package/Libraries/ReactNative/PaperUIManager.js +6 -6
- package/Libraries/ReactNative/PaperUIManager.windows.js +6 -6
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +7 -5
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -30
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +3 -3
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +3 -3
- package/Libraries/ReactNative/RendererImplementation.js +12 -5
- package/Libraries/ReactNative/RootTag.js +1 -1
- package/Libraries/ReactNative/UIManager.d.ts +1 -0
- package/Libraries/ReactNative/UIManager.js +3 -3
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +10 -9
- package/Libraries/ReactNative/requireNativeComponent.js +3 -2
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +30 -10
- package/Libraries/Renderer/shims/ReactNativeTypes.js +40 -89
- package/Libraries/Settings/NativeSettingsManager.js +2 -2
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/Settings/Settings.js +3 -3
- package/Libraries/Share/NativeShareModule.js +2 -2
- package/Libraries/Share/Share.js +11 -4
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +22 -0
- package/Libraries/StyleSheet/Rect.js +2 -2
- package/Libraries/StyleSheet/StyleSheet.js +4 -3
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
- package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +1 -1
- package/Libraries/StyleSheet/flattenStyle.js +1 -1
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +18 -18
- package/Libraries/StyleSheet/processAspectRatio.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +138 -136
- package/Libraries/StyleSheet/processBoxShadow.js +4 -0
- package/Libraries/StyleSheet/processColor.js +2 -2
- package/Libraries/StyleSheet/processColorArray.js +1 -1
- package/Libraries/StyleSheet/processFilter.js +4 -0
- package/Libraries/StyleSheet/processFontVariant.js +1 -1
- package/Libraries/StyleSheet/processTransform.js +1 -1
- package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
- package/Libraries/Text/Text.d.ts +1 -1
- package/Libraries/Text/Text.js +19 -17
- package/Libraries/Text/Text.windows.js +20 -18
- package/Libraries/Text/TextAncestor.js +2 -3
- package/Libraries/Text/TextNativeComponent.js +3 -3
- package/Libraries/Text/TextProps.js +134 -94
- package/Libraries/Text/TextProps.windows.js +134 -94
- package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
- package/Libraries/Types/CodegenTypes.js +5 -4
- package/Libraries/Types/CoreEventTypes.js +119 -86
- package/Libraries/Types/CoreEventTypes.windows.js +127 -95
- package/Libraries/Types/ReactDevToolsTypes.js +4 -8
- package/Libraries/UTFSequence.js +4 -3
- package/Libraries/Utilities/Appearance.js +0 -8
- package/Libraries/Utilities/BackHandler.android.js +3 -3
- package/Libraries/Utilities/BackHandler.ios.js +7 -7
- package/Libraries/Utilities/BackHandler.js.flow +25 -0
- package/Libraries/Utilities/BackHandler.windows.js +3 -3
- package/Libraries/Utilities/DevLoadingView.js +1 -1
- package/Libraries/Utilities/DevSettings.js +15 -1
- package/Libraries/Utilities/DeviceInfo.js +1 -1
- package/Libraries/Utilities/Dimensions.js +5 -0
- package/Libraries/Utilities/FeatureDetection.js +2 -4
- package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -1
- package/Libraries/Utilities/HMRClient.js +7 -7
- package/Libraries/Utilities/HMRClientProdShim.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +2 -2
- package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
- package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsWin.js +2 -2
- package/Libraries/Utilities/Platform.android.js +6 -6
- package/Libraries/Utilities/Platform.ios.js +6 -6
- package/Libraries/Utilities/{DebugEnvironment.js → Platform.js.flow} +3 -6
- package/Libraries/Utilities/Platform.windows.js +8 -8
- package/Libraries/Utilities/{Platform.flow.windows.js → PlatformTypes.js} +79 -22
- package/Libraries/Utilities/PolyfillFunctions.js +3 -5
- package/Libraries/Utilities/RCTLog.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +6 -6
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +2 -2
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +2 -2
- package/Libraries/Utilities/codegenNativeComponent.js +3 -3
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
- package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
- package/Libraries/Utilities/differ/deepDiffer.js +6 -6
- package/Libraries/Utilities/differ/insetsDiffer.js +3 -3
- package/Libraries/Utilities/differ/matricesDiffer.js +3 -6
- package/Libraries/Utilities/differ/pointsDiffer.js +3 -3
- package/Libraries/Utilities/differ/sizesDiffer.js +3 -3
- package/Libraries/Utilities/dismissKeyboard.js +3 -2
- package/Libraries/Utilities/infoLog.js +1 -1
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/mapWithSeparator.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +2 -2
- package/Libraries/Utilities/warnOnce.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +2 -2
- package/Libraries/Vibration/Vibration.js +4 -4
- package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
- package/Libraries/WebSocket/WebSocket.js +8 -285
- package/Libraries/WebSocket/WebSocketEvent.js +2 -2
- package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
- package/Libraries/WebSocket/WebSocket_new.js +325 -0
- package/Libraries/WebSocket/WebSocket_old.js +297 -0
- package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -4
- package/Libraries/__tests__/ViewWindows-test.js +1 -1
- package/Libraries/vendor/core/ErrorUtils.js +1 -1
- package/Libraries/vendor/emitter/EventEmitter.js +21 -9
- package/Microsoft.ReactNative/Fabric/AbiShadowNode.cpp +4 -4
- package/Microsoft.ReactNative/Fabric/AbiShadowNode.h +5 -5
- package/Microsoft.ReactNative/Fabric/ComponentView.h +6 -5
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +1 -0
- package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +3 -1
- package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +3 -2
- package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +2 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +3 -2
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputEventEmitter.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputEventEmitter.h +2 -2
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +5 -12
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +2 -2
- package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +3 -2
- package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +7 -3
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +10 -1
- package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +2 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.h +2 -2
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +0 -1
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.h +1 -1
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/{TextLayoutManager.cpp → WindowsTextLayoutManager.cpp} +21 -36
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.h +68 -0
- package/Microsoft.ReactNative/IReactModuleBuilder.cpp +0 -8
- package/Microsoft.ReactNative/IReactPackageBuilderFabric.idl +2 -3
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +10 -11
- package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -4
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +1 -1
- package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +3 -3
- package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.props +4 -0
- package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.targets +4 -0
- package/PropertySheets/External/Microsoft.ReactNative.Cpp.PackageReferences.props +4 -14
- package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +1 -1
- package/PropertySheets/Generated/PackageVersion.g.props +4 -4
- package/PropertySheets/NuGet.LockFile.props +9 -1
- package/PropertySheets/React.Cpp.props +11 -3
- package/ReactCommon/ReactCommon.vcxproj +20 -5
- package/ReactCommon/ReactCommon.vcxproj.filters +12 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +14 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.h +16 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +58 -8
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +15 -4
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +2 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/Bridging.h +3 -3
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +214 -110
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +129 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +1404 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/css/CSSHexColor.h +104 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/css/CSSTokenizer.h +277 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/CullingContext.cpp +49 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +191 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +0 -8
- package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +96 -0
- package/Scripts/Microsoft.ReactNative.Managed.CodeGen.nuspec +1 -1
- package/Scripts/Microsoft.ReactNative.Managed.nuspec +23 -23
- package/Scripts/Microsoft.ReactNative.VersionCheck.targets +0 -2
- package/Scripts/Microsoft.ReactNative.nuspec +34 -29
- package/Scripts/Microsoft.ReactNative.targets +8 -5
- package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +22 -7
- package/Scripts/OfficeReact.Win32.nuspec +16 -16
- package/Scripts/creaternwapp.cmd +177 -0
- package/Scripts/creaternwlib.cmd +176 -0
- package/Shared/HermesRuntimeHolder.cpp +15 -3
- package/Shared/HermesRuntimeHolder.h +16 -1
- package/Shared/Shared.vcxitems +8 -5
- package/Shared/Shared.vcxitems.filters +3 -3
- package/codegen/NativeDOMSpec.g.h +67 -61
- package/codegen/NativeDevMenuSpec.g.h +3 -9
- package/codegen/NativeDevSettingsSpec.g.h +13 -19
- package/codegen/NativePlatformConstantsWindowsSpec.g.h +7 -7
- package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +108 -120
- package/codegen/NativeUIManagerSpec.g.h +3 -3
- package/codegen/rnwcoreJSI-generated.cpp +90 -179
- package/codegen/rnwcoreJSI.h +226 -400
- package/index.js +153 -237
- package/index.windows.js +61 -57
- package/jest/mockScrollView.js +1 -1
- package/jest/setup.js +314 -264
- package/package.json +27 -28
- package/src/private/animated/createAnimatedPropsHook.js +360 -0
- package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
- package/src/private/components/HScrollViewNativeComponents.js +2 -2
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
- package/src/private/components/VScrollViewNativeComponents.js +1 -1
- package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
- package/src/private/debugging/ReactDevToolsSettingsManager.windows.js +1 -1
- package/src/private/devmenu/DevMenu.js +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +53 -75
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +5 -7
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +10 -12
- package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
- package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
- package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +9 -8
- package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +20 -15
- package/{Libraries/Inspector → src/private/inspector}/Inspector.js +21 -18
- package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +11 -10
- package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +17 -15
- package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +43 -27
- package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +8 -6
- package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +11 -10
- package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
- package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +5 -2
- package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +6 -6
- package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +5 -4
- package/src/private/renderer/errorhandling/ErrorHandlers.js +5 -5
- package/src/private/setup/setUpDOM.js +43 -3
- package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +5 -5
- package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +5 -5
- package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +8 -8
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerWindows.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +9 -9
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +5 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsWindows.js +3 -8
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +6 -6
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +184 -0
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +1 -1
- package/src/private/types/HostComponent.js +16 -0
- package/src/private/types/HostInstance.js +50 -0
- package/src/private/webapis/dom/events/CustomEvent.js +38 -0
- package/src/private/webapis/dom/events/Event.js +236 -0
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
- package/src/private/webapis/dom/events/EventTarget.js +436 -0
- package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
- package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +121 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +82 -51
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +7 -6
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +26 -26
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +56 -78
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
- package/src/private/webapis/html/events/MessageEvent.js +56 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +6 -6
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
- package/src/private/webapis/intersectionobserver/{IntersectionObserverManager.js → internals/IntersectionObserverManager.js} +20 -17
- package/src/private/webapis/mutationobserver/MutationObserver.js +11 -11
- package/src/private/webapis/mutationobserver/{MutationObserverManager.js → internals/MutationObserverManager.js} +12 -14
- package/src/private/webapis/performance/EventTiming.js +1 -1
- package/src/private/webapis/performance/Performance.js +3 -3
- package/src/private/webapis/performance/PerformanceObserver.js +8 -8
- package/src/private/webapis/performance/{RawPerformanceEntry.js → internals/RawPerformanceEntry.js} +6 -6
- package/src/private/webapis/performance/{Utilities.js → internals/Utilities.js} +1 -1
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +1 -1
- package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
- package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
- package/src/types/globals.d.ts +628 -0
- package/templates/cpp-app/template.config.js +2 -2
- package/templates/cpp-app/windows/_gitignore +5 -0
- package/templates/cpp-lib/template.config.js +2 -2
- package/templates/cpp-lib/windows/MyLib/MyLib.cpp +1 -1
- package/templates/cpp-lib/windows/MyLib/MyLib.h +2 -0
- package/templates/cpp-lib/windows/_gitignore +5 -0
- package/templates/old/generateWrapper.js +8 -22
- package/templates/old/uwp-cpp-app/template.config.js +1 -1
- package/templates/old/uwp-cs-app/template.config.js +1 -1
- package/types/index.d.ts +2 -58
- package/Libraries/Animated/AnimatedWeb.js +0 -26
- package/Libraries/JSInspector/InspectorAgent.js +0 -27
- package/Libraries/JSInspector/JSInspector.js +0 -33
- package/Libraries/JSInspector/NetworkAgent.js +0 -295
- package/Libraries/Utilities/Platform.flow.js +0 -91
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
- package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformTouch.h +0 -10
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Float.h +0 -20
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -117
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/textinput/TextInputState.h +0 -73
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/ImageRequestParams.h +0 -30
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +0 -60
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/primitives.h +0 -179
- package/codegen/NativeCPUTimeSpec.g.h +0 -41
- package/codegen/NativeFantomSpec.g.h +0 -78
- package/src/private/specs/modules/NativeCPUTime.js +0 -24
- package/src/private/specs/modules/NativeFantom.js +0 -37
- package/src/private/specs/modules/NativeUIManager.js +0 -111
- package/templates/old/uwp-cpp-lib/template.config.js +0 -15
- package/templates/old/uwp-cs-lib/template.config.js +0 -15
- package/types/modules/globals.d.ts +0 -599
- /package/ReactCommon/TEMP_UntilReactCommonUpdate/{react → jsitooling/react}/runtime/JSRuntimeFactory.cpp +0 -0
- /package/ReactCommon/TEMP_UntilReactCommonUpdate/{react → jsitooling/react}/runtime/JSRuntimeFactory.h +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppTheme.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
- /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
- /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
|
@@ -10,25 +10,32 @@
|
|
|
10
10
|
|
|
11
11
|
// flowlint unsafe-getters-setters:off
|
|
12
12
|
|
|
13
|
-
import type {
|
|
14
|
-
InternalInstanceHandle,
|
|
15
|
-
Node as ShadowNode,
|
|
16
|
-
} from '../../../../../Libraries/Renderer/shims/ReactNativeTypes';
|
|
17
13
|
import type NodeList from '../oldstylecollections/NodeList';
|
|
14
|
+
import type {InstanceHandle} from './internals/NodeInternals';
|
|
15
|
+
import type ReactNativeDocument from './ReactNativeDocument';
|
|
18
16
|
import type ReadOnlyElement from './ReadOnlyElement';
|
|
19
17
|
|
|
18
|
+
import * as ReactNativeFeatureFlags from '../../../featureflags/ReactNativeFeatureFlags';
|
|
20
19
|
import {createNodeList} from '../oldstylecollections/NodeList';
|
|
20
|
+
import {
|
|
21
|
+
getNativeNodeReference,
|
|
22
|
+
getOwnerDocument,
|
|
23
|
+
getPublicInstanceFromInstanceHandle,
|
|
24
|
+
setInstanceHandle,
|
|
25
|
+
setOwnerDocument,
|
|
26
|
+
} from './internals/NodeInternals';
|
|
21
27
|
import NativeDOM from './specs/NativeDOM';
|
|
22
28
|
|
|
23
|
-
// We initialize this lazily to avoid a require cycle
|
|
24
|
-
// (`ReadOnlyElement` also depends on `ReadOnlyNode`).
|
|
25
|
-
let ReadOnlyElementClass: Class<ReadOnlyElement>;
|
|
26
|
-
|
|
27
29
|
export default class ReadOnlyNode {
|
|
28
|
-
constructor(
|
|
30
|
+
constructor(
|
|
31
|
+
instanceHandle: InstanceHandle,
|
|
32
|
+
// This will be null for the document node itself.
|
|
33
|
+
ownerDocument: ReactNativeDocument | null,
|
|
34
|
+
) {
|
|
29
35
|
// This constructor is inlined in `ReactNativeElement` so if you modify
|
|
30
36
|
// this make sure that their implementation stays in sync.
|
|
31
|
-
|
|
37
|
+
setOwnerDocument(this, ownerDocument);
|
|
38
|
+
setInstanceHandle(this, instanceHandle);
|
|
32
39
|
}
|
|
33
40
|
|
|
34
41
|
get childNodes(): NodeList<ReadOnlyNode> {
|
|
@@ -47,7 +54,7 @@ export default class ReadOnlyNode {
|
|
|
47
54
|
}
|
|
48
55
|
|
|
49
56
|
get isConnected(): boolean {
|
|
50
|
-
const shadowNode =
|
|
57
|
+
const shadowNode = getNativeNodeReference(this);
|
|
51
58
|
|
|
52
59
|
if (shadowNode == null) {
|
|
53
60
|
return false;
|
|
@@ -104,15 +111,14 @@ export default class ReadOnlyNode {
|
|
|
104
111
|
);
|
|
105
112
|
}
|
|
106
113
|
|
|
114
|
+
get ownerDocument(): ReactNativeDocument | null {
|
|
115
|
+
return getOwnerDocument(this);
|
|
116
|
+
}
|
|
117
|
+
|
|
107
118
|
get parentElement(): ReadOnlyElement | null {
|
|
108
119
|
const parentNode = this.parentNode;
|
|
109
120
|
|
|
110
|
-
if (
|
|
111
|
-
// We initialize this lazily to avoid a require cycle.
|
|
112
|
-
ReadOnlyElementClass = require('./ReadOnlyElement').default;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
if (parentNode instanceof ReadOnlyElementClass) {
|
|
121
|
+
if (parentNode instanceof getReadOnlyElementClass()) {
|
|
116
122
|
return parentNode;
|
|
117
123
|
}
|
|
118
124
|
|
|
@@ -120,7 +126,7 @@ export default class ReadOnlyNode {
|
|
|
120
126
|
}
|
|
121
127
|
|
|
122
128
|
get parentNode(): ReadOnlyNode | null {
|
|
123
|
-
const shadowNode =
|
|
129
|
+
const shadowNode = getNativeNodeReference(this);
|
|
124
130
|
|
|
125
131
|
if (shadowNode == null) {
|
|
126
132
|
return null;
|
|
@@ -132,9 +138,7 @@ export default class ReadOnlyNode {
|
|
|
132
138
|
return null;
|
|
133
139
|
}
|
|
134
140
|
|
|
135
|
-
return (
|
|
136
|
-
getPublicInstanceFromInternalInstanceHandle(parentInstanceHandle) ?? null
|
|
137
|
-
);
|
|
141
|
+
return getPublicInstanceFromInstanceHandle(parentInstanceHandle) ?? null;
|
|
138
142
|
}
|
|
139
143
|
|
|
140
144
|
get previousSibling(): ReadOnlyNode | null {
|
|
@@ -151,7 +155,7 @@ export default class ReadOnlyNode {
|
|
|
151
155
|
/**
|
|
152
156
|
* @abstract
|
|
153
157
|
*/
|
|
154
|
-
get textContent(): string
|
|
158
|
+
get textContent(): string {
|
|
155
159
|
throw new TypeError(
|
|
156
160
|
'`textContent` is abstract and must be implemented in a subclass of `ReadOnlyNode`',
|
|
157
161
|
);
|
|
@@ -163,8 +167,8 @@ export default class ReadOnlyNode {
|
|
|
163
167
|
return 0;
|
|
164
168
|
}
|
|
165
169
|
|
|
166
|
-
const shadowNode =
|
|
167
|
-
const otherShadowNode =
|
|
170
|
+
const shadowNode = getNativeNodeReference(this);
|
|
171
|
+
const otherShadowNode = getNativeNodeReference(otherNode);
|
|
168
172
|
|
|
169
173
|
if (shadowNode == null || otherShadowNode == null) {
|
|
170
174
|
return ReadOnlyNode.DOCUMENT_POSITION_DISCONNECTED;
|
|
@@ -184,16 +188,25 @@ export default class ReadOnlyNode {
|
|
|
184
188
|
}
|
|
185
189
|
|
|
186
190
|
getRootNode(): ReadOnlyNode {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
191
|
+
if (ReactNativeFeatureFlags.enableDOMDocumentAPI()) {
|
|
192
|
+
if (this.isConnected) {
|
|
193
|
+
// If this is the document node, then the root node is itself.
|
|
194
|
+
return this.ownerDocument ?? this;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
return this;
|
|
198
|
+
} else {
|
|
199
|
+
// eslint-disable-next-line consistent-this
|
|
200
|
+
let lastKnownParent: ReadOnlyNode = this;
|
|
201
|
+
let nextPossibleParent: ?ReadOnlyNode = this.parentNode;
|
|
202
|
+
|
|
203
|
+
while (nextPossibleParent != null) {
|
|
204
|
+
lastKnownParent = nextPossibleParent;
|
|
205
|
+
nextPossibleParent = nextPossibleParent.parentNode;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
return lastKnownParent;
|
|
194
209
|
}
|
|
195
|
-
|
|
196
|
-
return lastKnownParent;
|
|
197
210
|
}
|
|
198
211
|
|
|
199
212
|
hasChildNodes(): boolean {
|
|
@@ -237,7 +250,7 @@ export default class ReadOnlyNode {
|
|
|
237
250
|
*/
|
|
238
251
|
static COMMENT_NODE: number = 8;
|
|
239
252
|
/**
|
|
240
|
-
*
|
|
253
|
+
* Document nodes.
|
|
241
254
|
*/
|
|
242
255
|
static DOCUMENT_NODE: number = 9;
|
|
243
256
|
/**
|
|
@@ -288,41 +301,10 @@ export default class ReadOnlyNode {
|
|
|
288
301
|
static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number = 32;
|
|
289
302
|
}
|
|
290
303
|
|
|
291
|
-
const INSTANCE_HANDLE_KEY = Symbol('internalInstanceHandle');
|
|
292
|
-
|
|
293
|
-
export function getInstanceHandle(node: ReadOnlyNode): InternalInstanceHandle {
|
|
294
|
-
// $FlowExpectedError[prop-missing]
|
|
295
|
-
return node[INSTANCE_HANDLE_KEY];
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
export function setInstanceHandle(
|
|
299
|
-
node: ReadOnlyNode,
|
|
300
|
-
instanceHandle: InternalInstanceHandle,
|
|
301
|
-
): void {
|
|
302
|
-
// $FlowExpectedError[prop-missing]
|
|
303
|
-
node[INSTANCE_HANDLE_KEY] = instanceHandle;
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
let RendererProxy;
|
|
307
|
-
function getRendererProxy() {
|
|
308
|
-
if (RendererProxy == null) {
|
|
309
|
-
// Lazy import Fabric here to avoid DOM Node APIs classes from having side-effects.
|
|
310
|
-
// With a static import we can't use these classes for Paper-only variants.
|
|
311
|
-
RendererProxy = require('../../../../../Libraries/ReactNative/RendererProxy');
|
|
312
|
-
}
|
|
313
|
-
return RendererProxy;
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
export function getShadowNode(node: ReadOnlyNode): ?ShadowNode {
|
|
317
|
-
return getRendererProxy().getNodeFromInternalInstanceHandle(
|
|
318
|
-
getInstanceHandle(node),
|
|
319
|
-
);
|
|
320
|
-
}
|
|
321
|
-
|
|
322
304
|
export function getChildNodes(
|
|
323
305
|
node: ReadOnlyNode,
|
|
324
306
|
): $ReadOnlyArray<ReadOnlyNode> {
|
|
325
|
-
const shadowNode =
|
|
307
|
+
const shadowNode = getNativeNodeReference(node);
|
|
326
308
|
|
|
327
309
|
if (shadowNode == null) {
|
|
328
310
|
return [];
|
|
@@ -330,9 +312,7 @@ export function getChildNodes(
|
|
|
330
312
|
|
|
331
313
|
const childNodeInstanceHandles = NativeDOM.getChildNodes(shadowNode);
|
|
332
314
|
return childNodeInstanceHandles
|
|
333
|
-
.map(instanceHandle =>
|
|
334
|
-
getPublicInstanceFromInternalInstanceHandle(instanceHandle),
|
|
335
|
-
)
|
|
315
|
+
.map(instanceHandle => getPublicInstanceFromInstanceHandle(instanceHandle))
|
|
336
316
|
.filter(Boolean);
|
|
337
317
|
}
|
|
338
318
|
|
|
@@ -355,13 +335,11 @@ function getNodeSiblingsAndPosition(
|
|
|
355
335
|
return [siblings, position];
|
|
356
336
|
}
|
|
357
337
|
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
)
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
// $FlowExpectedError[incompatible-return] React defines public instances as "mixed" because it can't access the definition from React Native.
|
|
366
|
-
return mixedPublicInstance;
|
|
338
|
+
let ReadOnlyElementClass;
|
|
339
|
+
function getReadOnlyElementClass(): Class<ReadOnlyElement> {
|
|
340
|
+
if (ReadOnlyElementClass == null) {
|
|
341
|
+
// We initialize this lazily to avoid a require cycle.
|
|
342
|
+
ReadOnlyElementClass = require('./ReadOnlyElement').default;
|
|
343
|
+
}
|
|
344
|
+
return ReadOnlyElementClass;
|
|
367
345
|
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
* @flow strict-local
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type {InternalInstanceHandle} from '../../../../../../Libraries/Renderer/shims/ReactNativeTypes';
|
|
12
|
+
import type ReactNativeDocument from '../ReactNativeDocument';
|
|
13
|
+
import type ReadOnlyCharacterData from '../ReadOnlyCharacterData';
|
|
14
|
+
import type ReadOnlyElement from '../ReadOnlyElement';
|
|
15
|
+
import type ReadOnlyNode from '../ReadOnlyNode';
|
|
16
|
+
import type {
|
|
17
|
+
NativeElementReference,
|
|
18
|
+
NativeNodeReference,
|
|
19
|
+
NativeTextReference,
|
|
20
|
+
} from '../specs/NativeDOM';
|
|
21
|
+
import type {ReactNativeDocumentElementInstanceHandle} from './ReactNativeDocumentElementInstanceHandle';
|
|
22
|
+
import type {ReactNativeDocumentInstanceHandle} from './ReactNativeDocumentInstanceHandle';
|
|
23
|
+
|
|
24
|
+
import {
|
|
25
|
+
getNativeElementReferenceFromReactNativeDocumentElementInstanceHandle,
|
|
26
|
+
getPublicInstanceFromReactNativeDocumentElementInstanceHandle,
|
|
27
|
+
isReactNativeDocumentElementInstanceHandle,
|
|
28
|
+
} from './ReactNativeDocumentElementInstanceHandle';
|
|
29
|
+
import {
|
|
30
|
+
getNativeNodeReferenceFromReactNativeDocumentInstanceHandle,
|
|
31
|
+
getPublicInstanceFromReactNativeDocumentInstanceHandle,
|
|
32
|
+
isReactNativeDocumentInstanceHandle,
|
|
33
|
+
} from './ReactNativeDocumentInstanceHandle';
|
|
34
|
+
|
|
35
|
+
export type InstanceHandle =
|
|
36
|
+
| InternalInstanceHandle // component managed by React
|
|
37
|
+
| ReactNativeDocumentElementInstanceHandle // root element managed by React Native
|
|
38
|
+
| ReactNativeDocumentInstanceHandle; // document node managed by React Native
|
|
39
|
+
|
|
40
|
+
let RendererProxy;
|
|
41
|
+
function getRendererProxy() {
|
|
42
|
+
if (RendererProxy == null) {
|
|
43
|
+
// Lazy import Fabric here to avoid DOM Node APIs classes from having side-effects.
|
|
44
|
+
// With a static import we can't use these classes for Paper-only variants.
|
|
45
|
+
RendererProxy = require('../../../../../../Libraries/ReactNative/RendererProxy');
|
|
46
|
+
}
|
|
47
|
+
return RendererProxy;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const INSTANCE_HANDLE_KEY = Symbol('internalInstanceHandle');
|
|
51
|
+
const OWNER_DOCUMENT_KEY = Symbol('ownerDocument');
|
|
52
|
+
|
|
53
|
+
export function getInstanceHandle(node: ReadOnlyNode): InstanceHandle {
|
|
54
|
+
// $FlowExpectedError[prop-missing]
|
|
55
|
+
return node[INSTANCE_HANDLE_KEY];
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function setInstanceHandle(
|
|
59
|
+
node: ReadOnlyNode,
|
|
60
|
+
instanceHandle: InstanceHandle,
|
|
61
|
+
): void {
|
|
62
|
+
// $FlowExpectedError[prop-missing]
|
|
63
|
+
node[INSTANCE_HANDLE_KEY] = instanceHandle;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export function getOwnerDocument(
|
|
67
|
+
node: ReadOnlyNode,
|
|
68
|
+
): ReactNativeDocument | null {
|
|
69
|
+
// $FlowExpectedError[prop-missing]
|
|
70
|
+
return node[OWNER_DOCUMENT_KEY] ?? null;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export function setOwnerDocument(
|
|
74
|
+
node: ReadOnlyNode,
|
|
75
|
+
ownerDocument: ReactNativeDocument | null,
|
|
76
|
+
): void {
|
|
77
|
+
// $FlowExpectedError[prop-missing]
|
|
78
|
+
node[OWNER_DOCUMENT_KEY] = ownerDocument;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export function getPublicInstanceFromInstanceHandle(
|
|
82
|
+
instanceHandle: InstanceHandle,
|
|
83
|
+
): ?ReadOnlyNode {
|
|
84
|
+
if (isReactNativeDocumentInstanceHandle(instanceHandle)) {
|
|
85
|
+
return getPublicInstanceFromReactNativeDocumentInstanceHandle(
|
|
86
|
+
instanceHandle,
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (isReactNativeDocumentElementInstanceHandle(instanceHandle)) {
|
|
91
|
+
return getPublicInstanceFromReactNativeDocumentElementInstanceHandle(
|
|
92
|
+
instanceHandle,
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const mixedPublicInstance =
|
|
97
|
+
getRendererProxy().getPublicInstanceFromInternalInstanceHandle(
|
|
98
|
+
instanceHandle,
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
// $FlowExpectedError[incompatible-return] React defines public instances as "mixed" because it can't access the definition from React Native.
|
|
102
|
+
return mixedPublicInstance;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export function getNativeNodeReference(
|
|
106
|
+
node: ReadOnlyNode,
|
|
107
|
+
): ?NativeNodeReference {
|
|
108
|
+
const instanceHandle = getInstanceHandle(node);
|
|
109
|
+
|
|
110
|
+
if (isReactNativeDocumentInstanceHandle(instanceHandle)) {
|
|
111
|
+
return getNativeNodeReferenceFromReactNativeDocumentInstanceHandle(
|
|
112
|
+
instanceHandle,
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (isReactNativeDocumentElementInstanceHandle(instanceHandle)) {
|
|
117
|
+
return getNativeElementReferenceFromReactNativeDocumentElementInstanceHandle(
|
|
118
|
+
instanceHandle,
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// $FlowExpectedError[incompatible-return]
|
|
123
|
+
return getRendererProxy().getNodeFromInternalInstanceHandle(instanceHandle);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export function getNativeElementReference(
|
|
127
|
+
node: ReadOnlyElement,
|
|
128
|
+
): ?NativeElementReference {
|
|
129
|
+
// $FlowExpectedError[incompatible-cast] We know ReadOnlyElement instances provide InternalInstanceHandle
|
|
130
|
+
const instanceHandle = getInstanceHandle(node) as InternalInstanceHandle;
|
|
131
|
+
|
|
132
|
+
// $FlowExpectedError[incompatible-return]
|
|
133
|
+
return getRendererProxy().getNodeFromInternalInstanceHandle(instanceHandle);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export function getNativeTextReference(
|
|
137
|
+
node: ReadOnlyCharacterData,
|
|
138
|
+
): ?NativeTextReference {
|
|
139
|
+
// $FlowExpectedError[incompatible-cast] We know ReadOnlyText instances provide InternalInstanceHandle
|
|
140
|
+
const instanceHandle = getInstanceHandle(node) as InternalInstanceHandle;
|
|
141
|
+
|
|
142
|
+
// $FlowExpectedError[incompatible-return]
|
|
143
|
+
return getRendererProxy().getNodeFromInternalInstanceHandle(instanceHandle);
|
|
144
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
* @flow strict-local
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type ReadOnlyNode from '../ReadOnlyNode';
|
|
12
|
+
import type {NativeElementReference} from '../specs/NativeDOM';
|
|
13
|
+
|
|
14
|
+
class ReactNativeDocumentElementInstanceHandleImpl {
|
|
15
|
+
publicInstance: ?ReadOnlyNode;
|
|
16
|
+
nativeElementReference: ?NativeElementReference;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export opaque type ReactNativeDocumentElementInstanceHandle = ReactNativeDocumentElementInstanceHandleImpl;
|
|
20
|
+
|
|
21
|
+
export function createReactNativeDocumentElementInstanceHandle(): ReactNativeDocumentElementInstanceHandle {
|
|
22
|
+
return new ReactNativeDocumentElementInstanceHandleImpl();
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function getNativeElementReferenceFromReactNativeDocumentElementInstanceHandle(
|
|
26
|
+
instanceHandle: ReactNativeDocumentElementInstanceHandle,
|
|
27
|
+
): ?NativeElementReference {
|
|
28
|
+
return instanceHandle.nativeElementReference;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function setNativeElementReferenceForReactNativeDocumentElementInstanceHandle(
|
|
32
|
+
instanceHandle: ReactNativeDocumentElementInstanceHandle,
|
|
33
|
+
nativeElementReference: ?NativeElementReference,
|
|
34
|
+
): void {
|
|
35
|
+
instanceHandle.nativeElementReference = nativeElementReference;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export function getPublicInstanceFromReactNativeDocumentElementInstanceHandle(
|
|
39
|
+
instanceHandle: ReactNativeDocumentElementInstanceHandle,
|
|
40
|
+
): ?ReadOnlyNode {
|
|
41
|
+
return instanceHandle.publicInstance;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function setPublicInstanceForReactNativeDocumentElementInstanceHandle(
|
|
45
|
+
instanceHandle: ReactNativeDocumentElementInstanceHandle,
|
|
46
|
+
publicInstance: ?ReadOnlyNode,
|
|
47
|
+
): void {
|
|
48
|
+
instanceHandle.publicInstance = publicInstance;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function isReactNativeDocumentElementInstanceHandle(
|
|
52
|
+
instanceHandle: mixed,
|
|
53
|
+
): instanceHandle is ReactNativeDocumentElementInstanceHandle {
|
|
54
|
+
return instanceHandle instanceof ReactNativeDocumentElementInstanceHandleImpl;
|
|
55
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
* @flow strict-local
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type {RootTag} from '../../../../../../Libraries/ReactNative/RootTag';
|
|
12
|
+
import type ReactNativeDocument from '../ReactNativeDocument';
|
|
13
|
+
import type {NativeNodeReference} from '../specs/NativeDOM';
|
|
14
|
+
|
|
15
|
+
import * as RendererProxy from '../../../../../../Libraries/ReactNative/RendererProxy';
|
|
16
|
+
|
|
17
|
+
export opaque type ReactNativeDocumentInstanceHandle = RootTag;
|
|
18
|
+
|
|
19
|
+
export function createReactNativeDocumentInstanceHandle(
|
|
20
|
+
rootTag: RootTag,
|
|
21
|
+
): ReactNativeDocumentInstanceHandle {
|
|
22
|
+
return rootTag;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function getNativeNodeReferenceFromReactNativeDocumentInstanceHandle(
|
|
26
|
+
instanceHandle: ReactNativeDocumentInstanceHandle,
|
|
27
|
+
): ?NativeNodeReference {
|
|
28
|
+
return instanceHandle;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function getPublicInstanceFromReactNativeDocumentInstanceHandle(
|
|
32
|
+
instanceHandle: ReactNativeDocumentInstanceHandle,
|
|
33
|
+
): ?ReactNativeDocument {
|
|
34
|
+
// $FlowExpectedError[incompatible-return] React defines public instances as "mixed" because it can't access the definition from React Native.
|
|
35
|
+
return RendererProxy.getPublicInstanceFromRootTag(Number(instanceHandle));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export function isReactNativeDocumentInstanceHandle(
|
|
39
|
+
instanceHandle: mixed,
|
|
40
|
+
// $FlowExpectedError[incompatible-type-guard]
|
|
41
|
+
): instanceHandle is ReactNativeDocumentInstanceHandle {
|
|
42
|
+
// $FlowFixMe[incompatible-type-guard]
|
|
43
|
+
return typeof instanceHandle === 'number' && instanceHandle % 10 === 1;
|
|
44
|
+
}
|