@office-iss/react-native-win32 0.80.0-preview.1 → 0.81.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.flowconfig +10 -4
- package/CHANGELOG.json +135 -6
- package/CHANGELOG.md +53 -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 +2 -1
- package/IntegrationTests/LayoutEventsTest.js +1 -1
- package/IntegrationTests/LoggingTestModule.js +16 -20
- package/IntegrationTests/PromiseTest.js +1 -1
- package/IntegrationTests/SimpleSnapshotTest.js +1 -1
- package/IntegrationTests/SyncMethodTest.js +1 -1
- package/IntegrationTests/TimersTest.js +2 -1
- package/IntegrationTests/WebSocketTest.js +2 -1
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.js +3 -3
- package/Libraries/Alert/Alert.win32.js +1 -1
- 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/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/NativeAccessibilityInfoWin32.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.win32.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.win32.js +10 -7
- 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/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/Pressable/Pressable.js +17 -8
- package/Libraries/Components/Pressable/Pressable.win32.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/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/SafeAreaView/SafeAreaView.win32.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/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/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.win32.js +12 -14
- package/Libraries/Components/TextInput/TextInput.js +42 -39
- package/Libraries/Components/TextInput/TextInput.win32.js +69 -38
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.win32.js +1 -1
- 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/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 +17 -3
- package/Libraries/Components/Touchable/Touchable.win32.js +17 -3
- package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
- package/Libraries/Components/Touchable/TouchableHighlight.js +14 -5
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +5 -3
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +5 -2
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +1 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +10 -5
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.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.win32.js +17 -3
- package/Libraries/Components/View/ViewAccessibility.d.ts +1 -0
- package/Libraries/Components/View/ViewAccessibility.js +1 -8
- package/Libraries/Components/View/ViewAccessibility.win32.js +1 -8
- package/Libraries/Components/View/ViewPropTypes.d.ts +22 -2
- package/Libraries/Components/View/ViewPropTypes.js +9 -1
- package/Libraries/Components/View/ViewPropTypes.win32.js +9 -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 +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.win32.js +11 -3
- 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/NativeImageLoaderWin32.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/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.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.d.ts +8 -2
- package/Libraries/Modal/Modal.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.win32.js +8 -17
- 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/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.win32.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.win32.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.win32.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 +7 -0
- package/Libraries/Text/Text.js +255 -246
- package/Libraries/Text/Text.win32.js +294 -285
- package/Libraries/Text/TextAncestor.js +3 -9
- package/Libraries/Text/TextAncestorContext.js +23 -0
- package/Libraries/Text/TextNativeComponent.js +4 -0
- package/Libraries/Text/TextNativeComponent.win32.js +4 -0
- package/Libraries/Text/TextProps.js +2 -5
- package/Libraries/Text/TextProps.win32.js +2 -7
- 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/Dimensions.win32.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.win32.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/index.js +22 -2
- package/index.win32.js +15 -2
- 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 +1 -0
- package/jest/setup.js +64 -445
- package/overrides.json +49 -42
- package/package.json +18 -18
- package/src/private/animated/NativeAnimatedHelper.js +8 -1
- package/src/private/animated/NativeAnimatedHelper.win32.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.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 +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/src-win/Libraries/Components/View/ViewAccessibility.d.ts +1 -0
- package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +22 -2
- package/src-win/Libraries/Text/Text.d.ts +7 -0
- 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/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
- package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +0 -20
|
@@ -10,17 +10,15 @@
|
|
|
10
10
|
|
|
11
11
|
import type {HostInstance} from '../../../src/private/types/HostInstance';
|
|
12
12
|
import type {
|
|
13
|
+
BlurEvent,
|
|
14
|
+
FocusEvent,
|
|
13
15
|
GestureResponderEvent,
|
|
14
16
|
NativeSyntheticEvent,
|
|
15
17
|
ScrollEvent,
|
|
16
18
|
} from '../../Types/CoreEventTypes';
|
|
17
19
|
import type {ViewProps} from '../View/ViewPropTypes';
|
|
18
20
|
|
|
19
|
-
import {
|
|
20
|
-
type ColorValue,
|
|
21
|
-
type TextStyleProp,
|
|
22
|
-
type ViewStyleProp,
|
|
23
|
-
} from '../../StyleSheet/StyleSheet';
|
|
21
|
+
import {type ColorValue, type TextStyleProp} from '../../StyleSheet/StyleSheet';
|
|
24
22
|
import * as React from 'react';
|
|
25
23
|
|
|
26
24
|
/**
|
|
@@ -62,22 +60,22 @@ type TextInputContentSizeChangeEventData = $ReadOnly<{
|
|
|
62
60
|
export type TextInputContentSizeChangeEvent =
|
|
63
61
|
NativeSyntheticEvent<TextInputContentSizeChangeEventData>;
|
|
64
62
|
|
|
65
|
-
type TargetEvent = $ReadOnly<{
|
|
66
|
-
target: number,
|
|
67
|
-
...
|
|
68
|
-
}>;
|
|
69
|
-
|
|
70
|
-
type TextInputFocusEventData = TargetEvent;
|
|
71
|
-
|
|
72
63
|
/**
|
|
73
64
|
* @see TextInputProps.onBlur
|
|
65
|
+
* @deprecated Use `BlurEvent` instead.
|
|
74
66
|
*/
|
|
75
|
-
export type TextInputBlurEvent =
|
|
67
|
+
export type TextInputBlurEvent = BlurEvent;
|
|
76
68
|
|
|
77
69
|
/**
|
|
78
70
|
* @see TextInputProps.onFocus
|
|
71
|
+
* @deprecated Use `FocusEvent` instead.
|
|
79
72
|
*/
|
|
80
|
-
export type TextInputFocusEvent =
|
|
73
|
+
export type TextInputFocusEvent = FocusEvent;
|
|
74
|
+
|
|
75
|
+
type TargetEvent = $ReadOnly<{
|
|
76
|
+
target: number,
|
|
77
|
+
...
|
|
78
|
+
}>;
|
|
81
79
|
|
|
82
80
|
export type Selection = $ReadOnly<{
|
|
83
81
|
start: number,
|
|
@@ -1033,7 +1031,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
1033
1031
|
}>;
|
|
1034
1032
|
|
|
1035
1033
|
export type TextInputProps = $ReadOnly<{
|
|
1036
|
-
...Omit<ViewProps, 'style'>,
|
|
1034
|
+
...Omit<ViewProps, 'style' | 'experimental_accessibilityOrder'>,
|
|
1037
1035
|
...TextInputIOSProps,
|
|
1038
1036
|
...TextInputAndroidProps,
|
|
1039
1037
|
...TextInputBaseProps,
|
|
@@ -10,17 +10,15 @@
|
|
|
10
10
|
|
|
11
11
|
import type {HostInstance} from '../../../src/private/types/HostInstance';
|
|
12
12
|
import type {
|
|
13
|
+
BlurEvent,
|
|
14
|
+
FocusEvent,
|
|
13
15
|
GestureResponderEvent,
|
|
14
16
|
NativeSyntheticEvent,
|
|
15
17
|
ScrollEvent,
|
|
16
18
|
} from '../../Types/CoreEventTypes';
|
|
17
19
|
import type {ViewProps} from '../View/ViewPropTypes';
|
|
18
20
|
|
|
19
|
-
import {
|
|
20
|
-
type ColorValue,
|
|
21
|
-
type TextStyleProp,
|
|
22
|
-
type ViewStyleProp,
|
|
23
|
-
} from '../../StyleSheet/StyleSheet';
|
|
21
|
+
import {type ColorValue, type TextStyleProp} from '../../StyleSheet/StyleSheet';
|
|
24
22
|
import * as React from 'react';
|
|
25
23
|
|
|
26
24
|
/**
|
|
@@ -62,22 +60,22 @@ type TextInputContentSizeChangeEventData = $ReadOnly<{
|
|
|
62
60
|
export type TextInputContentSizeChangeEvent =
|
|
63
61
|
NativeSyntheticEvent<TextInputContentSizeChangeEventData>;
|
|
64
62
|
|
|
65
|
-
type TargetEvent = $ReadOnly<{
|
|
66
|
-
target: number,
|
|
67
|
-
...
|
|
68
|
-
}>;
|
|
69
|
-
|
|
70
|
-
type TextInputFocusEventData = TargetEvent;
|
|
71
|
-
|
|
72
63
|
/**
|
|
73
64
|
* @see TextInputProps.onBlur
|
|
65
|
+
* @deprecated Use `BlurEvent` instead.
|
|
74
66
|
*/
|
|
75
|
-
export type TextInputBlurEvent =
|
|
67
|
+
export type TextInputBlurEvent = BlurEvent;
|
|
76
68
|
|
|
77
69
|
/**
|
|
78
70
|
* @see TextInputProps.onFocus
|
|
71
|
+
* @deprecated Use `FocusEvent` instead.
|
|
79
72
|
*/
|
|
80
|
-
export type TextInputFocusEvent =
|
|
73
|
+
export type TextInputFocusEvent = FocusEvent;
|
|
74
|
+
|
|
75
|
+
type TargetEvent = $ReadOnly<{
|
|
76
|
+
target: number,
|
|
77
|
+
...
|
|
78
|
+
}>;
|
|
81
79
|
|
|
82
80
|
export type Selection = $ReadOnly<{
|
|
83
81
|
start: number,
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
import type {HostInstance} from '../../../src/private/types/HostInstance';
|
|
12
12
|
import type {____TextStyle_Internal as TextStyleInternal} from '../../StyleSheet/StyleSheetTypes';
|
|
13
13
|
import type {
|
|
14
|
+
BlurEvent,
|
|
15
|
+
FocusEvent,
|
|
14
16
|
GestureResponderEvent,
|
|
15
17
|
ScrollEvent,
|
|
16
18
|
} from '../../Types/CoreEventTypes';
|
|
@@ -53,14 +55,14 @@ import usePressability from '../../Pressability/usePressability';
|
|
|
53
55
|
import flattenStyle from '../../StyleSheet/flattenStyle';
|
|
54
56
|
import StyleSheet, {type TextStyleProp} from '../../StyleSheet/StyleSheet';
|
|
55
57
|
import Text from '../../Text/Text';
|
|
56
|
-
import
|
|
58
|
+
import TextAncestorContext from '../../Text/TextAncestorContext';
|
|
57
59
|
import Platform from '../../Utilities/Platform';
|
|
58
60
|
import useMergeRefs from '../../Utilities/useMergeRefs';
|
|
59
61
|
import TextInputState from './TextInputState';
|
|
60
62
|
import invariant from 'invariant';
|
|
61
63
|
import nullthrows from 'nullthrows';
|
|
62
64
|
import * as React from 'react';
|
|
63
|
-
import {useCallback, useLayoutEffect, useRef, useState} from 'react';
|
|
65
|
+
import {useCallback, useLayoutEffect, useMemo, useRef, useState} from 'react';
|
|
64
66
|
|
|
65
67
|
let AndroidTextInput;
|
|
66
68
|
let AndroidTextInputCommands;
|
|
@@ -86,10 +88,12 @@ if (Platform.OS === 'android') {
|
|
|
86
88
|
|
|
87
89
|
export type {
|
|
88
90
|
AutoCapitalize,
|
|
91
|
+
BlurEvent,
|
|
89
92
|
EnterKeyHintType,
|
|
90
93
|
EnterKeyHintTypeAndroid,
|
|
91
94
|
EnterKeyHintTypeIOS,
|
|
92
95
|
EnterKeyHintTypeOptions,
|
|
96
|
+
FocusEvent,
|
|
93
97
|
InputModeOptions,
|
|
94
98
|
KeyboardType,
|
|
95
99
|
KeyboardTypeAndroid,
|
|
@@ -520,14 +524,14 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
520
524
|
});
|
|
521
525
|
};
|
|
522
526
|
|
|
523
|
-
const _onFocus = (event:
|
|
527
|
+
const _onFocus = (event: FocusEvent) => {
|
|
524
528
|
TextInputState.focusInput(inputRef.current);
|
|
525
529
|
if (props.onFocus) {
|
|
526
530
|
props.onFocus(event);
|
|
527
531
|
}
|
|
528
532
|
};
|
|
529
533
|
|
|
530
|
-
const _onBlur = (event:
|
|
534
|
+
const _onBlur = (event: BlurEvent) => {
|
|
531
535
|
TextInputState.blurInput(inputRef.current);
|
|
532
536
|
if (props.onBlur) {
|
|
533
537
|
props.onBlur(event);
|
|
@@ -578,7 +582,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
578
582
|
rejectResponderTermination,
|
|
579
583
|
} = props;
|
|
580
584
|
|
|
581
|
-
const config =
|
|
585
|
+
const config = useMemo(
|
|
582
586
|
() => ({
|
|
583
587
|
hitSlop,
|
|
584
588
|
onPress: (event: GestureResponderEvent) => {
|
|
@@ -771,9 +775,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
771
775
|
/>
|
|
772
776
|
);
|
|
773
777
|
}
|
|
774
|
-
return
|
|
775
|
-
<TextAncestor.Provider value={true}>{textInput}</TextAncestor.Provider>
|
|
776
|
-
);
|
|
778
|
+
return <TextAncestorContext value={true}>{textInput}</TextAncestorContext>;
|
|
777
779
|
}
|
|
778
780
|
|
|
779
781
|
const enterKeyHintToReturnTypeMap = {
|
|
@@ -784,7 +786,7 @@ const enterKeyHintToReturnTypeMap = {
|
|
|
784
786
|
previous: 'previous',
|
|
785
787
|
search: 'search',
|
|
786
788
|
send: 'send',
|
|
787
|
-
};
|
|
789
|
+
} as const;
|
|
788
790
|
|
|
789
791
|
const inputModeToKeyboardTypeMap = {
|
|
790
792
|
none: 'default',
|
|
@@ -792,10 +794,11 @@ const inputModeToKeyboardTypeMap = {
|
|
|
792
794
|
decimal: 'decimal-pad',
|
|
793
795
|
numeric: 'number-pad',
|
|
794
796
|
tel: 'phone-pad',
|
|
795
|
-
search:
|
|
797
|
+
search:
|
|
798
|
+
Platform.OS === 'ios' ? ('web-search' as const) : ('default' as const),
|
|
796
799
|
email: 'email-address',
|
|
797
800
|
url: 'url',
|
|
798
|
-
};
|
|
801
|
+
} as const;
|
|
799
802
|
|
|
800
803
|
// Map HTML autocomplete values to Android autoComplete values
|
|
801
804
|
const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
@@ -829,7 +832,7 @@ const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
|
829
832
|
'tel-country-code': 'tel-country-code',
|
|
830
833
|
'tel-national': 'tel-national',
|
|
831
834
|
username: 'username',
|
|
832
|
-
};
|
|
835
|
+
} as const;
|
|
833
836
|
|
|
834
837
|
// Map HTML autocomplete values to iOS textContentType values
|
|
835
838
|
const autoCompleteWebToTextContentTypeMap = {
|
|
@@ -869,29 +872,30 @@ const autoCompleteWebToTextContentTypeMap = {
|
|
|
869
872
|
tel: 'telephoneNumber',
|
|
870
873
|
url: 'URL',
|
|
871
874
|
username: 'username',
|
|
872
|
-
};
|
|
875
|
+
} as const;
|
|
873
876
|
|
|
874
|
-
const
|
|
877
|
+
const TextInput: component(
|
|
875
878
|
ref?: React.RefSetter<TextInputInstance>,
|
|
876
879
|
...props: React.ElementConfig<typeof InternalTextInput>
|
|
877
|
-
) =
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
880
|
+
) = function TextInput({
|
|
881
|
+
ref: forwardedRef,
|
|
882
|
+
allowFontScaling = true,
|
|
883
|
+
rejectResponderTermination = true,
|
|
884
|
+
underlineColorAndroid = 'transparent',
|
|
885
|
+
autoComplete,
|
|
886
|
+
textContentType,
|
|
887
|
+
readOnly,
|
|
888
|
+
editable,
|
|
889
|
+
enterKeyHint,
|
|
890
|
+
returnKeyType,
|
|
891
|
+
inputMode,
|
|
892
|
+
showSoftInputOnFocus,
|
|
893
|
+
keyboardType,
|
|
894
|
+
...restProps
|
|
895
|
+
}: {
|
|
896
|
+
ref?: React.RefSetter<TextInputInstance>,
|
|
897
|
+
...React.ElementConfig<typeof InternalTextInput>,
|
|
898
|
+
}) {
|
|
895
899
|
return (
|
|
896
900
|
<InternalTextInput
|
|
897
901
|
allowFontScaling={allowFontScaling}
|
|
@@ -921,8 +925,7 @@ const ExportedForwardRef: component(
|
|
|
921
925
|
: Platform.OS === 'ios' &&
|
|
922
926
|
autoComplete &&
|
|
923
927
|
autoComplete in autoCompleteWebToTextContentTypeMap
|
|
924
|
-
? // $FlowFixMe[
|
|
925
|
-
// $FlowFixMe[prop-missing]
|
|
928
|
+
? // $FlowFixMe[prop-missing]
|
|
926
929
|
autoCompleteWebToTextContentTypeMap[autoComplete]
|
|
927
930
|
: textContentType
|
|
928
931
|
}
|
|
@@ -930,12 +933,12 @@ const ExportedForwardRef: component(
|
|
|
930
933
|
forwardedRef={forwardedRef}
|
|
931
934
|
/>
|
|
932
935
|
);
|
|
933
|
-
}
|
|
936
|
+
};
|
|
934
937
|
|
|
935
|
-
|
|
938
|
+
TextInput.displayName = 'TextInput';
|
|
936
939
|
|
|
937
940
|
// $FlowFixMe[prop-missing]
|
|
938
|
-
|
|
941
|
+
TextInput.State = {
|
|
939
942
|
currentlyFocusedInput: TextInputState.currentlyFocusedInput,
|
|
940
943
|
|
|
941
944
|
currentlyFocusedField: TextInputState.currentlyFocusedField,
|
|
@@ -961,7 +964,7 @@ const verticalAlignToTextAlignVerticalMap = {
|
|
|
961
964
|
top: 'top',
|
|
962
965
|
bottom: 'bottom',
|
|
963
966
|
middle: 'center',
|
|
964
|
-
};
|
|
967
|
+
} as const;
|
|
965
968
|
|
|
966
969
|
// $FlowFixMe[unclear-type] Unclear type. Using `any` type is not safe.
|
|
967
|
-
export default
|
|
970
|
+
export default TextInput as any as TextInputType;
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
import type {HostInstance} from '../../../src/private/types/HostInstance';
|
|
12
12
|
import type {____TextStyle_Internal as TextStyleInternal} from '../../StyleSheet/StyleSheetTypes';
|
|
13
13
|
import type {
|
|
14
|
+
BlurEvent,
|
|
15
|
+
FocusEvent,
|
|
14
16
|
GestureResponderEvent,
|
|
15
17
|
ScrollEvent,
|
|
16
18
|
} from '../../Types/CoreEventTypes';
|
|
@@ -61,7 +63,7 @@ import TextInputState from './TextInputState';
|
|
|
61
63
|
import invariant from 'invariant';
|
|
62
64
|
import nullthrows from 'nullthrows';
|
|
63
65
|
import * as React from 'react';
|
|
64
|
-
import {useCallback, useLayoutEffect, useRef, useState} from 'react';
|
|
66
|
+
import {useCallback, useLayoutEffect, useMemo, useRef, useState} from 'react';
|
|
65
67
|
|
|
66
68
|
let AndroidTextInput;
|
|
67
69
|
let AndroidTextInputCommands;
|
|
@@ -98,10 +100,12 @@ else if (Platform.OS === 'win32') {
|
|
|
98
100
|
|
|
99
101
|
export type {
|
|
100
102
|
AutoCapitalize,
|
|
103
|
+
BlurEvent,
|
|
101
104
|
EnterKeyHintType,
|
|
102
105
|
EnterKeyHintTypeAndroid,
|
|
103
106
|
EnterKeyHintTypeIOS,
|
|
104
107
|
EnterKeyHintTypeOptions,
|
|
108
|
+
FocusEvent,
|
|
105
109
|
InputModeOptions,
|
|
106
110
|
KeyboardType,
|
|
107
111
|
KeyboardTypeAndroid,
|
|
@@ -463,6 +467,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
463
467
|
*/
|
|
464
468
|
if (instance != null) {
|
|
465
469
|
// $FlowFixMe[prop-missing] - See the explanation above.
|
|
470
|
+
// $FlowFixMe[unsafe-object-assign]
|
|
466
471
|
Object.assign(instance, {
|
|
467
472
|
clear(): void {
|
|
468
473
|
if (inputRef.current != null) {
|
|
@@ -540,14 +545,14 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
540
545
|
});
|
|
541
546
|
};
|
|
542
547
|
|
|
543
|
-
const _onFocus = (event:
|
|
548
|
+
const _onFocus = (event: FocusEvent) => {
|
|
544
549
|
TextInputState.focusInput(inputRef.current);
|
|
545
550
|
if (props.onFocus) {
|
|
546
551
|
props.onFocus(event);
|
|
547
552
|
}
|
|
548
553
|
};
|
|
549
554
|
|
|
550
|
-
const _onBlur = (event:
|
|
555
|
+
const _onBlur = (event: BlurEvent) => {
|
|
551
556
|
TextInputState.blurInput(inputRef.current);
|
|
552
557
|
if (props.onBlur) {
|
|
553
558
|
props.onBlur(event);
|
|
@@ -604,7 +609,7 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
604
609
|
rejectResponderTermination,
|
|
605
610
|
} = props;
|
|
606
611
|
|
|
607
|
-
const config =
|
|
612
|
+
const config = useMemo(
|
|
608
613
|
() => ({
|
|
609
614
|
hitSlop,
|
|
610
615
|
onPress: (event: GestureResponderEvent) => {
|
|
@@ -646,6 +651,10 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
646
651
|
for (const el of props.keyDownEvents) {
|
|
647
652
|
if (
|
|
648
653
|
event.nativeEvent.code === el.code &&
|
|
654
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
655
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
656
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
657
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
649
658
|
el.handledEventPhase === eventPhase.Bubbling
|
|
650
659
|
) {
|
|
651
660
|
event.stopPropagation();
|
|
@@ -659,7 +668,14 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
659
668
|
if (props.keyUpEvents && event.isPropagationStopped() !== true) {
|
|
660
669
|
// $FlowFixMe - keyDownEvents was already checked to not be undefined
|
|
661
670
|
for (const el of props.keyUpEvents) {
|
|
662
|
-
if (
|
|
671
|
+
if (
|
|
672
|
+
event.nativeEvent.code === el.code &&
|
|
673
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
674
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
675
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
676
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
677
|
+
el.handledEventPhase === 3
|
|
678
|
+
) {
|
|
663
679
|
event.stopPropagation();
|
|
664
680
|
}
|
|
665
681
|
}
|
|
@@ -671,7 +687,14 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
671
687
|
if (props.keyDownEvents && event.isPropagationStopped() !== true) {
|
|
672
688
|
// $FlowFixMe - keyDownEvents was already checked to not be undefined
|
|
673
689
|
for (const el of props.keyDownEvents) {
|
|
674
|
-
if (
|
|
690
|
+
if (
|
|
691
|
+
event.nativeEvent.code === el.code &&
|
|
692
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
693
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
694
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
695
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
696
|
+
el.handledEventPhase === 1
|
|
697
|
+
) {
|
|
675
698
|
event.stopPropagation();
|
|
676
699
|
}
|
|
677
700
|
}
|
|
@@ -683,7 +706,14 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
683
706
|
if (props.keyUpEvents && event.isPropagationStopped() !== true) {
|
|
684
707
|
// $FlowFixMe - keyDownEvents was already checked to not be undefined
|
|
685
708
|
for (const el of props.keyUpEvents) {
|
|
686
|
-
if (
|
|
709
|
+
if (
|
|
710
|
+
event.nativeEvent.code === el.code &&
|
|
711
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
712
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
713
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
714
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
715
|
+
el.handledEventPhase === 1
|
|
716
|
+
) {
|
|
687
717
|
event.stopPropagation();
|
|
688
718
|
}
|
|
689
719
|
}
|
|
@@ -894,7 +924,7 @@ const enterKeyHintToReturnTypeMap = {
|
|
|
894
924
|
previous: 'previous',
|
|
895
925
|
search: 'search',
|
|
896
926
|
send: 'send',
|
|
897
|
-
};
|
|
927
|
+
} as const;
|
|
898
928
|
|
|
899
929
|
const inputModeToKeyboardTypeMap = {
|
|
900
930
|
none: 'default',
|
|
@@ -902,10 +932,11 @@ const inputModeToKeyboardTypeMap = {
|
|
|
902
932
|
decimal: 'decimal-pad',
|
|
903
933
|
numeric: 'number-pad',
|
|
904
934
|
tel: 'phone-pad',
|
|
905
|
-
search:
|
|
935
|
+
search:
|
|
936
|
+
Platform.OS === 'ios' ? ('web-search' as const) : ('default' as const),
|
|
906
937
|
email: 'email-address',
|
|
907
938
|
url: 'url',
|
|
908
|
-
};
|
|
939
|
+
} as const;
|
|
909
940
|
|
|
910
941
|
// Map HTML autocomplete values to Android autoComplete values
|
|
911
942
|
const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
@@ -939,7 +970,7 @@ const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
|
939
970
|
'tel-country-code': 'tel-country-code',
|
|
940
971
|
'tel-national': 'tel-national',
|
|
941
972
|
username: 'username',
|
|
942
|
-
};
|
|
973
|
+
} as const;
|
|
943
974
|
|
|
944
975
|
// Map HTML autocomplete values to iOS textContentType values
|
|
945
976
|
const autoCompleteWebToTextContentTypeMap = {
|
|
@@ -979,29 +1010,30 @@ const autoCompleteWebToTextContentTypeMap = {
|
|
|
979
1010
|
tel: 'telephoneNumber',
|
|
980
1011
|
url: 'URL',
|
|
981
1012
|
username: 'username',
|
|
982
|
-
};
|
|
1013
|
+
} as const;
|
|
983
1014
|
|
|
984
|
-
const
|
|
1015
|
+
const TextInput: component(
|
|
985
1016
|
ref?: React.RefSetter<TextInputInstance>,
|
|
986
1017
|
...props: React.ElementConfig<typeof InternalTextInput>
|
|
987
|
-
) =
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1018
|
+
) = function TextInput({
|
|
1019
|
+
ref: forwardedRef,
|
|
1020
|
+
allowFontScaling = true,
|
|
1021
|
+
rejectResponderTermination = true,
|
|
1022
|
+
underlineColorAndroid = 'transparent',
|
|
1023
|
+
autoComplete,
|
|
1024
|
+
textContentType,
|
|
1025
|
+
readOnly,
|
|
1026
|
+
editable,
|
|
1027
|
+
enterKeyHint,
|
|
1028
|
+
returnKeyType,
|
|
1029
|
+
inputMode,
|
|
1030
|
+
showSoftInputOnFocus,
|
|
1031
|
+
keyboardType,
|
|
1032
|
+
...restProps
|
|
1033
|
+
}: {
|
|
1034
|
+
ref?: React.RefSetter<TextInputInstance>,
|
|
1035
|
+
...React.ElementConfig<typeof InternalTextInput>,
|
|
1036
|
+
}) {
|
|
1005
1037
|
return (
|
|
1006
1038
|
<InternalTextInput
|
|
1007
1039
|
allowFontScaling={allowFontScaling}
|
|
@@ -1030,8 +1062,7 @@ const ExportedForwardRef: component(
|
|
|
1030
1062
|
: Platform.OS === 'ios' &&
|
|
1031
1063
|
autoComplete &&
|
|
1032
1064
|
autoComplete in autoCompleteWebToTextContentTypeMap
|
|
1033
|
-
? // $FlowFixMe[
|
|
1034
|
-
// $FlowFixMe[prop-missing]
|
|
1065
|
+
? // $FlowFixMe[prop-missing]
|
|
1035
1066
|
autoCompleteWebToTextContentTypeMap[autoComplete]
|
|
1036
1067
|
: textContentType
|
|
1037
1068
|
}
|
|
@@ -1039,12 +1070,12 @@ const ExportedForwardRef: component(
|
|
|
1039
1070
|
forwardedRef={forwardedRef}
|
|
1040
1071
|
/>
|
|
1041
1072
|
);
|
|
1042
|
-
}
|
|
1073
|
+
};
|
|
1043
1074
|
|
|
1044
|
-
|
|
1075
|
+
TextInput.displayName = 'TextInput';
|
|
1045
1076
|
|
|
1046
1077
|
// $FlowFixMe[prop-missing]
|
|
1047
|
-
|
|
1078
|
+
TextInput.State = {
|
|
1048
1079
|
currentlyFocusedInput: TextInputState.currentlyFocusedInput,
|
|
1049
1080
|
|
|
1050
1081
|
currentlyFocusedField: TextInputState.currentlyFocusedField,
|
|
@@ -1070,7 +1101,7 @@ const verticalAlignToTextAlignVerticalMap = {
|
|
|
1070
1101
|
top: 'top',
|
|
1071
1102
|
bottom: 'bottom',
|
|
1072
1103
|
middle: 'center',
|
|
1073
|
-
};
|
|
1104
|
+
} as const;
|
|
1074
1105
|
|
|
1075
1106
|
// $FlowFixMe[unclear-type] Unclear type. Using `any` type is not safe.
|
|
1076
|
-
export default
|
|
1107
|
+
export default TextInput as any as TextInputType;
|
|
@@ -9,5 +9,4 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
export * from '../../../src/private/specs_DEPRECATED/modules/NativeToastAndroid';
|
|
12
|
-
|
|
13
|
-
export default NativeToastAndroid;
|
|
12
|
+
export {default} from '../../../src/private/specs_DEPRECATED/modules/NativeToastAndroid';
|
|
@@ -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
|
// NOTE: This file supports backwards compatibility of subpath (deep) imports
|
|
@@ -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
|
// NOTE: This file supports backwards compatibility of subpath (deep) imports
|