@office-iss/react-native-win32 0.0.0-canary.296 → 0.0.0-canary.298
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 +6 -2
- package/CHANGELOG.json +49 -1
- package/CHANGELOG.md +23 -4
- package/IntegrationTests/AccessibilityManagerTest.js +1 -1
- package/IntegrationTests/AppEventsTest.js +1 -1
- package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
- package/IntegrationTests/ImageCachePolicyTest.js +2 -2
- package/IntegrationTests/ImageSnapshotTest.js +1 -1
- package/IntegrationTests/IntegrationTestHarnessTest.js +1 -1
- package/IntegrationTests/IntegrationTestsApp.js +1 -1
- package/IntegrationTests/LayoutEventsTest.js +1 -1
- package/IntegrationTests/PromiseTest.js +1 -1
- package/IntegrationTests/SimpleSnapshotTest.js +1 -1
- package/IntegrationTests/SyncMethodTest.js +1 -1
- package/IntegrationTests/TimersTest.js +1 -1
- package/IntegrationTests/WebSocketTest.js +1 -1
- package/Libraries/Alert/Alert.js +1 -1
- package/Libraries/Alert/Alert.win32.js +1 -1
- package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
- package/Libraries/Alert/RCTAlertManager.js.flow +1 -1
- package/Libraries/Animated/Animated.js +0 -1
- package/Libraries/Animated/Animated.js.flow +0 -1
- package/Libraries/Animated/AnimatedExports.js +2 -3
- package/Libraries/Animated/AnimatedExports.js.flow +1 -2
- package/Libraries/Animated/Easing.js +1 -1
- package/Libraries/Animated/SpringConfig.js +1 -1
- package/Libraries/Animated/animations/Animation.js +5 -2
- package/Libraries/Animated/components/AnimatedFlatList.js +7 -6
- package/Libraries/Animated/components/AnimatedScrollView.js +53 -52
- package/Libraries/Animated/components/AnimatedSectionList.js +11 -7
- package/Libraries/Animated/createAnimatedComponent.js +37 -33
- package/Libraries/Animated/nodes/AnimatedObject.js +2 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +37 -5
- package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +6 -1
- package/Libraries/AppState/AppState.js +6 -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/URL.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +5 -1
- package/Libraries/Blob/URLSearchParams.js.flow +2 -1
- package/Libraries/BugReporting/BugReporting.js +1 -1
- package/Libraries/BugReporting/dumpReactTree.js +1 -1
- package/Libraries/BugReporting/getReactData.js +1 -1
- 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.win32.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +20 -19
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +1 -1
- package/Libraries/Components/Button.js +3 -3
- package/Libraries/Components/Button.win32.js +3 -3
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +1 -1
- 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/Keyboard/Keyboard.js +1 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +3 -2
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +0 -1
- package/Libraries/Components/Pressable/Pressable.js +9 -6
- package/Libraries/Components/Pressable/Pressable.win32.js +9 -6
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +14 -13
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +14 -2
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +29 -20
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +1 -1
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +1 -1
- package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +23 -5
- package/Libraries/Components/ScrollView/ScrollView.js +22 -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/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/StatusBar.js +1 -1
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +1 -1
- package/Libraries/Components/Switch/Switch.js +8 -2
- package/Libraries/Components/Switch/SwitchNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +1 -17
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +9 -3
- package/Libraries/Components/TextInput/TextInput.flow.js +12 -14
- package/Libraries/Components/TextInput/TextInput.flow.win32.js +12 -14
- package/Libraries/Components/TextInput/TextInput.js +40 -35
- package/Libraries/Components/TextInput/TextInput.win32.js +41 -35
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.win32.js +1 -1
- 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/ToastAndroid.win32.js +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 +10 -0
- package/Libraries/Components/Touchable/Touchable.win32.js +10 -0
- package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
- package/Libraries/Components/Touchable/TouchableHighlight.js +9 -4
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +2 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +7 -3
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
- package/Libraries/Components/View/View.js +112 -26
- package/Libraries/Components/View/View.win32.js +1 -1
- package/Libraries/Components/View/ViewAccessibility.js +1 -1
- package/Libraries/Components/View/ViewAccessibility.win32.js +1 -1
- package/Libraries/Components/View/ViewPropTypes.d.ts +18 -2
- package/Libraries/Components/View/ViewPropTypes.js +1 -1
- package/Libraries/Components/View/ViewPropTypes.win32.js +1 -1
- package/Libraries/Core/Devtools/getDevServer.js +1 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.js +49 -7
- package/Libraries/Core/Devtools/loadBundleFromServer.win32.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 +1 -1
- package/Libraries/Core/InitializeCore.js +2 -23
- package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +3 -2
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/Timers/queueMicrotask.js +1 -1
- package/Libraries/Core/setUpDeveloperTools.js +13 -11
- package/Libraries/Debugging/DebuggingOverlay.js +12 -14
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +1 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +0 -1
- package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +0 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/Image/AssetRegistry.js +4 -10
- package/Libraries/Image/AssetSourceResolver.js +17 -4
- package/Libraries/Image/Image.android.js +112 -106
- package/Libraries/Image/Image.ios.js +10 -2
- package/Libraries/Image/Image.win32.js +11 -3
- package/Libraries/Image/ImageAnalyticsTagContext.js +2 -2
- package/Libraries/Image/ImageInjection.js +1 -1
- package/Libraries/Image/RelativeImageStub.js +2 -1
- package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
- package/Libraries/Image/resolveAssetSource.js +1 -1
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +62 -53
- package/Libraries/Interaction/TaskQueue.js +8 -9
- package/Libraries/Interaction/TouchHistoryMath.js +1 -1
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.d.ts +9 -5
- package/Libraries/Lists/FlatList.js +1 -1
- package/Libraries/Lists/SectionListModern.js +9 -3
- package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
- package/Libraries/LogBox/LogBox.js +2 -0
- package/Libraries/LogBox/UI/LogBoxButton.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.win32.js +3 -2
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -1
- package/Libraries/Modal/Modal.js +5 -1
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +17 -5
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +4 -4
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +4 -4
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
- package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
- package/Libraries/Network/FormData.js +1 -1
- 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.win32.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +3 -3
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +1 -1
- package/Libraries/Pressability/Pressability.js +1 -1
- package/Libraries/Pressability/Pressability.win32.js +1 -1
- package/Libraries/Promise.js +1 -1
- 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/AppRegistryImpl.js +2 -3
- 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 +1 -1
- 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 +1 -1
- package/Libraries/Renderer/shims/ReactNativeTypes.js +21 -25
- package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +270 -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/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/StyleSheetExports.js.flow +3 -1
- package/Libraries/StyleSheet/StyleSheetTypes.js +4 -3
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +49 -21
- 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 +7 -0
- package/Libraries/Text/Text.js +256 -245
- package/Libraries/Text/Text.win32.js +294 -285
- package/Libraries/Text/TextAncestor.js +3 -2
- package/Libraries/Text/TextNativeComponent.js +4 -0
- package/Libraries/Text/TextNativeComponent.win32.js +4 -0
- package/Libraries/Text/TextProps.js +2 -34
- package/Libraries/Text/TextProps.win32.js +2 -33
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CodegenTypesNamespace.js +1 -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/Dimensions.win32.js +1 -1
- package/Libraries/Utilities/HMRClient.js +1 -1
- package/Libraries/Utilities/HMRClientProdShim.js +1 -1
- package/Libraries/Utilities/PerformanceLoggerContext.js +2 -2
- package/Libraries/Utilities/PixelRatio.js +1 -1
- package/Libraries/Utilities/Platform.android.js +1 -1
- package/Libraries/Utilities/Platform.ios.js +1 -1
- package/Libraries/Utilities/Platform.js +1 -1
- package/Libraries/Utilities/Platform.win32.js +1 -1
- package/Libraries/Utilities/PlatformTypes.js +1 -1
- 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 +1 -1
- package/Libraries/Utilities/codegenNativeComponent.js +1 -1
- 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/Vibration.js +1 -2
- 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 +29 -5
- package/index.js +1 -2
- package/index.win32.js +3 -1
- 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/{flow/Stringish.js → jest/mocks/Clipboard.js} +6 -4
- 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 +32 -0
- package/jest/setup.js +63 -445
- package/overrides.json +45 -38
- package/package.json +14 -14
- package/src/private/animated/NativeAnimatedHelper.js +8 -1
- package/src/private/animated/NativeAnimatedHelper.win32.js +8 -1
- package/src/private/animated/createAnimatedPropsHook.js +11 -4
- package/src/private/animated/createAnimatedPropsMemoHook.js +0 -1
- 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/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.win32.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 +65 -5
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +10 -2
- package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +1 -1
- 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/styles/composeStyles.js +12 -5
- 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/intersectionobserver/IntersectionObserver.js +3 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +3 -0
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +70 -18
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +11 -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 +1 -1
- package/src/private/webapis/performance/ReactNativeStartupTiming.js +4 -1
- package/src/private/webapis/performance/UserTiming.js +1 -1
- package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -1
- package/src/private/webapis/performance/internals/Utilities.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/src/types/globals.d.ts +42 -0
- package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +18 -2
- package/src-win/Libraries/Text/Text.d.ts +7 -0
- package/types/index.d.ts +1 -1
- package/types/modules/Devtools.d.ts +23 -9
- package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
- package/flow/HermesInternalType.js +0 -114
- package/flow/console.js +0 -49
- package/flow/global.js +0 -88
- package/jest/mockModal.js +0 -32
- package/jest/mockScrollView.js +0 -35
|
@@ -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
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
@@ -291,7 +291,7 @@ type ButtonRef = React.ElementRef<typeof Touchable>;
|
|
|
291
291
|
const Button: component(
|
|
292
292
|
ref?: React.RefSetter<ButtonRef>,
|
|
293
293
|
...props: ButtonProps
|
|
294
|
-
) =
|
|
294
|
+
) = ({ref, ...props}: {ref?: React.RefSetter<ButtonRef>, ...ButtonProps}) => {
|
|
295
295
|
// Win32
|
|
296
296
|
const {
|
|
297
297
|
accessibilityLabel,
|
|
@@ -400,7 +400,7 @@ const Button: component(
|
|
|
400
400
|
</View>
|
|
401
401
|
</Touchable>
|
|
402
402
|
);
|
|
403
|
-
}
|
|
403
|
+
};
|
|
404
404
|
|
|
405
405
|
Button.displayName = 'Button';
|
|
406
406
|
|
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent';
|
|
@@ -28,8 +28,9 @@ import AndroidDrawerLayoutNativeComponent, {
|
|
|
28
28
|
} from './AndroidDrawerLayoutNativeComponent';
|
|
29
29
|
import nullthrows from 'nullthrows';
|
|
30
30
|
import * as React from 'react';
|
|
31
|
+
import {createRef} from 'react';
|
|
31
32
|
|
|
32
|
-
const DRAWER_STATES = ['Idle', 'Dragging', 'Settling'];
|
|
33
|
+
const DRAWER_STATES = ['Idle', 'Dragging', 'Settling'] as const;
|
|
33
34
|
|
|
34
35
|
/**
|
|
35
36
|
* React component that wraps the platform `DrawerLayout` (Android only). The
|
|
@@ -76,9 +77,7 @@ class DrawerLayoutAndroid
|
|
|
76
77
|
|
|
77
78
|
// $FlowFixMe[missing-local-annot]
|
|
78
79
|
_nativeRef =
|
|
79
|
-
React.
|
|
80
|
-
React.ElementRef<typeof AndroidDrawerLayoutNativeComponent>,
|
|
81
|
-
>();
|
|
80
|
+
createRef<React.ElementRef<typeof AndroidDrawerLayoutNativeComponent>>();
|
|
82
81
|
|
|
83
82
|
state: DrawerLayoutAndroidState = {
|
|
84
83
|
drawerOpened: false,
|
|
@@ -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 {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
@@ -24,6 +24,7 @@ import AccessibilityInfo from '../AccessibilityInfo/AccessibilityInfo';
|
|
|
24
24
|
import View from '../View/View';
|
|
25
25
|
import Keyboard from './Keyboard';
|
|
26
26
|
import * as React from 'react';
|
|
27
|
+
import {createRef} from 'react';
|
|
27
28
|
|
|
28
29
|
export type KeyboardAvoidingViewProps = $ReadOnly<{
|
|
29
30
|
...ViewProps,
|
|
@@ -73,7 +74,7 @@ class KeyboardAvoidingView extends React.Component<
|
|
|
73
74
|
constructor(props: KeyboardAvoidingViewProps) {
|
|
74
75
|
super(props);
|
|
75
76
|
this.state = {bottom: 0};
|
|
76
|
-
this.viewRef =
|
|
77
|
+
this.viewRef = createRef();
|
|
77
78
|
}
|
|
78
79
|
|
|
79
80
|
async _relativeKeyboardHeight(
|
|
@@ -24,7 +24,7 @@ import useAndroidRippleForView, {
|
|
|
24
24
|
type PressableAndroidRippleConfig,
|
|
25
25
|
} from './useAndroidRippleForView';
|
|
26
26
|
import * as React from 'react';
|
|
27
|
-
import {useMemo, useRef, useState} from 'react';
|
|
27
|
+
import {memo, useMemo, useRef, useState} from 'react';
|
|
28
28
|
|
|
29
29
|
type ViewStyleProp = React.ElementConfig<typeof View>['style'];
|
|
30
30
|
|
|
@@ -165,10 +165,13 @@ type Instance = React.ElementRef<typeof View>;
|
|
|
165
165
|
* Component used to build display components that should respond to whether the
|
|
166
166
|
* component is currently pressed or not.
|
|
167
167
|
*/
|
|
168
|
-
function Pressable(
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
168
|
+
function Pressable({
|
|
169
|
+
ref: forwardedRef,
|
|
170
|
+
...props
|
|
171
|
+
}: {
|
|
172
|
+
ref?: React.RefSetter<Instance>,
|
|
173
|
+
...PressableProps,
|
|
174
|
+
}): React.Node {
|
|
172
175
|
const {
|
|
173
176
|
accessible,
|
|
174
177
|
accessibilityState,
|
|
@@ -331,7 +334,7 @@ function usePressState(forcePressed: boolean): [boolean, (boolean) => void] {
|
|
|
331
334
|
return [pressed || forcePressed, setPressed];
|
|
332
335
|
}
|
|
333
336
|
|
|
334
|
-
const MemoedPressable =
|
|
337
|
+
const MemoedPressable = memo(Pressable);
|
|
335
338
|
MemoedPressable.displayName = 'Pressable';
|
|
336
339
|
|
|
337
340
|
export default (MemoedPressable: component(
|
|
@@ -28,7 +28,7 @@ import useAndroidRippleForView, {
|
|
|
28
28
|
type PressableAndroidRippleConfig,
|
|
29
29
|
} from './useAndroidRippleForView';
|
|
30
30
|
import * as React from 'react';
|
|
31
|
-
import {useMemo, useRef, useState} from 'react';
|
|
31
|
+
import {memo, useMemo, useRef, useState} from 'react';
|
|
32
32
|
import type {HandledKeyboardEvent} from '../../Components/View/ViewPropTypes';
|
|
33
33
|
import View from '../View/View';
|
|
34
34
|
|
|
@@ -211,10 +211,13 @@ type Instance = React.ElementRef<typeof View>;
|
|
|
211
211
|
* Component used to build display components that should respond to whether the
|
|
212
212
|
* component is currently pressed or not.
|
|
213
213
|
*/
|
|
214
|
-
function Pressable(
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
214
|
+
function Pressable({
|
|
215
|
+
ref: forwardedRef,
|
|
216
|
+
...props
|
|
217
|
+
}: {
|
|
218
|
+
ref?: React.RefSetter<Instance>,
|
|
219
|
+
...PressableProps,
|
|
220
|
+
}): React.Node {
|
|
218
221
|
const {
|
|
219
222
|
accessible,
|
|
220
223
|
accessibilityState,
|
|
@@ -398,7 +401,7 @@ function usePressState(forcePressed: boolean): [boolean, (boolean) => void] {
|
|
|
398
401
|
return [pressed || forcePressed, setPressed];
|
|
399
402
|
}
|
|
400
403
|
|
|
401
|
-
const MemoedPressable =
|
|
404
|
+
const MemoedPressable = memo(Pressable);
|
|
402
405
|
MemoedPressable.displayName = 'Pressable';
|
|
403
406
|
|
|
404
407
|
export default (MemoedPressable: component(
|
|
@@ -39,23 +39,24 @@ export type {ProgressBarAndroidProps};
|
|
|
39
39
|
* },
|
|
40
40
|
* ```
|
|
41
41
|
*/
|
|
42
|
-
const
|
|
42
|
+
const ProgressBarAndroid: component(
|
|
43
43
|
ref?: React.RefSetter<
|
|
44
44
|
React.ElementRef<typeof ProgressBarAndroidNativeComponent>,
|
|
45
45
|
>,
|
|
46
46
|
...props: ProgressBarAndroidProps
|
|
47
|
-
) =
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
47
|
+
) = function ProgressBarAndroid({
|
|
48
|
+
ref: forwardedRef,
|
|
49
|
+
// $FlowFixMe[incompatible-type]
|
|
50
|
+
styleAttr = 'Normal',
|
|
51
|
+
indeterminate = true,
|
|
52
|
+
animating = true,
|
|
53
|
+
...restProps
|
|
54
|
+
}: {
|
|
55
|
+
ref?: React.RefSetter<
|
|
56
56
|
React.ElementRef<typeof ProgressBarAndroidNativeComponent>,
|
|
57
57
|
>,
|
|
58
|
-
|
|
58
|
+
...ProgressBarAndroidProps,
|
|
59
|
+
}) {
|
|
59
60
|
return (
|
|
60
61
|
<ProgressBarAndroidNativeComponent
|
|
61
62
|
styleAttr={styleAttr}
|
|
@@ -65,6 +66,6 @@ const ProgressBarAndroidWithForwardedRef: component(
|
|
|
65
66
|
ref={forwardedRef}
|
|
66
67
|
/>
|
|
67
68
|
);
|
|
68
|
-
}
|
|
69
|
+
};
|
|
69
70
|
|
|
70
|
-
export default
|
|
71
|
+
export default ProgressBarAndroid;
|
|
@@ -4,7 +4,7 @@
|
|
|
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
|
-
* @flow
|
|
7
|
+
* @flow strict-local
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
@@ -17,11 +17,23 @@ import Platform from '../../Utilities/Platform';
|
|
|
17
17
|
|
|
18
18
|
export type {ProgressBarAndroidProps};
|
|
19
19
|
|
|
20
|
+
// A utility type to preserve the semantics of the union uses in the definition
|
|
21
|
+
// of ProgressBarAndroidProps. TS's Omit does not distribute over unions, so
|
|
22
|
+
// we define our own version which does. This does not affect Flow.
|
|
23
|
+
// $FlowExpectedError[unclear-type]
|
|
24
|
+
type Omit<T, K> = T extends any ? Pick<T, Exclude<$Keys<T>, K>> : T;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* ProgressBarAndroid has been extracted from react-native core and will be removed in a future release.
|
|
28
|
+
* It can now be installed and imported from `@react-native-community/progress-bar-android` instead of 'react-native'.
|
|
29
|
+
* @see https://github.com/react-native-community/progress-bar-android
|
|
30
|
+
* @deprecated
|
|
31
|
+
*/
|
|
20
32
|
let ProgressBarAndroid: component(
|
|
21
33
|
ref?: React.RefSetter<
|
|
22
34
|
React.ElementRef<ProgressBarAndroidNativeComponentType>,
|
|
23
35
|
>,
|
|
24
|
-
...props: ProgressBarAndroidProps
|
|
36
|
+
...props: Omit<ProgressBarAndroidProps, empty>
|
|
25
37
|
);
|
|
26
38
|
|
|
27
39
|
if (Platform.OS === 'android') {
|
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent';
|
|
@@ -17,28 +17,25 @@ import type {ViewProps} from '../View/ViewPropTypes';
|
|
|
17
17
|
* `indeterminate` can only be false if `styleAttr` is Horizontal, and requires a
|
|
18
18
|
* `progress` value.
|
|
19
19
|
*/
|
|
20
|
-
type
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
| {
|
|
27
|
-
styleAttr:
|
|
28
|
-
| 'Horizontal'
|
|
29
|
-
| 'Normal'
|
|
30
|
-
| 'Small'
|
|
31
|
-
| 'Large'
|
|
32
|
-
| 'Inverse'
|
|
33
|
-
| 'SmallInverse'
|
|
34
|
-
| 'LargeInverse',
|
|
35
|
-
indeterminate: true,
|
|
36
|
-
};
|
|
20
|
+
type DeterminateProgressBarAndroidStyleAttrProp = {
|
|
21
|
+
styleAttr: 'Horizontal',
|
|
22
|
+
indeterminate: false,
|
|
23
|
+
progress: number,
|
|
24
|
+
};
|
|
37
25
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
26
|
+
type IndeterminateProgressBarAndroidStyleAttrProp = {
|
|
27
|
+
styleAttr:
|
|
28
|
+
| 'Horizontal'
|
|
29
|
+
| 'Normal'
|
|
30
|
+
| 'Small'
|
|
31
|
+
| 'Large'
|
|
32
|
+
| 'Inverse'
|
|
33
|
+
| 'SmallInverse'
|
|
34
|
+
| 'LargeInverse',
|
|
35
|
+
indeterminate: true,
|
|
36
|
+
};
|
|
41
37
|
|
|
38
|
+
type ProgressBarAndroidBaseProps = $ReadOnly<{
|
|
42
39
|
/**
|
|
43
40
|
* Whether to show the ProgressBar (true, the default) or hide it (false).
|
|
44
41
|
*/
|
|
@@ -52,3 +49,15 @@ export type ProgressBarAndroidProps = $ReadOnly<{
|
|
|
52
49
|
*/
|
|
53
50
|
testID?: ?string,
|
|
54
51
|
}>;
|
|
52
|
+
|
|
53
|
+
export type ProgressBarAndroidProps =
|
|
54
|
+
| $ReadOnly<{
|
|
55
|
+
...ViewProps,
|
|
56
|
+
...ProgressBarAndroidBaseProps,
|
|
57
|
+
...DeterminateProgressBarAndroidStyleAttrProp,
|
|
58
|
+
}>
|
|
59
|
+
| $ReadOnly<{
|
|
60
|
+
...ViewProps,
|
|
61
|
+
...ProgressBarAndroidBaseProps,
|
|
62
|
+
...IndeterminateProgressBarAndroidStyleAttrProp,
|
|
63
|
+
}>;
|
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent';
|
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent';
|
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent';
|
package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js
CHANGED
|
@@ -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
|
export * from '../../../src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent';
|
|
@@ -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 {HostComponent} from '../../../src/private/types/HostComponent';
|
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
import {RefreshControlProps} from '../RefreshControl/RefreshControl';
|
|
20
20
|
import {Touchable} from '../Touchable/Touchable';
|
|
21
21
|
import {ViewProps} from '../View/ViewPropTypes';
|
|
22
|
+
import {View} from '../View/View';
|
|
22
23
|
|
|
23
24
|
// See https://reactnative.dev/docs/scrollview#contentoffset
|
|
24
25
|
export interface PointProp {
|
|
@@ -565,16 +566,20 @@ export interface ScrollViewPropsAndroid {
|
|
|
565
566
|
nestedScrollEnabled?: boolean | undefined;
|
|
566
567
|
|
|
567
568
|
/**
|
|
568
|
-
*
|
|
569
|
+
* Controls the fading effect at the edges of the scroll content.
|
|
569
570
|
*
|
|
570
|
-
*
|
|
571
|
-
* to
|
|
572
|
-
*
|
|
571
|
+
* A value greater than 0 will apply the fading effect, indicating more content is available
|
|
572
|
+
* to scroll.
|
|
573
|
+
*
|
|
574
|
+
* You can specify a single number to apply the same fading length to both edges.
|
|
575
|
+
* Alternatively, use an object with `start` and `end` properties to set different
|
|
576
|
+
* fading lengths for the start and end of the scroll content.
|
|
573
577
|
*
|
|
574
578
|
* The default value is 0.
|
|
579
|
+
*
|
|
575
580
|
* @platform android
|
|
576
581
|
*/
|
|
577
|
-
fadingEdgeLength?: number | undefined;
|
|
582
|
+
fadingEdgeLength?: number | {start: number; end: number} | undefined;
|
|
578
583
|
|
|
579
584
|
/**
|
|
580
585
|
* Causes the scrollbars not to turn transparent when they are not in use. The default value is false.
|
|
@@ -604,6 +609,19 @@ export interface ScrollViewProps
|
|
|
604
609
|
*/
|
|
605
610
|
contentContainerStyle?: StyleProp<ViewStyle> | undefined;
|
|
606
611
|
|
|
612
|
+
/**
|
|
613
|
+
* A ref to the inner View element of the ScrollView. This should be used
|
|
614
|
+
* instead of calling `getInnerViewRef`.
|
|
615
|
+
*/
|
|
616
|
+
innerViewRef?: React.RefObject<View> | undefined;
|
|
617
|
+
|
|
618
|
+
/**
|
|
619
|
+
* A ref to the Native ScrollView component. This ref can be used to call
|
|
620
|
+
* all of ScrollView's public methods, in addition to native methods like
|
|
621
|
+
* measure, measureLayout, etc.
|
|
622
|
+
*/
|
|
623
|
+
scrollViewRef?: React.RefObject<ScrollView> | undefined;
|
|
624
|
+
|
|
607
625
|
/**
|
|
608
626
|
* A floating-point number that determines how quickly the scroll view
|
|
609
627
|
* decelerates after the user lifts their finger. You may also use string
|
|
@@ -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 {HostInstance} from '../../../src/private/types/HostInstance';
|
|
@@ -52,6 +52,7 @@ import invariant from 'invariant';
|
|
|
52
52
|
import memoize from 'memoize-one';
|
|
53
53
|
import nullthrows from 'nullthrows';
|
|
54
54
|
import * as React from 'react';
|
|
55
|
+
import {cloneElement} from 'react';
|
|
55
56
|
|
|
56
57
|
/*
|
|
57
58
|
* iOS scroll event timing nuances:
|
|
@@ -372,17 +373,20 @@ export type ScrollViewPropsAndroid = $ReadOnly<{
|
|
|
372
373
|
*/
|
|
373
374
|
persistentScrollbar?: ?boolean,
|
|
374
375
|
/**
|
|
375
|
-
*
|
|
376
|
+
* Controls the fading effect at the edges of the scroll content.
|
|
377
|
+
*
|
|
378
|
+
* A value greater than 0 will apply the fading effect, indicating more content is available
|
|
379
|
+
* to scroll.
|
|
376
380
|
*
|
|
377
|
-
*
|
|
378
|
-
*
|
|
379
|
-
*
|
|
381
|
+
* You can specify a single number to apply the same fading length to both edges.
|
|
382
|
+
* Alternatively, use an object with `start` and `end` properties to set different
|
|
383
|
+
* fading lengths for the start and end of the scroll content.
|
|
380
384
|
*
|
|
381
385
|
* The default value is 0.
|
|
382
386
|
*
|
|
383
387
|
* @platform android
|
|
384
388
|
*/
|
|
385
|
-
fadingEdgeLength?: ?number,
|
|
389
|
+
fadingEdgeLength?: ?number | {start: number, end: number},
|
|
386
390
|
}>;
|
|
387
391
|
|
|
388
392
|
type StickyHeaderComponentType = component(
|
|
@@ -1642,7 +1646,9 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
|
|
|
1642
1646
|
if (__DEV__ && this.props.style !== undefined) {
|
|
1643
1647
|
// $FlowFixMe[underconstrained-implicit-instantiation]
|
|
1644
1648
|
const style = flattenStyle(this.props.style);
|
|
1645
|
-
const childLayoutProps =
|
|
1649
|
+
const childLayoutProps = (
|
|
1650
|
+
['alignItems', 'justifyContent'] as const
|
|
1651
|
+
).filter(
|
|
1646
1652
|
// $FlowFixMe[incompatible-use]
|
|
1647
1653
|
prop => style && style[prop] !== undefined,
|
|
1648
1654
|
);
|
|
@@ -1827,7 +1833,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
|
|
|
1827
1833
|
// however, the ScrollView still needs the baseStyle to be scrollable
|
|
1828
1834
|
const {outer, inner} = splitLayoutProps(flattenStyle(props.style));
|
|
1829
1835
|
// $FlowFixMe[incompatible-call]
|
|
1830
|
-
return
|
|
1836
|
+
return cloneElement(
|
|
1831
1837
|
refreshControl,
|
|
1832
1838
|
{style: StyleSheet.compose(baseStyle, outer)},
|
|
1833
1839
|
<NativeScrollView
|
|
@@ -1907,23 +1913,25 @@ function createRefForwarder<TNativeInstance, TPublicInstance>(
|
|
|
1907
1913
|
return state;
|
|
1908
1914
|
}
|
|
1909
1915
|
|
|
1910
|
-
// TODO: After upgrading to React 19, remove `forwardRef` from this component.
|
|
1911
1916
|
// NOTE: This wrapper component is necessary because `ScrollView` is a class
|
|
1912
1917
|
// component and we need to map `ref` to a differently named prop. This can be
|
|
1913
1918
|
// removed when `ScrollView` is a functional component.
|
|
1914
1919
|
const ScrollViewWrapper: component(
|
|
1915
1920
|
ref?: React.RefSetter<PublicScrollViewInstance>,
|
|
1916
1921
|
...props: ScrollViewProps
|
|
1917
|
-
) =
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1922
|
+
) = function Wrapper({
|
|
1923
|
+
ref,
|
|
1924
|
+
...props
|
|
1925
|
+
}: {
|
|
1926
|
+
ref?: React.RefSetter<PublicScrollViewInstance>,
|
|
1927
|
+
...ScrollViewProps,
|
|
1928
|
+
}): React.Node {
|
|
1921
1929
|
return ref == null ? (
|
|
1922
1930
|
<ScrollView {...props} />
|
|
1923
1931
|
) : (
|
|
1924
1932
|
<ScrollView {...props} scrollViewRef={ref} />
|
|
1925
1933
|
);
|
|
1926
|
-
}
|
|
1934
|
+
};
|
|
1927
1935
|
ScrollViewWrapper.displayName = 'ScrollView';
|
|
1928
1936
|
// $FlowExpectedError[prop-missing]
|
|
1929
1937
|
ScrollViewWrapper.Context = ScrollViewContext;
|
|
@@ -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 {HostComponent} from '../../../src/private/types/HostComponent';
|
|
@@ -9,10 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import * as React from 'react';
|
|
12
|
+
import {createContext} from 'react';
|
|
12
13
|
|
|
13
14
|
type Value = {horizontal: boolean} | null;
|
|
14
15
|
|
|
15
|
-
const ScrollViewContext: React.Context<Value> =
|
|
16
|
+
const ScrollViewContext: React.Context<Value> = createContext(null);
|
|
16
17
|
if (__DEV__) {
|
|
17
18
|
ScrollViewContext.displayName = 'ScrollViewContext';
|
|
18
19
|
}
|
|
@@ -42,7 +42,7 @@ export type ScrollViewNativeProps = $ReadOnly<{
|
|
|
42
42
|
directionalLockEnabled?: ?boolean,
|
|
43
43
|
disableIntervalMomentum?: ?boolean,
|
|
44
44
|
endFillColor?: ?ColorValue,
|
|
45
|
-
fadingEdgeLength?: ?number,
|
|
45
|
+
fadingEdgeLength?: ?number | {start: number, end: number},
|
|
46
46
|
indicatorStyle?: ?('default' | 'black' | 'white'),
|
|
47
47
|
isInvertedVirtualizedList?: ?boolean,
|
|
48
48
|
keyboardDismissMode?: ?('none' | 'on-drag' | 'interactive'),
|