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
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format
|
|
8
7
|
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {EventSubscription} from '../vendor/emitter/EventEmitter';
|
|
@@ -15,7 +15,6 @@ import * as ReactNativeFeatureFlags from '../../src/private/featureflags/ReactNa
|
|
|
15
15
|
import EventEmitter from '../vendor/emitter/EventEmitter';
|
|
16
16
|
|
|
17
17
|
const BatchedBridge = require('../BatchedBridge/BatchedBridge').default;
|
|
18
|
-
const infoLog = require('../Utilities/infoLog').default;
|
|
19
18
|
const TaskQueue = require('./TaskQueue').default;
|
|
20
19
|
const invariant = require('invariant');
|
|
21
20
|
|
|
@@ -31,55 +30,6 @@ const _emitter = new EventEmitter<{
|
|
|
31
30
|
const DEBUG_DELAY: 0 = 0;
|
|
32
31
|
const DEBUG: false = false;
|
|
33
32
|
|
|
34
|
-
/**
|
|
35
|
-
* InteractionManager allows long-running work to be scheduled after any
|
|
36
|
-
* interactions/animations have completed. In particular, this allows JavaScript
|
|
37
|
-
* animations to run smoothly.
|
|
38
|
-
*
|
|
39
|
-
* Applications can schedule tasks to run after interactions with the following:
|
|
40
|
-
*
|
|
41
|
-
* ```
|
|
42
|
-
* InteractionManager.runAfterInteractions(() => {
|
|
43
|
-
* // ...long-running synchronous task...
|
|
44
|
-
* });
|
|
45
|
-
* ```
|
|
46
|
-
*
|
|
47
|
-
* Compare this to other scheduling alternatives:
|
|
48
|
-
*
|
|
49
|
-
* - requestAnimationFrame(): for code that animates a view over time.
|
|
50
|
-
* - setImmediate/setTimeout(): run code later, note this may delay animations.
|
|
51
|
-
* - runAfterInteractions(): run code later, without delaying active animations.
|
|
52
|
-
*
|
|
53
|
-
* The touch handling system considers one or more active touches to be an
|
|
54
|
-
* 'interaction' and will delay `runAfterInteractions()` callbacks until all
|
|
55
|
-
* touches have ended or been cancelled.
|
|
56
|
-
*
|
|
57
|
-
* InteractionManager also allows applications to register animations by
|
|
58
|
-
* creating an interaction 'handle' on animation start, and clearing it upon
|
|
59
|
-
* completion:
|
|
60
|
-
*
|
|
61
|
-
* ```
|
|
62
|
-
* var handle = InteractionManager.createInteractionHandle();
|
|
63
|
-
* // run animation... (`runAfterInteractions` tasks are queued)
|
|
64
|
-
* // later, on animation completion:
|
|
65
|
-
* InteractionManager.clearInteractionHandle(handle);
|
|
66
|
-
* // queued tasks run if all handles were cleared
|
|
67
|
-
* ```
|
|
68
|
-
*
|
|
69
|
-
* `runAfterInteractions` takes either a plain callback function, or a
|
|
70
|
-
* `PromiseTask` object with a `gen` method that returns a `Promise`. If a
|
|
71
|
-
* `PromiseTask` is supplied, then it is fully resolved (including asynchronous
|
|
72
|
-
* dependencies that also schedule more tasks via `runAfterInteractions`) before
|
|
73
|
-
* starting on the next task that might have been queued up synchronously
|
|
74
|
-
* earlier.
|
|
75
|
-
*
|
|
76
|
-
* By default, queued tasks are executed together in a loop in one
|
|
77
|
-
* `setImmediate` batch. If `setDeadline` is called with a positive number, then
|
|
78
|
-
* tasks will only be executed until the deadline (in terms of js event loop run
|
|
79
|
-
* time) approaches, at which point execution will yield via setTimeout,
|
|
80
|
-
* allowing events such as touches to start interactions and block queued tasks
|
|
81
|
-
* from executing, making apps more responsive.
|
|
82
|
-
*/
|
|
83
33
|
const InteractionManagerImpl = {
|
|
84
34
|
Events: {
|
|
85
35
|
interactionStart: 'interactionStart',
|
|
@@ -123,7 +73,7 @@ const InteractionManagerImpl = {
|
|
|
123
73
|
* Notify manager that an interaction has started.
|
|
124
74
|
*/
|
|
125
75
|
createInteractionHandle(): Handle {
|
|
126
|
-
DEBUG &&
|
|
76
|
+
DEBUG && console.log('InteractionManager: create interaction handle');
|
|
127
77
|
_scheduleUpdate();
|
|
128
78
|
const handle = ++_inc;
|
|
129
79
|
_addInteractionSet.add(handle);
|
|
@@ -134,7 +84,7 @@ const InteractionManagerImpl = {
|
|
|
134
84
|
* Notify manager that an interaction has completed.
|
|
135
85
|
*/
|
|
136
86
|
clearInteractionHandle(handle: Handle) {
|
|
137
|
-
DEBUG &&
|
|
87
|
+
DEBUG && console.log('InteractionManager: clear interaction handle');
|
|
138
88
|
invariant(!!handle, 'InteractionManager: Must provide a handle to clear.');
|
|
139
89
|
_scheduleUpdate();
|
|
140
90
|
_addInteractionSet.delete(handle);
|
|
@@ -194,9 +144,17 @@ function _processUpdate() {
|
|
|
194
144
|
|
|
195
145
|
if (interactionCount !== 0 && nextInteractionCount === 0) {
|
|
196
146
|
// transition from 1+ --> 0 interactions
|
|
147
|
+
/* $FlowFixMe[prop-missing] Natural Inference rollout. See
|
|
148
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
149
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
150
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
197
151
|
_emitter.emit(InteractionManager.Events.interactionComplete);
|
|
198
152
|
} else if (interactionCount === 0 && nextInteractionCount !== 0) {
|
|
199
153
|
// transition from 0 --> 1+ interactions
|
|
154
|
+
/* $FlowFixMe[prop-missing] Natural Inference rollout. See
|
|
155
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
156
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
157
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
200
158
|
_emitter.emit(InteractionManager.Events.interactionStart);
|
|
201
159
|
}
|
|
202
160
|
|
|
@@ -218,9 +176,61 @@ function _processUpdate() {
|
|
|
218
176
|
_deleteInteractionSet.clear();
|
|
219
177
|
}
|
|
220
178
|
|
|
179
|
+
/**
|
|
180
|
+
* InteractionManager allows long-running work to be scheduled after any
|
|
181
|
+
* interactions/animations have completed. In particular, this allows JavaScript
|
|
182
|
+
* animations to run smoothly.
|
|
183
|
+
*
|
|
184
|
+
* Applications can schedule tasks to run after interactions with the following:
|
|
185
|
+
*
|
|
186
|
+
* ```
|
|
187
|
+
* InteractionManager.runAfterInteractions(() => {
|
|
188
|
+
* // ...long-running synchronous task...
|
|
189
|
+
* });
|
|
190
|
+
* ```
|
|
191
|
+
*
|
|
192
|
+
* Compare this to other scheduling alternatives:
|
|
193
|
+
*
|
|
194
|
+
* - requestAnimationFrame(): for code that animates a view over time.
|
|
195
|
+
* - setImmediate/setTimeout(): run code later, note this may delay animations.
|
|
196
|
+
* - runAfterInteractions(): run code later, without delaying active animations.
|
|
197
|
+
*
|
|
198
|
+
* The touch handling system considers one or more active touches to be an
|
|
199
|
+
* 'interaction' and will delay `runAfterInteractions()` callbacks until all
|
|
200
|
+
* touches have ended or been cancelled.
|
|
201
|
+
*
|
|
202
|
+
* InteractionManager also allows applications to register animations by
|
|
203
|
+
* creating an interaction 'handle' on animation start, and clearing it upon
|
|
204
|
+
* completion:
|
|
205
|
+
*
|
|
206
|
+
* ```
|
|
207
|
+
* var handle = InteractionManager.createInteractionHandle();
|
|
208
|
+
* // run animation... (`runAfterInteractions` tasks are queued)
|
|
209
|
+
* // later, on animation completion:
|
|
210
|
+
* InteractionManager.clearInteractionHandle(handle);
|
|
211
|
+
* // queued tasks run if all handles were cleared
|
|
212
|
+
* ```
|
|
213
|
+
*
|
|
214
|
+
* `runAfterInteractions` takes either a plain callback function, or a
|
|
215
|
+
* `PromiseTask` object with a `gen` method that returns a `Promise`. If a
|
|
216
|
+
* `PromiseTask` is supplied, then it is fully resolved (including asynchronous
|
|
217
|
+
* dependencies that also schedule more tasks via `runAfterInteractions`) before
|
|
218
|
+
* starting on the next task that might have been queued up synchronously
|
|
219
|
+
* earlier.
|
|
220
|
+
*
|
|
221
|
+
* By default, queued tasks are executed together in a loop in one
|
|
222
|
+
* `setImmediate` batch. If `setDeadline` is called with a positive number, then
|
|
223
|
+
* tasks will only be executed until the deadline (in terms of js event loop run
|
|
224
|
+
* time) approaches, at which point execution will yield via setTimeout,
|
|
225
|
+
* allowing events such as touches to start interactions and block queued tasks
|
|
226
|
+
* from executing, making apps more responsive.
|
|
227
|
+
*
|
|
228
|
+
* @deprecated
|
|
229
|
+
*/
|
|
221
230
|
const InteractionManager = (
|
|
222
231
|
ReactNativeFeatureFlags.disableInteractionManager()
|
|
223
|
-
?
|
|
232
|
+
? // $FlowFixMe[incompatible-variance]
|
|
233
|
+
require('./InteractionManagerStub').default
|
|
224
234
|
: InteractionManagerImpl
|
|
225
235
|
) as typeof InteractionManagerImpl;
|
|
226
236
|
|
|
@@ -4,13 +4,12 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format
|
|
8
7
|
* @flow strict
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const infoLog = require('../Utilities/infoLog').default;
|
|
14
13
|
const invariant = require('invariant');
|
|
15
14
|
|
|
16
15
|
export type SimpleTask = {
|
|
@@ -100,10 +99,10 @@ class TaskQueue {
|
|
|
100
99
|
const task = queue.shift();
|
|
101
100
|
try {
|
|
102
101
|
if (typeof task === 'object' && task.gen) {
|
|
103
|
-
DEBUG &&
|
|
102
|
+
DEBUG && console.log('TaskQueue: genPromise for task ' + task.name);
|
|
104
103
|
this._genPromise(task);
|
|
105
104
|
} else if (typeof task === 'object' && task.run) {
|
|
106
|
-
DEBUG &&
|
|
105
|
+
DEBUG && console.log('TaskQueue: run task ' + task.name);
|
|
107
106
|
task.run();
|
|
108
107
|
} else {
|
|
109
108
|
invariant(
|
|
@@ -111,7 +110,7 @@ class TaskQueue {
|
|
|
111
110
|
'Expected Function, SimpleTask, or PromiseTask, but got:\n' +
|
|
112
111
|
JSON.stringify(task, null, 2),
|
|
113
112
|
);
|
|
114
|
-
DEBUG &&
|
|
113
|
+
DEBUG && console.log('TaskQueue: run anonymous task');
|
|
115
114
|
task();
|
|
116
115
|
}
|
|
117
116
|
} catch (e) {
|
|
@@ -141,7 +140,7 @@ class TaskQueue {
|
|
|
141
140
|
) {
|
|
142
141
|
this._queueStack.pop();
|
|
143
142
|
DEBUG &&
|
|
144
|
-
|
|
143
|
+
console.log('TaskQueue: popped queue: ', {
|
|
145
144
|
stackIdx,
|
|
146
145
|
queueStackSize: this._queueStack.length,
|
|
147
146
|
});
|
|
@@ -159,13 +158,13 @@ class TaskQueue {
|
|
|
159
158
|
this._queueStack.push({tasks: [], popable: false});
|
|
160
159
|
const stackIdx = this._queueStack.length - 1;
|
|
161
160
|
const stackItem = this._queueStack[stackIdx];
|
|
162
|
-
DEBUG &&
|
|
163
|
-
DEBUG &&
|
|
161
|
+
DEBUG && console.log('TaskQueue: push new queue: ', {stackIdx});
|
|
162
|
+
DEBUG && console.log('TaskQueue: exec gen task ' + task.name);
|
|
164
163
|
task
|
|
165
164
|
.gen()
|
|
166
165
|
.then(() => {
|
|
167
166
|
DEBUG &&
|
|
168
|
-
|
|
167
|
+
console.log('TaskQueue: onThen for gen task ' + task.name, {
|
|
169
168
|
stackIdx,
|
|
170
169
|
queueStackSize: this._queueStack.length,
|
|
171
170
|
});
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
13
|
import type {
|
|
14
|
-
LayoutAnimationConfig
|
|
14
|
+
LayoutAnimationConfig,
|
|
15
15
|
LayoutAnimationProperty,
|
|
16
16
|
LayoutAnimationType,
|
|
17
17
|
} from '../Renderer/shims/ReactNativeTypes';
|
|
@@ -29,7 +29,7 @@ export type {
|
|
|
29
29
|
} from '../Renderer/shims/ReactNativeTypes';
|
|
30
30
|
|
|
31
31
|
// Reexport type
|
|
32
|
-
export type LayoutAnimationConfig
|
|
32
|
+
export type {LayoutAnimationConfig} from '../Renderer/shims/ReactNativeTypes';
|
|
33
33
|
|
|
34
34
|
export type LayoutAnimationTypes = $ReadOnly<{
|
|
35
35
|
[type in LayoutAnimationType]: type,
|
|
@@ -45,7 +45,7 @@ type OnAnimationDidFailCallback = () => void;
|
|
|
45
45
|
let isLayoutAnimationEnabled: boolean =
|
|
46
46
|
ReactNativeFeatureFlags.isLayoutAnimationEnabled();
|
|
47
47
|
|
|
48
|
-
function
|
|
48
|
+
function setLayoutAnimationEnabled(value: boolean) {
|
|
49
49
|
isLayoutAnimationEnabled = isLayoutAnimationEnabled;
|
|
50
50
|
}
|
|
51
51
|
|
|
@@ -115,7 +115,7 @@ function configureNext(
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
function
|
|
118
|
+
function createLayoutAnimation(
|
|
119
119
|
duration: number,
|
|
120
120
|
type?: LayoutAnimationType,
|
|
121
121
|
property?: LayoutAnimationProperty,
|
|
@@ -129,12 +129,16 @@ function create(
|
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
const Presets = {
|
|
132
|
-
easeInEaseOut: (
|
|
132
|
+
easeInEaseOut: (createLayoutAnimation(
|
|
133
133
|
300,
|
|
134
134
|
'easeInEaseOut',
|
|
135
135
|
'opacity',
|
|
136
136
|
): LayoutAnimationConfig),
|
|
137
|
-
linear: (
|
|
137
|
+
linear: (createLayoutAnimation(
|
|
138
|
+
500,
|
|
139
|
+
'linear',
|
|
140
|
+
'opacity',
|
|
141
|
+
): LayoutAnimationConfig),
|
|
138
142
|
spring: ({
|
|
139
143
|
duration: 700,
|
|
140
144
|
create: {
|
|
@@ -180,7 +184,7 @@ const LayoutAnimation = {
|
|
|
180
184
|
/**
|
|
181
185
|
* Helper for creating a config for `configureNext`.
|
|
182
186
|
*/
|
|
183
|
-
create,
|
|
187
|
+
create: createLayoutAnimation,
|
|
184
188
|
Types: Object.freeze({
|
|
185
189
|
spring: 'spring',
|
|
186
190
|
linear: 'linear',
|
|
@@ -208,7 +212,7 @@ const LayoutAnimation = {
|
|
|
208
212
|
spring: (configureNext.bind(null, Presets.spring): (
|
|
209
213
|
onAnimationDidEnd?: OnAnimationDidEndCallback,
|
|
210
214
|
) => void),
|
|
211
|
-
setEnabled,
|
|
215
|
+
setEnabled: setLayoutAnimationEnabled,
|
|
212
216
|
};
|
|
213
217
|
|
|
214
218
|
export default LayoutAnimation;
|
|
@@ -155,16 +155,20 @@ export interface FlatListProps<ItemT> extends VirtualizedListProps<ItemT> {
|
|
|
155
155
|
removeClippedSubviews?: boolean | undefined;
|
|
156
156
|
|
|
157
157
|
/**
|
|
158
|
-
*
|
|
158
|
+
* Controls the fading effect at the edges of the scroll content.
|
|
159
159
|
*
|
|
160
|
-
*
|
|
161
|
-
* to
|
|
162
|
-
*
|
|
160
|
+
* A value greater than 0 will apply the fading effect, indicating more content is available
|
|
161
|
+
* to scroll.
|
|
162
|
+
*
|
|
163
|
+
* You can specify a single number to apply the same fading length to both edges.
|
|
164
|
+
* Alternatively, use an object with `start` and `end` properties to set different
|
|
165
|
+
* fading lengths for the start and end of the scroll content.
|
|
163
166
|
*
|
|
164
167
|
* The default value is 0.
|
|
168
|
+
*
|
|
165
169
|
* @platform android
|
|
166
170
|
*/
|
|
167
|
-
fadingEdgeLength?: number | undefined;
|
|
171
|
+
fadingEdgeLength?: number | {start: number; end: number} | undefined;
|
|
168
172
|
}
|
|
169
173
|
|
|
170
174
|
export abstract class FlatListComponent<
|
|
@@ -15,6 +15,7 @@ import type {
|
|
|
15
15
|
ListRenderItemInfo,
|
|
16
16
|
ViewabilityConfigCallbackPair,
|
|
17
17
|
ViewToken,
|
|
18
|
+
VirtualizedListProps,
|
|
18
19
|
} from '@react-native/virtualized-lists';
|
|
19
20
|
|
|
20
21
|
import * as ReactNativeFeatureFlags from '../../src/private/featureflags/ReactNativeFeatureFlags';
|
|
@@ -32,14 +33,14 @@ const invariant = require('invariant');
|
|
|
32
33
|
const VirtualizedList = VirtualizedLists.VirtualizedList;
|
|
33
34
|
const defaultKeyExtractor = VirtualizedLists.keyExtractor;
|
|
34
35
|
|
|
35
|
-
type
|
|
36
|
+
type RequiredFlatListProps<ItemT> = {
|
|
36
37
|
/**
|
|
37
38
|
* An array (or array-like list) of items to render. Other data types can be
|
|
38
39
|
* used by targeting VirtualizedList directly.
|
|
39
40
|
*/
|
|
40
41
|
data: ?$ReadOnly<$ArrayLike<ItemT>>,
|
|
41
42
|
};
|
|
42
|
-
type
|
|
43
|
+
type OptionalFlatListProps<ItemT> = {
|
|
43
44
|
/**
|
|
44
45
|
* Takes an item from `data` and renders it into the list. Example usage:
|
|
45
46
|
*
|
|
@@ -145,7 +146,7 @@ type OptionalProps<ItemT> = {
|
|
|
145
146
|
/**
|
|
146
147
|
* See `ScrollView` for flow type and further documentation.
|
|
147
148
|
*/
|
|
148
|
-
fadingEdgeLength?: ?number,
|
|
149
|
+
fadingEdgeLength?: ?number | {start: number, end: number},
|
|
149
150
|
/**
|
|
150
151
|
* Enable an optimization to memoize the item renderer to prevent unnecessary rerenders.
|
|
151
152
|
*/
|
|
@@ -177,12 +178,10 @@ function isArrayLike(data: mixed): boolean {
|
|
|
177
178
|
}
|
|
178
179
|
|
|
179
180
|
type FlatListBaseProps<ItemT> = {
|
|
180
|
-
...
|
|
181
|
-
...
|
|
181
|
+
...RequiredFlatListProps<ItemT>,
|
|
182
|
+
...OptionalFlatListProps<ItemT>,
|
|
182
183
|
};
|
|
183
184
|
|
|
184
|
-
type VirtualizedListProps = React.ElementConfig<typeof VirtualizedList>;
|
|
185
|
-
|
|
186
185
|
export type FlatListProps<ItemT> = {
|
|
187
186
|
...Omit<
|
|
188
187
|
VirtualizedListProps,
|
|
@@ -39,7 +39,7 @@ export type {
|
|
|
39
39
|
ScrollToLocationParamsType as SectionListScrollParams,
|
|
40
40
|
};
|
|
41
41
|
|
|
42
|
-
type
|
|
42
|
+
type RequiredSectionListProps<ItemT, SectionT = DefaultSectionT> = {
|
|
43
43
|
/**
|
|
44
44
|
* The actual data to render, akin to the `data` prop in [`<FlatList>`](https://reactnative.dev/docs/flatlist).
|
|
45
45
|
*
|
|
@@ -64,7 +64,7 @@ export type SectionListRenderItem<ItemT, SectionT = DefaultSectionT> = (
|
|
|
64
64
|
info: SectionListRenderItemInfo<ItemT, SectionT>,
|
|
65
65
|
) => React.Node | null;
|
|
66
66
|
|
|
67
|
-
type
|
|
67
|
+
type OptionalSectionListProps<ItemT, SectionT = DefaultSectionT> = {
|
|
68
68
|
/**
|
|
69
69
|
* Default renderer for every item in every section. Can be over-ridden on a per-section basis.
|
|
70
70
|
*/
|
|
@@ -110,8 +110,8 @@ export type SectionListProps<ItemT, SectionT = DefaultSectionT> = {
|
|
|
110
110
|
VirtualizedSectionListProps<ItemT, SectionT>,
|
|
111
111
|
'getItem' | 'getItemCount' | 'renderItem' | 'keyExtractor',
|
|
112
112
|
>,
|
|
113
|
-
...
|
|
114
|
-
...
|
|
113
|
+
...RequiredSectionListProps<ItemT, SectionT>,
|
|
114
|
+
...OptionalSectionListProps<ItemT, SectionT>,
|
|
115
115
|
};
|
|
116
116
|
|
|
117
117
|
/**
|
|
@@ -21,7 +21,7 @@ import type {
|
|
|
21
21
|
import Platform from '../Utilities/Platform';
|
|
22
22
|
import VirtualizedLists from '@react-native/virtualized-lists';
|
|
23
23
|
import * as React from 'react';
|
|
24
|
-
import {
|
|
24
|
+
import {useImperativeHandle, useRef} from 'react';
|
|
25
25
|
|
|
26
26
|
const VirtualizedSectionList = VirtualizedLists.VirtualizedSectionList;
|
|
27
27
|
|
|
@@ -168,7 +168,13 @@ export type Props<ItemT, SectionT = DefaultSectionT> = $ReadOnly<{
|
|
|
168
168
|
const SectionList: component(
|
|
169
169
|
ref?: React.RefSetter<any>,
|
|
170
170
|
...Props<any, DefaultSectionT>
|
|
171
|
-
) =
|
|
171
|
+
) = ({
|
|
172
|
+
ref,
|
|
173
|
+
...props
|
|
174
|
+
}: {
|
|
175
|
+
ref?: React.RefSetter<any>,
|
|
176
|
+
...Props<any, DefaultSectionT>,
|
|
177
|
+
}) => {
|
|
172
178
|
const propsWithDefaults = {
|
|
173
179
|
stickySectionHeadersEnabled: Platform.OS === 'ios',
|
|
174
180
|
...props,
|
|
@@ -237,6 +243,6 @@ const SectionList: component(
|
|
|
237
243
|
getItem={(items, index) => items[index]}
|
|
238
244
|
/>
|
|
239
245
|
);
|
|
240
|
-
}
|
|
246
|
+
};
|
|
241
247
|
|
|
242
248
|
export default SectionList;
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
import VirtualizedLists from '@react-native/virtualized-lists';
|
|
14
14
|
|
|
15
15
|
type VirtualizedListType = typeof VirtualizedLists.VirtualizedList;
|
|
16
|
-
const
|
|
16
|
+
const VirtualizedListComponent: VirtualizedListType =
|
|
17
|
+
VirtualizedLists.VirtualizedList;
|
|
17
18
|
|
|
18
19
|
export type {
|
|
19
20
|
ListRenderItemInfo,
|
|
@@ -21,4 +22,4 @@ export type {
|
|
|
21
22
|
Separators,
|
|
22
23
|
VirtualizedListProps,
|
|
23
24
|
} from '@react-native/virtualized-lists';
|
|
24
|
-
export default
|
|
25
|
+
export default VirtualizedListComponent;
|
|
@@ -413,8 +413,8 @@ export function observe(observer: Observer): Subscription {
|
|
|
413
413
|
};
|
|
414
414
|
}
|
|
415
415
|
|
|
416
|
-
type
|
|
417
|
-
type
|
|
416
|
+
type LogBoxStateSubscriptionProps = $ReadOnly<{}>;
|
|
417
|
+
type LogBoxStateSubscriptionState = $ReadOnly<{
|
|
418
418
|
logs: LogBoxLogs,
|
|
419
419
|
isDisabled: boolean,
|
|
420
420
|
hasError: boolean,
|
|
@@ -432,7 +432,10 @@ type SubscribedComponent = React.ComponentType<
|
|
|
432
432
|
export function withSubscription(
|
|
433
433
|
WrappedComponent: SubscribedComponent,
|
|
434
434
|
): React.ComponentType<{}> {
|
|
435
|
-
class LogBoxStateSubscription extends React.Component<
|
|
435
|
+
class LogBoxStateSubscription extends React.Component<
|
|
436
|
+
LogBoxStateSubscriptionProps,
|
|
437
|
+
LogBoxStateSubscriptionState,
|
|
438
|
+
> {
|
|
436
439
|
static getDerivedStateFromError(): {hasError: boolean} {
|
|
437
440
|
return {hasError: true};
|
|
438
441
|
}
|
|
@@ -446,7 +449,7 @@ export function withSubscription(
|
|
|
446
449
|
|
|
447
450
|
_subscription: ?Subscription;
|
|
448
451
|
|
|
449
|
-
state:
|
|
452
|
+
state: LogBoxStateSubscriptionState = {
|
|
450
453
|
logs: new Set(),
|
|
451
454
|
isDisabled: false,
|
|
452
455
|
hasError: false,
|
|
@@ -509,6 +509,8 @@ export function parseLogBoxLog(args: $ReadOnlyArray<mixed>): {
|
|
|
509
509
|
return {
|
|
510
510
|
...parseInterpolation(argsWithoutComponentStack),
|
|
511
511
|
componentStack,
|
|
512
|
+
/* $FlowFixMe[incompatible-return] Natural Inference rollout. See
|
|
513
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
512
514
|
componentStackType,
|
|
513
515
|
};
|
|
514
516
|
}
|