@office-iss/react-native-win32 0.73.2 → 0.74.0-preview.2
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/.eslintignore +1 -1
- package/.flowconfig +11 -3
- package/CHANGELOG.json +426 -54
- package/CHANGELOG.md +165 -30
- package/IntegrationTests/AccessibilityManagerTest.js +2 -2
- package/IntegrationTests/AppEventsTest.js +2 -2
- package/IntegrationTests/LayoutEventsTest.js +8 -10
- package/IntegrationTests/LoggingTestModule.js +1 -2
- package/IntegrationTests/websocket_integration_test_server.js +1 -1
- package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +6 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +6 -0
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +4 -45
- package/Libraries/Alert/NativeAlertManager.js +4 -26
- package/Libraries/Animated/Animated.js +2 -2
- package/Libraries/Animated/AnimatedPlatformConfig.js +1 -1
- package/Libraries/Animated/NativeAnimatedHelper.js +14 -11
- package/Libraries/Animated/NativeAnimatedHelper.win32.js +14 -11
- package/Libraries/Animated/NativeAnimatedModule.js +4 -68
- package/Libraries/Animated/NativeAnimatedTurboModule.js +4 -69
- package/Libraries/Animated/animations/Animation.js +6 -22
- package/Libraries/Animated/components/AnimatedFlatList.js +1 -16
- package/Libraries/Animated/components/AnimatedScrollView.js +36 -31
- package/Libraries/Animated/components/AnimatedSectionList.js +1 -20
- package/Libraries/Animated/createAnimatedComponent.js +45 -40
- package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +1 -1
- package/Libraries/Animated/useAnimatedProps.js +21 -1
- package/Libraries/AppState/NativeAppState.js +4 -24
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/Blob.js +1 -4
- package/Libraries/Blob/BlobManager.js +6 -8
- package/Libraries/Blob/File.js +1 -1
- package/Libraries/Blob/NativeBlobModule.js +4 -50
- package/Libraries/Blob/NativeFileReaderModule.js +4 -13
- package/Libraries/BugReporting/NativeBugReporting.js +4 -12
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +5 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +48 -7
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +3 -23
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +11 -0
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -57
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +3 -2
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +3 -2
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +9 -40
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +3 -43
- package/Libraries/Components/Button/ButtonWin32.Props.d.ts +36 -36
- package/Libraries/Components/Button/ButtonWin32.Props.js +2 -2
- package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -1
- package/Libraries/Components/Button/ButtonWin32.d.ts +19 -19
- package/Libraries/Components/Button/ButtonWin32.js +82 -82
- package/Libraries/Components/Button/ButtonWin32.js.map +1 -1
- package/Libraries/Components/Button.js +103 -107
- package/Libraries/Components/Button.win32.js +297 -301
- package/Libraries/Components/Clipboard/NativeClipboard.js +3 -11
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +3 -114
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -5
- package/Libraries/Components/EnterString.win32.d.ts +12 -12
- package/Libraries/Components/EnterString.win32.js +81 -81
- package/Libraries/Components/EnterString.win32.js.map +1 -1
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +3 -10
- package/Libraries/Components/Pressable/Pressable.js +1 -1
- package/Libraries/Components/Pressable/Pressable.win32.js +1 -1
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +5 -4
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +4 -24
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +3 -64
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +3 -61
- package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +3 -15
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +3 -16
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +5 -6
- package/Libraries/Components/ScrollView/ScrollView.js +12 -38
- package/Libraries/Components/ScrollView/ScrollView.win32.js +12 -38
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -2
- package/Libraries/Components/Sound/NativeSoundManager.js +3 -12
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +3 -58
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +3 -79
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +4 -53
- package/Libraries/Components/Switch/Switch.js +0 -2
- package/Libraries/Components/Switch/SwitchNativeComponent.js +4 -52
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +8 -0
- package/Libraries/Components/TextInput/InputAccessoryView.js +18 -20
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +4 -17
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -6
- package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +8 -8
- package/Libraries/Components/TextInput/Tests/TextInputTest.js +127 -127
- package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +16 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +16 -0
- package/Libraries/Components/TextInput/TextInput.js +65 -32
- package/Libraries/Components/TextInput/TextInput.win32.js +70 -37
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +3 -28
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +8 -8
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +343 -344
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
- package/Libraries/Components/Touchable/Touchable.js +2 -3
- package/Libraries/Components/Touchable/Touchable.win32.js +2 -3
- package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +5 -2
- package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +37 -37
- package/Libraries/Components/Touchable/TouchableWin32.Props.js +2 -2
- package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.Types.d.ts +114 -114
- package/Libraries/Components/Touchable/TouchableWin32.Types.js +2 -2
- package/Libraries/Components/Touchable/TouchableWin32.Types.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.d.ts +91 -91
- package/Libraries/Components/Touchable/TouchableWin32.js +506 -506
- package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +3 -16
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +2 -1
- package/Libraries/Components/View/View.js +0 -11
- package/Libraries/Components/View/View.win32.js +18 -17
- package/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
- package/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
- package/Libraries/Components/View/ViewPropTypes.js +36 -36
- package/Libraries/Components/View/ViewPropTypes.win32.js +36 -36
- package/Libraries/Core/InitializeCore.js +1 -1
- package/Libraries/Core/NativeExceptionsManager.js +3 -93
- package/Libraries/Core/ReactNativeVersion.js +12 -6
- package/Libraries/Core/ReactNativeVersionCheck.js +6 -6
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +6 -6
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +3 -18
- package/Libraries/Core/Timers/NativeTiming.js +3 -16
- package/Libraries/Core/registerCallableModule.d.ts +16 -0
- package/Libraries/Core/registerCallableModule.js +42 -0
- package/Libraries/Core/setUpPerformance.js +2 -2
- package/Libraries/Core/setUpPerformanceObserver.js +3 -1
- package/Libraries/Debugging/DebuggingOverlay.js +111 -0
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
- package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
- package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +3 -14
- package/Libraries/HeapCapture/NativeJSCHeapCapture.js +3 -9
- package/Libraries/Image/AssetSourceResolver.js +5 -5
- package/Libraries/Image/AssetUtils.js +4 -5
- package/Libraries/Image/Image.android.js +146 -174
- package/Libraries/Image/Image.d.ts +1 -1
- package/Libraries/Image/Image.ios.js +53 -79
- package/Libraries/Image/Image.win32.js +52 -74
- package/Libraries/Image/ImageBackground.js +2 -2
- package/Libraries/Image/ImageInjection.js +76 -18
- package/Libraries/Image/ImageTypes.d.ts +25 -25
- package/Libraries/Image/ImageTypes.flow.js +71 -0
- package/Libraries/Image/ImageTypes.js +7 -7
- package/Libraries/Image/ImageTypes.js.map +1 -1
- package/Libraries/Image/ImageUtils.js +1 -1
- package/Libraries/Image/ImageViewNativeComponent.js +18 -0
- package/Libraries/Image/NativeImageEditor.js +3 -42
- package/Libraries/Image/NativeImageLoaderAndroid.js +4 -28
- package/Libraries/Image/NativeImageLoaderIOS.js +4 -28
- package/Libraries/Image/NativeImageLoaderWin32.js +4 -36
- package/Libraries/Image/NativeImageStoreAndroid.js +3 -16
- package/Libraries/Image/NativeImageStoreIOS.js +3 -23
- package/Libraries/Image/Tests/ImageWin32Test.d.ts +8 -8
- package/Libraries/Image/Tests/ImageWin32Test.js +21 -21
- package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
- package/Libraries/Image/resolveAssetSource.js +59 -26
- package/Libraries/Inspector/ElementProperties.js +26 -52
- package/Libraries/Inspector/Inspector.js +122 -186
- package/Libraries/Inspector/Inspector.win32.js +118 -185
- package/Libraries/Inspector/InspectorOverlay.js +21 -33
- package/Libraries/Inspector/InspectorOverlay.win32.js +22 -33
- package/Libraries/Inspector/InspectorPanel.js +3 -17
- package/Libraries/Inspector/ReactDevToolsOverlay.js +171 -0
- package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +20 -8
- package/Libraries/Interaction/FrameRateLogger.js +8 -18
- package/Libraries/Interaction/NativeFrameRateLogger.js +4 -16
- package/Libraries/IntersectionObserver/IntersectionObserver.js +1 -1
- package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +20 -19
- package/Libraries/IntersectionObserver/IntersectionObserverManager.js +84 -6
- package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +3 -31
- package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +12 -2
- package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -2
- package/Libraries/Linking/NativeIntentAndroid.js +3 -20
- package/Libraries/Linking/NativeLinkingManager.js +3 -17
- package/Libraries/Lists/FillRateHelper.js +1 -1
- package/Libraries/Lists/FlatList.d.ts +2 -2
- package/Libraries/Lists/FlatList.js +6 -2
- package/Libraries/Lists/SectionList.d.ts +6 -1
- package/Libraries/Lists/ViewabilityHelper.js +1 -1
- package/Libraries/Lists/VirtualizeUtils.js +1 -1
- package/Libraries/Lists/VirtualizedList.js +1 -1
- package/Libraries/Lists/VirtualizedListContext.js +1 -1
- package/Libraries/Lists/VirtualizedSectionList.js +1 -1
- package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
- package/Libraries/Modal/Modal.js +43 -11
- package/Libraries/Modal/NativeModalManager.js +3 -11
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -129
- package/Libraries/MutationObserver/MutationObserver.js +1 -1
- package/Libraries/MutationObserver/MutationObserverManager.js +2 -2
- package/Libraries/MutationObserver/MutationRecord.js +12 -10
- package/Libraries/MutationObserver/NativeMutationObserver.js +3 -48
- package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
- package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +3 -10
- package/Libraries/NativeModules/specs/NativeDevMenu.js +3 -13
- package/Libraries/NativeModules/specs/NativeDevSettings.js +3 -23
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +3 -9
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +3 -38
- package/Libraries/NativeModules/specs/NativeLogBox.js +3 -10
- package/Libraries/NativeModules/specs/NativeRedBox.js +4 -11
- package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -25
- package/Libraries/Network/FormData.js +3 -1
- package/Libraries/Network/NativeNetworkingAndroid.js +4 -28
- package/Libraries/Network/NativeNetworkingIOS.js +4 -28
- package/Libraries/Performance/NativeJSCSamplingProfiler.js +3 -9
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -68
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
- package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
- package/Libraries/PersonaCoin/PersonaCoin.js +14 -14
- package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -1
- package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
- package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +19 -19
- package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -1
- package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
- package/Libraries/PersonaCoin/PersonaCoinTypes.js +23 -23
- package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -1
- package/Libraries/Pressability/Pressability.js +12 -2
- package/Libraries/Pressability/Pressability.win32.js +12 -2
- package/Libraries/Pressability/usePressability.js +7 -0
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +4 -70
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +45 -39
- package/Libraries/ReactNative/AppContainer-dev.js +211 -0
- package/Libraries/ReactNative/AppContainer-prod.js +53 -0
- package/Libraries/ReactNative/AppContainer.js +6 -149
- package/Libraries/ReactNative/AppRegistry.js +3 -1
- package/Libraries/ReactNative/BridgelessUIManager.js +375 -128
- package/Libraries/ReactNative/FabricUIManager.js +6 -0
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +3 -10
- package/Libraries/ReactNative/NativeI18nManager.js +3 -18
- package/Libraries/ReactNative/NativeUIManager.js +4 -112
- package/Libraries/ReactNative/PaperUIManager.js +8 -7
- package/Libraries/ReactNative/PaperUIManager.win32.js +26 -7
- package/Libraries/ReactNative/ReactFabricInternals.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +24 -5
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -45
- package/Libraries/ReactNative/RendererImplementation.js +11 -0
- package/Libraries/ReactNative/UIManager.d.ts +11 -34
- package/Libraries/ReactNative/UIManager.js +2 -23
- package/Libraries/ReactNative/UIManagerProperties.js +0 -2
- package/Libraries/ReactNative/__mocks__/FabricUIManager.js +23 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +5 -1
- package/Libraries/ReactNative/renderApplication.js +9 -6
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +24771 -21123
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +4160 -3109
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4384 -3322
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25194 -21398
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3763 -2636
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4027 -2867
- package/Libraries/Renderer/shims/ReactNativeTypes.js +8 -9
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -12
- package/Libraries/Settings/NativeSettingsManager.js +4 -16
- package/Libraries/Share/NativeShareModule.js +3 -13
- package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesWin32.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.d.ts +1 -20
- package/Libraries/StyleSheet/StyleSheet.js +5 -28
- package/Libraries/StyleSheet/StyleSheet.win32.js +5 -28
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +51 -7
- package/Libraries/StyleSheet/StyleSheetTypes.js +19 -11
- package/Libraries/StyleSheet/flattenStyle.js +2 -2
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/processAspectRatio.js +1 -1
- package/Libraries/StyleSheet/processFontVariant.js +1 -1
- package/Libraries/Text/Text.d.ts +5 -6
- package/Libraries/Text/Text.js +0 -6
- package/Libraries/Text/Text.win32.js +0 -6
- package/Libraries/Text/TextAncestor.js +2 -3
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +4 -41
- package/Libraries/Types/ReactDevToolsTypes.js +58 -0
- package/Libraries/Types/UIManagerJSInterface.js +16 -0
- package/Libraries/Utilities/DebugEnvironment.js +1 -4
- package/Libraries/Utilities/Dimensions.js +8 -16
- package/Libraries/Utilities/Dimensions.win32.js +8 -16
- package/Libraries/Utilities/FocusManager.win32.js +2 -0
- package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -2
- package/Libraries/Utilities/NativeAppearance.js +3 -26
- package/Libraries/Utilities/NativeDevLoadingView.js +3 -14
- package/Libraries/Utilities/NativeDeviceInfo.js +2 -47
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +3 -34
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +3 -26
- package/Libraries/Utilities/NativePlatformConstantsWin.js +3 -23
- package/Libraries/Utilities/PixelRatio.d.ts +4 -4
- package/Libraries/Utilities/Platform.android.js +4 -0
- package/Libraries/Utilities/Platform.d.ts +3 -0
- package/Libraries/Utilities/Platform.flow.js +7 -0
- package/Libraries/Utilities/Platform.flow.win32.js +18 -5
- package/Libraries/Utilities/Platform.ios.js +11 -0
- package/Libraries/Utilities/Platform.win32.js +9 -1
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeComponent.js +4 -6
- package/Libraries/Utilities/createPerformanceLogger.js +2 -74
- package/Libraries/Utilities/useMergeRefs.js +5 -9
- package/Libraries/Vibration/NativeVibration.js +3 -14
- package/Libraries/WebSocket/NativeWebSocketModule.js +4 -25
- package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
- package/Libraries/platform-types.d.ts +2 -3
- package/Libraries/vendor/emitter/EventEmitter.js +1 -0
- package/babel.config.js +1 -1
- package/flow/jest.js +1 -1
- package/flow/react.js +15 -0
- package/index.js +61 -99
- package/index.win32.js +60 -101
- package/jest/assetFileTransformer.js +1 -1
- package/jest/local-setup.js +0 -5
- package/jest/mockModal.js +2 -1
- package/jest/mockScrollView.js +1 -2
- package/jest/renderer.js +1 -1
- package/jest/setup.js +6 -3
- package/jest.config.js +2 -1
- package/overrides.json +152 -131
- package/package.json +27 -26
- package/{Libraries/Core → src/private/core}/setUpDOM.js +2 -2
- package/src/private/featureflags/NativeReactNativeFeatureFlags.js +42 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +140 -0
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +84 -0
- package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +92 -0
- package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
- package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
- package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +26 -0
- package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
- package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
- package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
- package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
- package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
- package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
- package/src/private/specs/components/RCTModalHostViewNativeComponent.js +139 -0
- package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
- package/src/private/specs/components/SwitchNativeComponent.js +61 -0
- package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
- package/src/private/specs/modules/NativeAccessibilityInfo.js +33 -0
- package/src/private/specs/modules/NativeAccessibilityInfoWin32.js +39 -0
- package/src/private/specs/modules/NativeAccessibilityManager.js +66 -0
- package/src/private/specs/modules/NativeActionSheetManager.js +54 -0
- package/src/private/specs/modules/NativeAlertManager.js +35 -0
- package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
- package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
- package/src/private/specs/modules/NativeAnimationsDebugModule.js +20 -0
- package/src/private/specs/modules/NativeAppState.js +33 -0
- package/src/private/specs/modules/NativeAppearance.js +36 -0
- package/src/private/specs/modules/NativeBlobModule.js +59 -0
- package/src/private/specs/modules/NativeBugReporting.js +20 -0
- package/src/private/specs/modules/NativeClipboard.js +21 -0
- package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
- package/src/private/specs/modules/NativeDevMenu.js +23 -0
- package/src/private/specs/modules/NativeDevSettings.js +33 -0
- package/src/private/specs/modules/NativeDevToolsSettingsManager.js +24 -0
- package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
- package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
- package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
- package/src/private/specs/modules/NativeExceptionsManager.js +103 -0
- package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
- package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
- package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
- package/src/private/specs/modules/NativeI18nManager.js +28 -0
- package/src/private/specs/modules/NativeImageEditor.js +52 -0
- package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
- package/src/private/specs/modules/NativeImageLoaderIOS.js +37 -0
- package/src/private/specs/modules/NativeImageLoaderWin32.js +45 -0
- package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
- package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
- package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
- package/src/private/specs/modules/NativeIntersectionObserver.js +41 -0
- package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
- package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
- package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
- package/src/private/specs/modules/NativeLinkingManager.js +27 -0
- package/src/private/specs/modules/NativeLogBox.js +20 -0
- package/src/private/specs/modules/NativeModalManager.js +21 -0
- package/src/private/specs/modules/NativeMutationObserver.js +58 -0
- package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
- package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
- package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
- package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
- package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
- package/src/private/specs/modules/NativePlatformConstantsWin.js +37 -0
- package/src/private/specs/modules/NativePushNotificationManagerIOS.js +107 -0
- package/src/private/specs/modules/NativeRedBox.js +20 -0
- package/src/private/specs/modules/NativeSampleTurboModule.js +53 -0
- package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
- package/src/private/specs/modules/NativeSettingsManager.js +25 -0
- package/src/private/specs/modules/NativeShareModule.js +23 -0
- package/src/private/specs/modules/NativeSoundManager.js +22 -0
- package/src/private/specs/modules/NativeSourceCode.js +36 -0
- package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +68 -0
- package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
- package/src/private/specs/modules/NativeTiming.js +26 -0
- package/src/private/specs/modules/NativeToastAndroid.js +38 -0
- package/src/private/specs/modules/NativeUIManager.js +118 -0
- package/src/private/specs/modules/NativeVibration.js +24 -0
- package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
- package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReactNativeElement.js +6 -6
- package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyCharacterData.js +2 -2
- package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyElement.js +5 -5
- package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyNode.js +19 -10
- package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/DOMRectList.js +1 -1
- package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +85 -0
- package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +80 -0
- package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +161 -0
- package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformance.js +2 -2
- package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformanceObserver.js +3 -2
- package/{Libraries/WebPerformance → src/private/webapis/performance}/Performance.js +2 -2
- package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEventTiming.js +1 -1
- package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceObserver.js +21 -2
- package/{Libraries/WebPerformance → src/private/webapis/performance}/RawPerformanceEntry.js +1 -1
- package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformanceObserver.js +9 -0
- package/src/private/webapis/performance/__tests__/EventCounts-test.js +116 -0
- package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +82 -0
- package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +108 -0
- package/src/private/webapis/performance/__tests__/Performance-test.js +117 -0
- package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +208 -0
- package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +161 -0
- package/{src → src-win}/Libraries/Components/Button/ButtonWin32.tsx +3 -3
- package/{src → src-win}/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +9 -10
- package/{src → src-win}/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
- package/{src → src-win}/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
- package/{src → src-win}/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
- package/{src → src-win}/Libraries/Text/Text.d.ts +5 -6
- package/{src → src-win}/Libraries/platform-types.d.ts +2 -3
- package/types/index.d.ts +1 -0
- package/types/modules/globals.d.ts +1 -0
- package/Libraries/Components/Button.flow.js +0 -265
- package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -85
- package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -63
- package/Libraries/Components/Text/TextWin32.Props.js +0 -3
- package/Libraries/Components/Text/TextWin32.Props.js.map +0 -1
- package/Libraries/Components/Text/TextWin32.d.ts +0 -6
- package/Libraries/Components/Text/TextWin32.js +0 -18
- package/Libraries/Components/Text/TextWin32.js.map +0 -1
- package/Libraries/Components/Touchable/Touchable.flow.js +0 -284
- package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +0 -189
- package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +0 -43
- package/Libraries/Image/Image.flow.js +0 -64
- package/Libraries/Inspector/DevtoolsOverlay.js +0 -223
- package/Libraries/Performance/QuickPerformanceLogger.js +0 -142
- package/src/Libraries/Components/Text/TextWin32.Props.ts +0 -82
- package/src/Libraries/Components/Text/TextWin32.tsx +0 -25
- /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRect.js +0 -0
- /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRectReadOnly.js +0 -0
- /package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyText.js +0 -0
- /package/{Libraries/DOM/Nodes/Utilities → src/private/webapis/dom/nodes/utilities}/Traversal.js +0 -0
- /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/ArrayLikeUtils.js +0 -0
- /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/HTMLCollection.js +0 -0
- /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/NodeList.js +0 -0
- /package/{Libraries/WebPerformance → src/private/webapis/performance}/EventCounts.js +0 -0
- /package/{Libraries/WebPerformance → src/private/webapis/performance}/MemoryInfo.js +0 -0
- /package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEntry.js +0 -0
- /package/{Libraries/WebPerformance → src/private/webapis/performance}/ReactNativeStartupTiming.js +0 -0
- /package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformance.js +0 -0
- /package/{src → src-win}/Libraries/Components/Button/ButtonWin32.Props.ts +0 -0
- /package/{src → src-win}/Libraries/Components/EnterString.win32.tsx +0 -0
- /package/{src → src-win}/Libraries/Components/TextInput/Tests/TextInputTest.tsx +0 -0
- /package/{src → src-win}/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +0 -0
- /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Props.tsx +0 -0
- /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Types.tsx +0 -0
- /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.tsx +0 -0
- /package/{src → src-win}/Libraries/Components/View/ViewWin32.d.ts +0 -0
- /package/{src → src-win}/Libraries/Image/ImageTypes.ts +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/ImageWin32Test.tsx +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/dpitest.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
- /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
- /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoin.tsx +0 -0
- /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +0 -0
- /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinTypes.ts +0 -0
- /package/{src → src-win}/Libraries/Utilities/FocusManager.win32.d.ts +0 -0
- /package/{src → src-win}/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +0 -0
|
@@ -4,23 +4,10 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @flow strict-local
|
|
8
7
|
* @format
|
|
8
|
+
* @flow strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
import
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
import codegenNativeComponent from '../../Utilities/codegenNativeComponent';
|
|
16
|
-
|
|
17
|
-
type NativeProps = $ReadOnly<{|
|
|
18
|
-
...ViewProps,
|
|
19
|
-
backgroundColor?: ?ColorValue,
|
|
20
|
-
|}>;
|
|
21
|
-
|
|
22
|
-
export default (codegenNativeComponent<NativeProps>('InputAccessory', {
|
|
23
|
-
interfaceOnly: true,
|
|
24
|
-
paperComponentName: 'RCTInputAccessoryView',
|
|
25
|
-
excludedPlatforms: ['android'],
|
|
26
|
-
}): HostComponent<NativeProps>);
|
|
11
|
+
export * from '../../../src/private/specs/components/RCTInputAccessoryViewNativeComponent';
|
|
12
|
+
import RCTInputAccessoryViewNativeComponent from '../../../src/private/specs/components/RCTInputAccessoryViewNativeComponent';
|
|
13
|
+
export default RCTInputAccessoryViewNativeComponent;
|
|
@@ -31,12 +31,6 @@ const RCTTextInputViewConfig = {
|
|
|
31
31
|
captured: 'onChangeCapture',
|
|
32
32
|
},
|
|
33
33
|
},
|
|
34
|
-
topContentSizeChange: {
|
|
35
|
-
phasedRegistrationNames: {
|
|
36
|
-
captured: 'onContentSizeChangeCapture',
|
|
37
|
-
bubbled: 'onContentSizeChange',
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
34
|
topEndEditing: {
|
|
41
35
|
phasedRegistrationNames: {
|
|
42
36
|
bubbled: 'onEndEditing',
|
|
@@ -97,6 +91,9 @@ const RCTTextInputViewConfig = {
|
|
|
97
91
|
topChangeSync: {
|
|
98
92
|
registrationName: 'onChangeSync',
|
|
99
93
|
},
|
|
94
|
+
topContentSizeChange: {
|
|
95
|
+
registrationName: 'onContentSizeChange',
|
|
96
|
+
},
|
|
100
97
|
},
|
|
101
98
|
validAttributes: {
|
|
102
99
|
fontSize: true,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export declare const title = "TextInput";
|
|
2
|
-
export declare const displayName = "TextInput";
|
|
3
|
-
export declare const description = "TextInput Examples and Tests";
|
|
4
|
-
export declare const examples: {
|
|
5
|
-
title: string;
|
|
6
|
-
description: string;
|
|
7
|
-
render(): JSX.Element;
|
|
8
|
-
}[];
|
|
1
|
+
export declare const title = "TextInput";
|
|
2
|
+
export declare const displayName = "TextInput";
|
|
3
|
+
export declare const description = "TextInput Examples and Tests";
|
|
4
|
+
export declare const examples: {
|
|
5
|
+
title: string;
|
|
6
|
+
description: string;
|
|
7
|
+
render(): JSX.Element;
|
|
8
|
+
}[];
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.examples = exports.description = exports.displayName = exports.title = void 0;
|
|
7
|
-
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const react_native_1 = require("react-native");
|
|
9
|
-
// Disabling no-jsx-lambda so functional components are more convenient to use
|
|
10
|
-
const AutoFocusingTextInputTest = () => {
|
|
11
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
12
|
-
react_1.default.createElement(react_native_1.Text, null, "This TextInput auto focuses"),
|
|
13
|
-
react_1.default.createElement(react_native_1.TextInput, { autoFocus: true, maxLength: 140, multiline: true, style: styles.input })));
|
|
14
|
-
};
|
|
15
|
-
const PlaceholderTextInputTest = () => {
|
|
16
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
17
|
-
react_1.default.createElement(react_native_1.Text, null, "This TextInput demonstrates placeholders"),
|
|
18
|
-
react_1.default.createElement(react_native_1.TextInput, { maxLength: 140, multiline: true, placeholder: "I am a blue placeholder, type in me for something magical", placeholderTextColor: "blue", style: styles.green })));
|
|
19
|
-
};
|
|
20
|
-
const ControllingTextInputTest = () => {
|
|
21
|
-
const [value, setValue] = react_1.default.useState('');
|
|
22
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
23
|
-
react_1.default.createElement(react_native_1.Text, null, "This TextInput inserts spaces between characters"),
|
|
24
|
-
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onChangeText: (text) => setValue(text.endsWith(' ') ? value : (text + ' ')), style: styles.blue, value: value })));
|
|
25
|
-
};
|
|
26
|
-
const BlurringAndFocusingTextInputTest = () => {
|
|
27
|
-
const [isFocused, setIsFocused] = react_1.default.useState(false);
|
|
28
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
29
|
-
react_1.default.createElement(react_native_1.Text, null,
|
|
30
|
-
"This TextInput is currently focused: + ",
|
|
31
|
-
isFocused ? 'true' : 'false'),
|
|
32
|
-
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onBlur: () => setIsFocused(false), onFocus: () => setIsFocused(true), style: styles.input })));
|
|
33
|
-
};
|
|
34
|
-
const LayoutListeningTextInputTest = () => {
|
|
35
|
-
const [eventCounter, setEventCounter] = react_1.default.useState(0);
|
|
36
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
37
|
-
react_1.default.createElement(react_native_1.Text, null,
|
|
38
|
-
"The number of onContentSizeChanges is listed here + ",
|
|
39
|
-
eventCounter),
|
|
40
|
-
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onContentSizeChange: () => setEventCounter(eventCounter + 1), style: styles.input })));
|
|
41
|
-
};
|
|
42
|
-
const KeyPressListeningTextInputTest = () => {
|
|
43
|
-
const [value, setValue] = react_1.default.useState('');
|
|
44
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
45
|
-
react_1.default.createElement(react_native_1.Text, null, "This TextInput uses onKeyPress to maintain state: it is slow"),
|
|
46
|
-
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onKeyPress: (e) => setValue(value + e.nativeEvent.key), style: styles.input, value: value })));
|
|
47
|
-
};
|
|
48
|
-
const StyleTextInputTest = () => {
|
|
49
|
-
return (react_1.default.createElement(react_native_1.View, null,
|
|
50
|
-
react_1.default.createElement(react_native_1.Text, null, "This TextInput is styled differently"),
|
|
51
|
-
react_1.default.createElement(react_native_1.TextInput, { multiline: true, style: styles.superInput })));
|
|
52
|
-
};
|
|
53
|
-
exports.title = 'TextInput';
|
|
54
|
-
exports.displayName = 'TextInput';
|
|
55
|
-
exports.description = 'TextInput Examples and Tests';
|
|
56
|
-
exports.examples = [
|
|
57
|
-
{
|
|
58
|
-
title: 'Autofocus Example',
|
|
59
|
-
description: 'autoFocus in action',
|
|
60
|
-
render() {
|
|
61
|
-
return (react_1.default.createElement(AutoFocusingTextInputTest, null));
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
title: 'Placeholders Example',
|
|
66
|
-
description: 'placeholder in action',
|
|
67
|
-
render() {
|
|
68
|
-
return (react_1.default.createElement(PlaceholderTextInputTest, null));
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
title: 'Controlled Example',
|
|
73
|
-
description: 'Controlling inputs in action',
|
|
74
|
-
render() {
|
|
75
|
-
return (react_1.default.createElement(ControllingTextInputTest, null));
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
title: 'Focus and Blur Example',
|
|
80
|
-
description: 'onFocus/onBlur in action',
|
|
81
|
-
render() {
|
|
82
|
-
return (react_1.default.createElement(BlurringAndFocusingTextInputTest, null));
|
|
83
|
-
},
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
title: 'ContentSizeChange Example',
|
|
87
|
-
description: 'onContentSizeChange in action',
|
|
88
|
-
render() {
|
|
89
|
-
return (react_1.default.createElement(LayoutListeningTextInputTest, null));
|
|
90
|
-
},
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
title: 'Control via onKeyPress Example',
|
|
94
|
-
description: 'onKeyPress in action',
|
|
95
|
-
render() {
|
|
96
|
-
return (react_1.default.createElement(KeyPressListeningTextInputTest, null));
|
|
97
|
-
},
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
title: 'Super Styling Example',
|
|
101
|
-
description: 'Styling in action',
|
|
102
|
-
render() {
|
|
103
|
-
return (react_1.default.createElement(StyleTextInputTest, null));
|
|
104
|
-
},
|
|
105
|
-
},
|
|
106
|
-
];
|
|
107
|
-
const styles = react_native_1.StyleSheet.create({
|
|
108
|
-
input: {
|
|
109
|
-
height: 20,
|
|
110
|
-
},
|
|
111
|
-
blue: {
|
|
112
|
-
color: 'blue',
|
|
113
|
-
height: 20,
|
|
114
|
-
},
|
|
115
|
-
green: {
|
|
116
|
-
color: 'green',
|
|
117
|
-
height: 20,
|
|
118
|
-
},
|
|
119
|
-
superInput: {
|
|
120
|
-
color: 'purple',
|
|
121
|
-
fontSize: 24,
|
|
122
|
-
fontStyle: 'italic',
|
|
123
|
-
fontWeight: 'bold',
|
|
124
|
-
fontFamily: 'times-new-roman',
|
|
125
|
-
height: 100,
|
|
126
|
-
},
|
|
127
|
-
});
|
|
1
|
+
'use strict';
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.examples = exports.description = exports.displayName = exports.title = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const react_native_1 = require("react-native");
|
|
9
|
+
// Disabling no-jsx-lambda so functional components are more convenient to use
|
|
10
|
+
const AutoFocusingTextInputTest = () => {
|
|
11
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
12
|
+
react_1.default.createElement(react_native_1.Text, null, "This TextInput auto focuses"),
|
|
13
|
+
react_1.default.createElement(react_native_1.TextInput, { autoFocus: true, maxLength: 140, multiline: true, style: styles.input })));
|
|
14
|
+
};
|
|
15
|
+
const PlaceholderTextInputTest = () => {
|
|
16
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
17
|
+
react_1.default.createElement(react_native_1.Text, null, "This TextInput demonstrates placeholders"),
|
|
18
|
+
react_1.default.createElement(react_native_1.TextInput, { maxLength: 140, multiline: true, placeholder: "I am a blue placeholder, type in me for something magical", placeholderTextColor: "blue", style: styles.green })));
|
|
19
|
+
};
|
|
20
|
+
const ControllingTextInputTest = () => {
|
|
21
|
+
const [value, setValue] = react_1.default.useState('');
|
|
22
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
23
|
+
react_1.default.createElement(react_native_1.Text, null, "This TextInput inserts spaces between characters"),
|
|
24
|
+
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onChangeText: (text) => setValue(text.endsWith(' ') ? value : (text + ' ')), style: styles.blue, value: value })));
|
|
25
|
+
};
|
|
26
|
+
const BlurringAndFocusingTextInputTest = () => {
|
|
27
|
+
const [isFocused, setIsFocused] = react_1.default.useState(false);
|
|
28
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
29
|
+
react_1.default.createElement(react_native_1.Text, null,
|
|
30
|
+
"This TextInput is currently focused: + ",
|
|
31
|
+
isFocused ? 'true' : 'false'),
|
|
32
|
+
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onBlur: () => setIsFocused(false), onFocus: () => setIsFocused(true), style: styles.input })));
|
|
33
|
+
};
|
|
34
|
+
const LayoutListeningTextInputTest = () => {
|
|
35
|
+
const [eventCounter, setEventCounter] = react_1.default.useState(0);
|
|
36
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
37
|
+
react_1.default.createElement(react_native_1.Text, null,
|
|
38
|
+
"The number of onContentSizeChanges is listed here + ",
|
|
39
|
+
eventCounter),
|
|
40
|
+
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onContentSizeChange: () => setEventCounter(eventCounter + 1), style: styles.input })));
|
|
41
|
+
};
|
|
42
|
+
const KeyPressListeningTextInputTest = () => {
|
|
43
|
+
const [value, setValue] = react_1.default.useState('');
|
|
44
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
45
|
+
react_1.default.createElement(react_native_1.Text, null, "This TextInput uses onKeyPress to maintain state: it is slow"),
|
|
46
|
+
react_1.default.createElement(react_native_1.TextInput, { multiline: true, onKeyPress: (e) => setValue(value + e.nativeEvent.key), style: styles.input, value: value })));
|
|
47
|
+
};
|
|
48
|
+
const StyleTextInputTest = () => {
|
|
49
|
+
return (react_1.default.createElement(react_native_1.View, null,
|
|
50
|
+
react_1.default.createElement(react_native_1.Text, null, "This TextInput is styled differently"),
|
|
51
|
+
react_1.default.createElement(react_native_1.TextInput, { multiline: true, style: styles.superInput })));
|
|
52
|
+
};
|
|
53
|
+
exports.title = 'TextInput';
|
|
54
|
+
exports.displayName = 'TextInput';
|
|
55
|
+
exports.description = 'TextInput Examples and Tests';
|
|
56
|
+
exports.examples = [
|
|
57
|
+
{
|
|
58
|
+
title: 'Autofocus Example',
|
|
59
|
+
description: 'autoFocus in action',
|
|
60
|
+
render() {
|
|
61
|
+
return (react_1.default.createElement(AutoFocusingTextInputTest, null));
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
title: 'Placeholders Example',
|
|
66
|
+
description: 'placeholder in action',
|
|
67
|
+
render() {
|
|
68
|
+
return (react_1.default.createElement(PlaceholderTextInputTest, null));
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
title: 'Controlled Example',
|
|
73
|
+
description: 'Controlling inputs in action',
|
|
74
|
+
render() {
|
|
75
|
+
return (react_1.default.createElement(ControllingTextInputTest, null));
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
title: 'Focus and Blur Example',
|
|
80
|
+
description: 'onFocus/onBlur in action',
|
|
81
|
+
render() {
|
|
82
|
+
return (react_1.default.createElement(BlurringAndFocusingTextInputTest, null));
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
title: 'ContentSizeChange Example',
|
|
87
|
+
description: 'onContentSizeChange in action',
|
|
88
|
+
render() {
|
|
89
|
+
return (react_1.default.createElement(LayoutListeningTextInputTest, null));
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
title: 'Control via onKeyPress Example',
|
|
94
|
+
description: 'onKeyPress in action',
|
|
95
|
+
render() {
|
|
96
|
+
return (react_1.default.createElement(KeyPressListeningTextInputTest, null));
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
title: 'Super Styling Example',
|
|
101
|
+
description: 'Styling in action',
|
|
102
|
+
render() {
|
|
103
|
+
return (react_1.default.createElement(StyleTextInputTest, null));
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
];
|
|
107
|
+
const styles = react_native_1.StyleSheet.create({
|
|
108
|
+
input: {
|
|
109
|
+
height: 20,
|
|
110
|
+
},
|
|
111
|
+
blue: {
|
|
112
|
+
color: 'blue',
|
|
113
|
+
height: 20,
|
|
114
|
+
},
|
|
115
|
+
green: {
|
|
116
|
+
color: 'green',
|
|
117
|
+
height: 20,
|
|
118
|
+
},
|
|
119
|
+
superInput: {
|
|
120
|
+
color: 'purple',
|
|
121
|
+
fontSize: 24,
|
|
122
|
+
fontStyle: 'italic',
|
|
123
|
+
fontWeight: 'bold',
|
|
124
|
+
fontFamily: 'times-new-roman',
|
|
125
|
+
height: 100,
|
|
126
|
+
},
|
|
127
|
+
});
|
|
128
128
|
//# sourceMappingURL=TextInputTest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInputTest.js","sourceRoot":"","sources":["../../../../src/Libraries/Components/TextInput/Tests/TextInputTest.tsx"],"names":[],"mappings":"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","sourcesContent":["'use strict';\nimport React from 'react'\nimport { StyleSheet, Text, TextInput, View } from 'react-native';\n\n// Disabling no-jsx-lambda so functional components are more convenient to use\n\nconst AutoFocusingTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput auto focuses</Text>\n <TextInput\n autoFocus\n maxLength={140}\n multiline\n style={styles.input}\n />\n </View>\n );\n};\n\nconst PlaceholderTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput demonstrates placeholders</Text>\n <TextInput\n maxLength={140}\n multiline\n placeholder=\"I am a blue placeholder, type in me for something magical\"\n placeholderTextColor=\"blue\"\n style={styles.green}\n />\n </View>\n );\n};\n\nconst ControllingTextInputTest: React.FC<{}> = () => {\n const [value, setValue] = React.useState('');\n\n return (\n <View>\n <Text>This TextInput inserts spaces between characters</Text>\n <TextInput\n multiline\n onChangeText={(text) => setValue(text.endsWith(' ') ? value : (text + ' '))}\n style={styles.blue}\n value={value}\n />\n </View>\n );\n};\n\nconst BlurringAndFocusingTextInputTest: React.FC<{}> = () => {\n const [isFocused, setIsFocused] = React.useState(false);\n return (\n <View>\n <Text>This TextInput is currently focused: + {isFocused ? 'true' : 'false'}</Text>\n <TextInput\n multiline\n onBlur={() => setIsFocused(false)}\n onFocus={() => setIsFocused(true)}\n style={styles.input}\n />\n </View>\n );\n};\n\nconst LayoutListeningTextInputTest: React.FC<{}> = () => {\n const [eventCounter, setEventCounter] = React.useState(0);\n\n return (\n <View>\n <Text>The number of onContentSizeChanges is listed here + {eventCounter}</Text>\n <TextInput\n multiline\n onContentSizeChange={() => setEventCounter(eventCounter + 1)}\n style={styles.input}\n />\n </View>\n );\n};\n\nconst KeyPressListeningTextInputTest: React.FC<{}> = () => {\n const [value, setValue] = React.useState('');\n\n return (\n <View>\n <Text>This TextInput uses onKeyPress to maintain state: it is slow</Text>\n <TextInput\n multiline\n onKeyPress={(e) => setValue(value + e.nativeEvent.key)}\n style={styles.input}\n value={value}\n />\n </View>\n );\n};\n\nconst StyleTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput is styled differently</Text>\n <TextInput\n multiline\n style={styles.superInput}\n />\n </View>\n );\n};\n\nexport const title = 'TextInput';\nexport const displayName = 'TextInput';\nexport const description = 'TextInput Examples and Tests';\nexport const examples = [\n {\n title: 'Autofocus Example',\n description: 'autoFocus in action',\n render(): JSX.Element {\n return (<AutoFocusingTextInputTest />);\n },\n },\n {\n title: 'Placeholders Example',\n description: 'placeholder in action',\n render(): JSX.Element {\n return (<PlaceholderTextInputTest />);\n },\n },\n {\n title: 'Controlled Example',\n description: 'Controlling inputs in action',\n render(): JSX.Element {\n return (<ControllingTextInputTest />);\n },\n },\n {\n title: 'Focus and Blur Example',\n description: 'onFocus/onBlur in action',\n render(): JSX.Element {\n return (<BlurringAndFocusingTextInputTest />);\n },\n },\n {\n title: 'ContentSizeChange Example',\n description: 'onContentSizeChange in action',\n render(): JSX.Element {\n return (<LayoutListeningTextInputTest />);\n },\n },\n {\n title: 'Control via onKeyPress Example',\n description: 'onKeyPress in action',\n render(): JSX.Element {\n return (<KeyPressListeningTextInputTest />);\n },\n },\n {\n title: 'Super Styling Example',\n description: 'Styling in action',\n render(): JSX.Element {\n return (<StyleTextInputTest />);\n },\n },\n ];\n\nconst styles = StyleSheet.create({\n input: {\n height: 20,\n },\n blue: {\n color: 'blue',\n height: 20,\n },\n green: {\n color: 'green',\n height: 20,\n },\n superInput: {\n color: 'purple',\n fontSize: 24,\n fontStyle: 'italic',\n fontWeight: 'bold',\n fontFamily: 'times-new-roman',\n height: 100,\n },\n});\n"]}
|
|
1
|
+
{"version":3,"file":"TextInputTest.js","sourceRoot":"","sources":["../../../../src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx"],"names":[],"mappings":"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","sourcesContent":["'use strict';\nimport React from 'react'\nimport { StyleSheet, Text, TextInput, View } from 'react-native';\n\n// Disabling no-jsx-lambda so functional components are more convenient to use\n\nconst AutoFocusingTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput auto focuses</Text>\n <TextInput\n autoFocus\n maxLength={140}\n multiline\n style={styles.input}\n />\n </View>\n );\n};\n\nconst PlaceholderTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput demonstrates placeholders</Text>\n <TextInput\n maxLength={140}\n multiline\n placeholder=\"I am a blue placeholder, type in me for something magical\"\n placeholderTextColor=\"blue\"\n style={styles.green}\n />\n </View>\n );\n};\n\nconst ControllingTextInputTest: React.FC<{}> = () => {\n const [value, setValue] = React.useState('');\n\n return (\n <View>\n <Text>This TextInput inserts spaces between characters</Text>\n <TextInput\n multiline\n onChangeText={(text) => setValue(text.endsWith(' ') ? value : (text + ' '))}\n style={styles.blue}\n value={value}\n />\n </View>\n );\n};\n\nconst BlurringAndFocusingTextInputTest: React.FC<{}> = () => {\n const [isFocused, setIsFocused] = React.useState(false);\n return (\n <View>\n <Text>This TextInput is currently focused: + {isFocused ? 'true' : 'false'}</Text>\n <TextInput\n multiline\n onBlur={() => setIsFocused(false)}\n onFocus={() => setIsFocused(true)}\n style={styles.input}\n />\n </View>\n );\n};\n\nconst LayoutListeningTextInputTest: React.FC<{}> = () => {\n const [eventCounter, setEventCounter] = React.useState(0);\n\n return (\n <View>\n <Text>The number of onContentSizeChanges is listed here + {eventCounter}</Text>\n <TextInput\n multiline\n onContentSizeChange={() => setEventCounter(eventCounter + 1)}\n style={styles.input}\n />\n </View>\n );\n};\n\nconst KeyPressListeningTextInputTest: React.FC<{}> = () => {\n const [value, setValue] = React.useState('');\n\n return (\n <View>\n <Text>This TextInput uses onKeyPress to maintain state: it is slow</Text>\n <TextInput\n multiline\n onKeyPress={(e) => setValue(value + e.nativeEvent.key)}\n style={styles.input}\n value={value}\n />\n </View>\n );\n};\n\nconst StyleTextInputTest: React.FC<{}> = () => {\n return (\n <View>\n <Text>This TextInput is styled differently</Text>\n <TextInput\n multiline\n style={styles.superInput}\n />\n </View>\n );\n};\n\nexport const title = 'TextInput';\nexport const displayName = 'TextInput';\nexport const description = 'TextInput Examples and Tests';\nexport const examples = [\n {\n title: 'Autofocus Example',\n description: 'autoFocus in action',\n render(): JSX.Element {\n return (<AutoFocusingTextInputTest />);\n },\n },\n {\n title: 'Placeholders Example',\n description: 'placeholder in action',\n render(): JSX.Element {\n return (<PlaceholderTextInputTest />);\n },\n },\n {\n title: 'Controlled Example',\n description: 'Controlling inputs in action',\n render(): JSX.Element {\n return (<ControllingTextInputTest />);\n },\n },\n {\n title: 'Focus and Blur Example',\n description: 'onFocus/onBlur in action',\n render(): JSX.Element {\n return (<BlurringAndFocusingTextInputTest />);\n },\n },\n {\n title: 'ContentSizeChange Example',\n description: 'onContentSizeChange in action',\n render(): JSX.Element {\n return (<LayoutListeningTextInputTest />);\n },\n },\n {\n title: 'Control via onKeyPress Example',\n description: 'onKeyPress in action',\n render(): JSX.Element {\n return (<KeyPressListeningTextInputTest />);\n },\n },\n {\n title: 'Super Styling Example',\n description: 'Styling in action',\n render(): JSX.Element {\n return (<StyleTextInputTest />);\n },\n },\n ];\n\nconst styles = StyleSheet.create({\n input: {\n height: 20,\n },\n blue: {\n color: 'blue',\n height: 20,\n },\n green: {\n color: 'green',\n height: 20,\n },\n superInput: {\n color: 'purple',\n fontSize: 24,\n fontStyle: 'italic',\n fontWeight: 'bold',\n fontFamily: 'times-new-roman',\n height: 100,\n },\n});\n"]}
|
|
@@ -84,6 +84,9 @@ type DataDetectorTypes =
|
|
|
84
84
|
| 'link'
|
|
85
85
|
| 'address'
|
|
86
86
|
| 'calendarEvent'
|
|
87
|
+
| 'trackingNumber'
|
|
88
|
+
| 'flightNumber'
|
|
89
|
+
| 'lookupSuggestion'
|
|
87
90
|
| 'none'
|
|
88
91
|
| 'all';
|
|
89
92
|
|
|
@@ -333,6 +336,14 @@ export interface TextInputAndroidProps {
|
|
|
333
336
|
*/
|
|
334
337
|
cursorColor?: ColorValue | null | undefined;
|
|
335
338
|
|
|
339
|
+
/**
|
|
340
|
+
* When provided it will set the color of the selection handles when highlighting text.
|
|
341
|
+
* Unlike the behavior of `selectionColor` the handle color will be set independently
|
|
342
|
+
* from the color of the text selection box.
|
|
343
|
+
* @platform android
|
|
344
|
+
*/
|
|
345
|
+
selectionHandleColor?: ColorValue | null | undefined;
|
|
346
|
+
|
|
336
347
|
/**
|
|
337
348
|
* Determines whether the individual fields in your app should be included in a
|
|
338
349
|
* view structure for autofill purposes on Android API Level 26+. Defaults to auto.
|
|
@@ -738,6 +749,11 @@ export interface TextInputProps
|
|
|
738
749
|
| ((e: NativeSyntheticEvent<TextInputEndEditingEventData>) => void)
|
|
739
750
|
| undefined;
|
|
740
751
|
|
|
752
|
+
/**
|
|
753
|
+
* Called when a single tap gesture is detected.
|
|
754
|
+
*/
|
|
755
|
+
onPress?: ((e: NativeSyntheticEvent<NativeTouchEvent>) => void) | undefined;
|
|
756
|
+
|
|
741
757
|
/**
|
|
742
758
|
* Callback that is called when a touch is engaged.
|
|
743
759
|
*/
|
|
@@ -99,6 +99,9 @@ type DataDetectorTypesType =
|
|
|
99
99
|
| 'link'
|
|
100
100
|
| 'address'
|
|
101
101
|
| 'calendarEvent'
|
|
102
|
+
| 'trackingNumber'
|
|
103
|
+
| 'flightNumber'
|
|
104
|
+
| 'lookupSuggestion'
|
|
102
105
|
| 'none'
|
|
103
106
|
| 'all';
|
|
104
107
|
|
|
@@ -329,6 +332,14 @@ type AndroidProps = $ReadOnly<{|
|
|
|
329
332
|
*/
|
|
330
333
|
cursorColor?: ?ColorValue,
|
|
331
334
|
|
|
335
|
+
/**
|
|
336
|
+
* When provided it will set the color of the selection handles when highlighting text.
|
|
337
|
+
* Unlike the behavior of `selectionColor` the handle color will be set independently
|
|
338
|
+
* from the color of the text selection box.
|
|
339
|
+
* @platform android
|
|
340
|
+
*/
|
|
341
|
+
selectionHandleColor?: ?ColorValue,
|
|
342
|
+
|
|
332
343
|
/**
|
|
333
344
|
* When `false`, if there is a small amount of space available around a text input
|
|
334
345
|
* (e.g. landscape orientation on a phone), the OS may choose to have the user edit
|
|
@@ -766,6 +777,11 @@ export type Props = $ReadOnly<{|
|
|
|
766
777
|
*/
|
|
767
778
|
unstable_onKeyPressSync?: ?(e: KeyPressEvent) => mixed,
|
|
768
779
|
|
|
780
|
+
/**
|
|
781
|
+
* Called when a single tap gesture is detected.
|
|
782
|
+
*/
|
|
783
|
+
onPress?: ?(event: PressEvent) => mixed,
|
|
784
|
+
|
|
769
785
|
/**
|
|
770
786
|
* Called when a touch is engaged.
|
|
771
787
|
*/
|
|
@@ -137,6 +137,9 @@ type DataDetectorTypesType =
|
|
|
137
137
|
| 'link'
|
|
138
138
|
| 'address'
|
|
139
139
|
| 'calendarEvent'
|
|
140
|
+
| 'trackingNumber'
|
|
141
|
+
| 'flightNumber'
|
|
142
|
+
| 'lookupSuggestion'
|
|
140
143
|
| 'none'
|
|
141
144
|
| 'all';
|
|
142
145
|
|
|
@@ -808,6 +811,11 @@ export type Props = $ReadOnly<{|
|
|
|
808
811
|
*/
|
|
809
812
|
unstable_onKeyPressSync?: ?(e: KeyPressEvent) => mixed,
|
|
810
813
|
|
|
814
|
+
/**
|
|
815
|
+
* Called when a single tap gesture is detected.
|
|
816
|
+
*/
|
|
817
|
+
onPress?: ?(event: PressEvent) => mixed,
|
|
818
|
+
|
|
811
819
|
/**
|
|
812
820
|
* Called when a touch is engaged.
|
|
813
821
|
*/
|
|
@@ -909,6 +917,12 @@ export type Props = $ReadOnly<{|
|
|
|
909
917
|
*/
|
|
910
918
|
selectionColor?: ?ColorValue,
|
|
911
919
|
|
|
920
|
+
/**
|
|
921
|
+
* The text selection handle color.
|
|
922
|
+
* @platform android
|
|
923
|
+
*/
|
|
924
|
+
selectionHandleColor?: ?ColorValue,
|
|
925
|
+
|
|
912
926
|
/**
|
|
913
927
|
* If `true`, all text will automatically be selected on focus.
|
|
914
928
|
*/
|
|
@@ -1035,8 +1049,8 @@ const emptyFunctionThatReturnsTrue = () => true;
|
|
|
1035
1049
|
* return (
|
|
1036
1050
|
* <TextInput
|
|
1037
1051
|
* {...this.props} // Inherit any props passed to it; e.g., multiline, numberOfLines below
|
|
1038
|
-
* editable
|
|
1039
|
-
* maxLength
|
|
1052
|
+
* editable={true}
|
|
1053
|
+
* maxLength={40}
|
|
1040
1054
|
* />
|
|
1041
1055
|
* );
|
|
1042
1056
|
* }
|
|
@@ -1060,8 +1074,8 @@ const emptyFunctionThatReturnsTrue = () => true;
|
|
|
1060
1074
|
* borderBottomWidth: 1 }}
|
|
1061
1075
|
* >
|
|
1062
1076
|
* <UselessTextInput
|
|
1063
|
-
* multiline
|
|
1064
|
-
* numberOfLines
|
|
1077
|
+
* multiline={true}
|
|
1078
|
+
* numberOfLines={4}
|
|
1065
1079
|
* onChangeText={(text) => this.setState({text})}
|
|
1066
1080
|
* value={this.state.text}
|
|
1067
1081
|
* />
|
|
@@ -1103,6 +1117,9 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1103
1117
|
id,
|
|
1104
1118
|
tabIndex,
|
|
1105
1119
|
selection: propsSelection,
|
|
1120
|
+
selectionColor,
|
|
1121
|
+
selectionHandleColor,
|
|
1122
|
+
cursorColor,
|
|
1106
1123
|
...otherProps
|
|
1107
1124
|
} = props;
|
|
1108
1125
|
|
|
@@ -1270,10 +1287,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1270
1287
|
[mostRecentEventCount, viewCommands],
|
|
1271
1288
|
);
|
|
1272
1289
|
|
|
1273
|
-
const ref = useMergeRefs<TextInputInstance
|
|
1274
|
-
setLocalRef,
|
|
1275
|
-
props.forwardedRef,
|
|
1276
|
-
);
|
|
1290
|
+
const ref = useMergeRefs<TextInputInstance>(setLocalRef, props.forwardedRef);
|
|
1277
1291
|
|
|
1278
1292
|
const _onChange = (event: ChangeEvent) => {
|
|
1279
1293
|
const currentText = event.nativeEvent.text;
|
|
@@ -1378,27 +1392,37 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1378
1392
|
const accessible = props.accessible !== false;
|
|
1379
1393
|
const focusable = props.focusable !== false;
|
|
1380
1394
|
|
|
1395
|
+
const {
|
|
1396
|
+
editable,
|
|
1397
|
+
hitSlop,
|
|
1398
|
+
onPress,
|
|
1399
|
+
onPressIn,
|
|
1400
|
+
onPressOut,
|
|
1401
|
+
rejectResponderTermination,
|
|
1402
|
+
} = props;
|
|
1403
|
+
|
|
1381
1404
|
const config = React.useMemo(
|
|
1382
1405
|
() => ({
|
|
1383
|
-
hitSlop
|
|
1406
|
+
hitSlop,
|
|
1384
1407
|
onPress: (event: PressEvent) => {
|
|
1385
|
-
|
|
1408
|
+
onPress?.(event);
|
|
1409
|
+
if (editable !== false) {
|
|
1386
1410
|
if (inputRef.current != null) {
|
|
1387
1411
|
inputRef.current.focus();
|
|
1388
1412
|
}
|
|
1389
1413
|
}
|
|
1390
1414
|
},
|
|
1391
|
-
onPressIn:
|
|
1392
|
-
onPressOut:
|
|
1393
|
-
cancelable:
|
|
1394
|
-
Platform.OS === 'ios' ? !props.rejectResponderTermination : null,
|
|
1415
|
+
onPressIn: onPressIn,
|
|
1416
|
+
onPressOut: onPressOut,
|
|
1417
|
+
cancelable: Platform.OS === 'ios' ? !rejectResponderTermination : null,
|
|
1395
1418
|
}),
|
|
1396
1419
|
[
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1420
|
+
editable,
|
|
1421
|
+
hitSlop,
|
|
1422
|
+
onPress,
|
|
1423
|
+
onPressIn,
|
|
1424
|
+
onPressOut,
|
|
1425
|
+
rejectResponderTermination,
|
|
1402
1426
|
],
|
|
1403
1427
|
);
|
|
1404
1428
|
|
|
@@ -1431,8 +1455,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1431
1455
|
};
|
|
1432
1456
|
}
|
|
1433
1457
|
|
|
1434
|
-
|
|
1435
|
-
let style = flattenStyle(props.style);
|
|
1458
|
+
const style = flattenStyle<TextStyleProp>(props.style);
|
|
1436
1459
|
|
|
1437
1460
|
if (Platform.OS === 'ios') {
|
|
1438
1461
|
const RCTTextInputView =
|
|
@@ -1440,7 +1463,12 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1440
1463
|
? RCTMultilineTextInputView
|
|
1441
1464
|
: RCTSinglelineTextInputView;
|
|
1442
1465
|
|
|
1443
|
-
|
|
1466
|
+
const useMultilineDefaultStyle =
|
|
1467
|
+
props.multiline === true &&
|
|
1468
|
+
(style == null ||
|
|
1469
|
+
(style.padding == null &&
|
|
1470
|
+
style.paddingVertical == null &&
|
|
1471
|
+
style.paddingTop == null));
|
|
1444
1472
|
|
|
1445
1473
|
const useOnChangeSync =
|
|
1446
1474
|
(props.unstable_onChangeSync || props.unstable_onChangeTextSync) &&
|
|
@@ -1470,7 +1498,10 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1470
1498
|
onSelectionChange={_onSelectionChange}
|
|
1471
1499
|
onSelectionChangeShouldSetResponder={emptyFunctionThatReturnsTrue}
|
|
1472
1500
|
selection={selection}
|
|
1473
|
-
style={
|
|
1501
|
+
style={StyleSheet.compose(
|
|
1502
|
+
useMultilineDefaultStyle ? styles.multilineDefault : null,
|
|
1503
|
+
style,
|
|
1504
|
+
)}
|
|
1474
1505
|
text={text}
|
|
1475
1506
|
/>
|
|
1476
1507
|
);
|
|
@@ -1488,7 +1519,15 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1488
1519
|
if (childCount > 1) {
|
|
1489
1520
|
children = <Text>{children}</Text>;
|
|
1490
1521
|
}
|
|
1491
|
-
|
|
1522
|
+
// For consistency with iOS set cursor/selectionHandle color as selectionColor
|
|
1523
|
+
const colorProps = {
|
|
1524
|
+
selectionColor,
|
|
1525
|
+
selectionHandleColor:
|
|
1526
|
+
selectionHandleColor === undefined
|
|
1527
|
+
? selectionColor
|
|
1528
|
+
: selectionHandleColor,
|
|
1529
|
+
cursorColor: cursorColor === undefined ? selectionColor : cursorColor,
|
|
1530
|
+
};
|
|
1492
1531
|
textInput = (
|
|
1493
1532
|
/* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match up
|
|
1494
1533
|
* exactly with the props for TextInput. This will need to get fixed */
|
|
@@ -1502,6 +1541,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1502
1541
|
// $FlowFixMe[incompatible-type] - Figure out imperative + forward refs.
|
|
1503
1542
|
ref={ref}
|
|
1504
1543
|
{...otherProps}
|
|
1544
|
+
{...colorProps}
|
|
1505
1545
|
{...eventHandlers}
|
|
1506
1546
|
accessibilityState={_accessibilityState}
|
|
1507
1547
|
accessibilityLabelledBy={_accessibilityLabelledBy}
|
|
@@ -1712,13 +1752,6 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1712
1752
|
|
|
1713
1753
|
ExportedForwardRef.displayName = 'TextInput';
|
|
1714
1754
|
|
|
1715
|
-
/**
|
|
1716
|
-
* Switch to `deprecated-react-native-prop-types` for compatibility with future
|
|
1717
|
-
* releases. This is deprecated and will be removed in the future.
|
|
1718
|
-
*/
|
|
1719
|
-
ExportedForwardRef.propTypes =
|
|
1720
|
-
require('deprecated-react-native-prop-types').TextInputPropTypes;
|
|
1721
|
-
|
|
1722
1755
|
// $FlowFixMe[prop-missing]
|
|
1723
1756
|
ExportedForwardRef.State = {
|
|
1724
1757
|
currentlyFocusedInput: TextInputState.currentlyFocusedInput,
|
|
@@ -1738,7 +1771,7 @@ export type TextInputComponentStatics = $ReadOnly<{|
|
|
|
1738
1771
|
|}>;
|
|
1739
1772
|
|
|
1740
1773
|
const styles = StyleSheet.create({
|
|
1741
|
-
|
|
1774
|
+
multilineDefault: {
|
|
1742
1775
|
// This default top inset makes RCTMultilineTextInputView seem as close as possible
|
|
1743
1776
|
// to single-line RCTSinglelineTextInputView defaults, using the system defaults
|
|
1744
1777
|
// of font size 17 and a height of 31 points.
|