@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
|
@@ -16,7 +16,14 @@ import StyleSheet from '../../StyleSheet/StyleSheet';
|
|
|
16
16
|
import Platform from '../../Utilities/Platform';
|
|
17
17
|
import useMergeRefs from '../../Utilities/useMergeRefs';
|
|
18
18
|
import * as React from 'react';
|
|
19
|
-
import {
|
|
19
|
+
import {
|
|
20
|
+
cloneElement,
|
|
21
|
+
useCallback,
|
|
22
|
+
useEffect,
|
|
23
|
+
useMemo,
|
|
24
|
+
useRef,
|
|
25
|
+
useState,
|
|
26
|
+
} from 'react';
|
|
20
27
|
|
|
21
28
|
export type ScrollViewStickyHeaderProps = $ReadOnly<{
|
|
22
29
|
children?: React.Node,
|
|
@@ -36,10 +43,16 @@ interface Instance extends React.ElementRef<typeof Animated.View> {
|
|
|
36
43
|
+setNextHeaderY: number => void;
|
|
37
44
|
}
|
|
38
45
|
|
|
39
|
-
const
|
|
46
|
+
const ScrollViewStickyHeader: component(
|
|
40
47
|
ref: React.RefSetter<Instance>,
|
|
41
48
|
...props: ScrollViewStickyHeaderProps
|
|
42
|
-
) =
|
|
49
|
+
) = function ScrollViewStickyHeader({
|
|
50
|
+
ref: forwardedRef,
|
|
51
|
+
...props
|
|
52
|
+
}: {
|
|
53
|
+
ref?: React.RefSetter<Instance>,
|
|
54
|
+
...ScrollViewStickyHeaderProps,
|
|
55
|
+
}) {
|
|
43
56
|
const {
|
|
44
57
|
inverted,
|
|
45
58
|
scrollViewHeight,
|
|
@@ -289,13 +302,13 @@ const ScrollViewStickyHeaderWithForwardedRef: component(
|
|
|
289
302
|
passthroughAnimatedPropExplicitValues={
|
|
290
303
|
passthroughAnimatedPropExplicitValues
|
|
291
304
|
}>
|
|
292
|
-
{
|
|
305
|
+
{cloneElement(child, {
|
|
293
306
|
style: styles.fill, // We transfer the child style to the wrapper.
|
|
294
307
|
onLayout: undefined, // we call this manually through our this._onLayout
|
|
295
308
|
})}
|
|
296
309
|
</Animated.View>
|
|
297
310
|
);
|
|
298
|
-
}
|
|
311
|
+
};
|
|
299
312
|
|
|
300
313
|
const styles = StyleSheet.create({
|
|
301
314
|
header: {
|
|
@@ -306,4 +319,4 @@ const styles = StyleSheet.create({
|
|
|
306
319
|
},
|
|
307
320
|
});
|
|
308
321
|
|
|
309
|
-
export default
|
|
322
|
+
export default ScrollViewStickyHeader;
|
|
@@ -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/AndroidSwitchNativeComponent';
|
|
@@ -165,7 +165,13 @@ type SwitchRef = React.ElementRef<
|
|
|
165
165
|
const Switch: component(
|
|
166
166
|
ref?: React.RefSetter<SwitchRef>,
|
|
167
167
|
...props: SwitchProps
|
|
168
|
-
) =
|
|
168
|
+
) = function Switch({
|
|
169
|
+
ref: forwardedRef,
|
|
170
|
+
...props
|
|
171
|
+
}: {
|
|
172
|
+
ref?: React.RefSetter<SwitchRef>,
|
|
173
|
+
...SwitchProps,
|
|
174
|
+
}): React.Node {
|
|
169
175
|
const {
|
|
170
176
|
disabled,
|
|
171
177
|
ios_backgroundColor,
|
|
@@ -285,6 +291,6 @@ const Switch: component(
|
|
|
285
291
|
/>
|
|
286
292
|
);
|
|
287
293
|
}
|
|
288
|
-
}
|
|
294
|
+
};
|
|
289
295
|
|
|
290
296
|
export default Switch;
|
|
@@ -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/SwitchNativeComponent';
|
|
@@ -10,11 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
import type {HostComponent} from '../../../src/private/types/HostComponent';
|
|
12
12
|
import type {PartialViewConfig} from '../../Renderer/shims/ReactNativeTypes';
|
|
13
|
-
import type {
|
|
14
|
-
ColorValue,
|
|
15
|
-
TextStyleProp,
|
|
16
|
-
ViewStyleProp,
|
|
17
|
-
} from '../../StyleSheet/StyleSheet';
|
|
13
|
+
import type {ColorValue, TextStyleProp} from '../../StyleSheet/StyleSheet';
|
|
18
14
|
import type {
|
|
19
15
|
BubblingEventHandler,
|
|
20
16
|
DirectEventHandler,
|
|
@@ -621,24 +617,12 @@ export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
|
|
|
621
617
|
export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
|
|
622
618
|
uiViewClassName: 'AndroidTextInput',
|
|
623
619
|
bubblingEventTypes: {
|
|
624
|
-
topBlur: {
|
|
625
|
-
phasedRegistrationNames: {
|
|
626
|
-
bubbled: 'onBlur',
|
|
627
|
-
captured: 'onBlurCapture',
|
|
628
|
-
},
|
|
629
|
-
},
|
|
630
620
|
topEndEditing: {
|
|
631
621
|
phasedRegistrationNames: {
|
|
632
622
|
bubbled: 'onEndEditing',
|
|
633
623
|
captured: 'onEndEditingCapture',
|
|
634
624
|
},
|
|
635
625
|
},
|
|
636
|
-
topFocus: {
|
|
637
|
-
phasedRegistrationNames: {
|
|
638
|
-
bubbled: 'onFocus',
|
|
639
|
-
captured: 'onFocusCapture',
|
|
640
|
-
},
|
|
641
|
-
},
|
|
642
626
|
topKeyPress: {
|
|
643
627
|
phasedRegistrationNames: {
|
|
644
628
|
bubbled: 'onKeyPress',
|
|
@@ -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/RCTInputAccessoryViewNativeComponent';
|
|
@@ -14,7 +14,7 @@ import {ConditionallyIgnoredEventHandlers} from '../../NativeComponent/ViewConfi
|
|
|
14
14
|
|
|
15
15
|
type PartialViewConfigWithoutName = Omit<PartialViewConfig, 'uiViewClassName'>;
|
|
16
16
|
|
|
17
|
-
const RCTTextInputViewConfig = {
|
|
17
|
+
const RCTTextInputViewConfig: PartialViewConfigWithoutName = {
|
|
18
18
|
bubblingEventTypes: {
|
|
19
19
|
topBlur: {
|
|
20
20
|
phasedRegistrationNames: {
|
|
@@ -17,6 +17,8 @@ import {
|
|
|
17
17
|
import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
|
|
18
18
|
import {TextStyle} from '../../StyleSheet/StyleSheetTypes';
|
|
19
19
|
import {
|
|
20
|
+
BlurEvent,
|
|
21
|
+
FocusEvent,
|
|
20
22
|
NativeSyntheticEvent,
|
|
21
23
|
NativeTouchEvent,
|
|
22
24
|
TargetedEvent,
|
|
@@ -455,7 +457,7 @@ export interface TextInputAndroidProps {
|
|
|
455
457
|
}
|
|
456
458
|
|
|
457
459
|
/**
|
|
458
|
-
* @deprecated Use `
|
|
460
|
+
* @deprecated Use `FocusEvent` instead
|
|
459
461
|
*/
|
|
460
462
|
export interface TextInputFocusEventData extends TargetedEvent {
|
|
461
463
|
text: string;
|
|
@@ -464,6 +466,7 @@ export interface TextInputFocusEventData extends TargetedEvent {
|
|
|
464
466
|
|
|
465
467
|
/**
|
|
466
468
|
* @see TextInputProps.onFocus
|
|
469
|
+
* @deprecated Use `FocusEvent` instead
|
|
467
470
|
*/
|
|
468
471
|
export type TextInputFocusEvent = NativeSyntheticEvent<TextInputFocusEventData>;
|
|
469
472
|
|
|
@@ -809,8 +812,11 @@ export interface TextInputProps
|
|
|
809
812
|
|
|
810
813
|
/**
|
|
811
814
|
* Callback that is called when the text input is blurred
|
|
815
|
+
*
|
|
816
|
+
* Note: If you are trying to find the last value of TextInput, you can use the `onEndEditing`
|
|
817
|
+
* event, which is fired upon completion of editing.
|
|
812
818
|
*/
|
|
813
|
-
onBlur?: ((e:
|
|
819
|
+
onBlur?: ((e: BlurEvent) => void) | undefined;
|
|
814
820
|
|
|
815
821
|
/**
|
|
816
822
|
* Callback that is called when the text input's text changes.
|
|
@@ -859,7 +865,7 @@ export interface TextInputProps
|
|
|
859
865
|
/**
|
|
860
866
|
* Callback that is called when the text input is focused
|
|
861
867
|
*/
|
|
862
|
-
onFocus?: ((e:
|
|
868
|
+
onFocus?: ((e: FocusEvent) => void) | undefined;
|
|
863
869
|
|
|
864
870
|
/**
|
|
865
871
|
* Callback that is called when the text input selection is changed.
|
|
@@ -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,
|
|
@@ -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';
|
|
@@ -60,7 +62,7 @@ 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) => {
|
|
@@ -784,7 +788,7 @@ const enterKeyHintToReturnTypeMap = {
|
|
|
784
788
|
previous: 'previous',
|
|
785
789
|
search: 'search',
|
|
786
790
|
send: 'send',
|
|
787
|
-
};
|
|
791
|
+
} as const;
|
|
788
792
|
|
|
789
793
|
const inputModeToKeyboardTypeMap = {
|
|
790
794
|
none: 'default',
|
|
@@ -792,10 +796,11 @@ const inputModeToKeyboardTypeMap = {
|
|
|
792
796
|
decimal: 'decimal-pad',
|
|
793
797
|
numeric: 'number-pad',
|
|
794
798
|
tel: 'phone-pad',
|
|
795
|
-
search:
|
|
799
|
+
search:
|
|
800
|
+
Platform.OS === 'ios' ? ('web-search' as const) : ('default' as const),
|
|
796
801
|
email: 'email-address',
|
|
797
802
|
url: 'url',
|
|
798
|
-
};
|
|
803
|
+
} as const;
|
|
799
804
|
|
|
800
805
|
// Map HTML autocomplete values to Android autoComplete values
|
|
801
806
|
const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
@@ -829,7 +834,7 @@ const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
|
829
834
|
'tel-country-code': 'tel-country-code',
|
|
830
835
|
'tel-national': 'tel-national',
|
|
831
836
|
username: 'username',
|
|
832
|
-
};
|
|
837
|
+
} as const;
|
|
833
838
|
|
|
834
839
|
// Map HTML autocomplete values to iOS textContentType values
|
|
835
840
|
const autoCompleteWebToTextContentTypeMap = {
|
|
@@ -869,29 +874,30 @@ const autoCompleteWebToTextContentTypeMap = {
|
|
|
869
874
|
tel: 'telephoneNumber',
|
|
870
875
|
url: 'URL',
|
|
871
876
|
username: 'username',
|
|
872
|
-
};
|
|
877
|
+
} as const;
|
|
873
878
|
|
|
874
|
-
const
|
|
879
|
+
const TextInput: component(
|
|
875
880
|
ref?: React.RefSetter<TextInputInstance>,
|
|
876
881
|
...props: React.ElementConfig<typeof InternalTextInput>
|
|
877
|
-
) =
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
882
|
+
) = function TextInput({
|
|
883
|
+
ref: forwardedRef,
|
|
884
|
+
allowFontScaling = true,
|
|
885
|
+
rejectResponderTermination = true,
|
|
886
|
+
underlineColorAndroid = 'transparent',
|
|
887
|
+
autoComplete,
|
|
888
|
+
textContentType,
|
|
889
|
+
readOnly,
|
|
890
|
+
editable,
|
|
891
|
+
enterKeyHint,
|
|
892
|
+
returnKeyType,
|
|
893
|
+
inputMode,
|
|
894
|
+
showSoftInputOnFocus,
|
|
895
|
+
keyboardType,
|
|
896
|
+
...restProps
|
|
897
|
+
}: {
|
|
898
|
+
ref?: React.RefSetter<TextInputInstance>,
|
|
899
|
+
...React.ElementConfig<typeof InternalTextInput>,
|
|
900
|
+
}) {
|
|
895
901
|
return (
|
|
896
902
|
<InternalTextInput
|
|
897
903
|
allowFontScaling={allowFontScaling}
|
|
@@ -921,8 +927,7 @@ const ExportedForwardRef: component(
|
|
|
921
927
|
: Platform.OS === 'ios' &&
|
|
922
928
|
autoComplete &&
|
|
923
929
|
autoComplete in autoCompleteWebToTextContentTypeMap
|
|
924
|
-
? // $FlowFixMe[
|
|
925
|
-
// $FlowFixMe[prop-missing]
|
|
930
|
+
? // $FlowFixMe[prop-missing]
|
|
926
931
|
autoCompleteWebToTextContentTypeMap[autoComplete]
|
|
927
932
|
: textContentType
|
|
928
933
|
}
|
|
@@ -930,12 +935,12 @@ const ExportedForwardRef: component(
|
|
|
930
935
|
forwardedRef={forwardedRef}
|
|
931
936
|
/>
|
|
932
937
|
);
|
|
933
|
-
}
|
|
938
|
+
};
|
|
934
939
|
|
|
935
|
-
|
|
940
|
+
TextInput.displayName = 'TextInput';
|
|
936
941
|
|
|
937
942
|
// $FlowFixMe[prop-missing]
|
|
938
|
-
|
|
943
|
+
TextInput.State = {
|
|
939
944
|
currentlyFocusedInput: TextInputState.currentlyFocusedInput,
|
|
940
945
|
|
|
941
946
|
currentlyFocusedField: TextInputState.currentlyFocusedField,
|
|
@@ -961,7 +966,7 @@ const verticalAlignToTextAlignVerticalMap = {
|
|
|
961
966
|
top: 'top',
|
|
962
967
|
bottom: 'bottom',
|
|
963
968
|
middle: 'center',
|
|
964
|
-
};
|
|
969
|
+
} as const;
|
|
965
970
|
|
|
966
971
|
// $FlowFixMe[unclear-type] Unclear type. Using `any` type is not safe.
|
|
967
|
-
export default
|
|
972
|
+
export default TextInput as any as TextInputType;
|