@office-iss/react-native-win32 0.84.0 → 0.85.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +1 -0
- package/.flowconfig +1 -5
- package/CHANGELOG.json +67 -22
- package/CHANGELOG.md +14 -17
- package/IntegrationTests/IntegrationTestHarnessTest.js +1 -1
- package/IntegrationTests/LayoutEventsTest.js +1 -1
- package/IntegrationTests/TimersTest.js +1 -1
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +3 -3
- package/Libraries/Animated/Animated.d.ts +8 -1
- package/Libraries/Animated/AnimatedEvent.js +4 -4
- package/Libraries/Animated/AnimatedImplementation.js +2 -2
- package/Libraries/Animated/animations/Animation.js +3 -3
- package/Libraries/Animated/animations/DecayAnimation.js +4 -4
- package/Libraries/Animated/animations/SpringAnimation.js +5 -5
- package/Libraries/Animated/animations/TimingAnimation.js +5 -5
- package/Libraries/Animated/createAnimatedComponent.js +7 -7
- package/Libraries/Animated/nodes/AnimatedColor.js +2 -2
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +12 -12
- package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +3 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +6 -6
- package/Libraries/Animated/nodes/AnimatedStyle.js +7 -7
- package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
- package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
- package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
- package/Libraries/Animated/useAnimatedColor.d.ts +15 -0
- package/Libraries/Animated/useAnimatedColor.js +25 -0
- package/Libraries/Animated/useAnimatedValueXY.d.ts +15 -0
- package/Libraries/Animated/useAnimatedValueXY.js +26 -0
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/MessageQueue.js +3 -3
- package/Libraries/BatchedBridge/NativeModules.js +12 -10
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -26
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +34 -30
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +2 -2
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/Button.win32.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +2 -2
- package/Libraries/Components/EnterString.win32.js +2 -2
- package/Libraries/Components/EnterString.win32.js.map +1 -1
- package/Libraries/Components/Keyboard/Keyboard.js +6 -6
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.d.ts +5 -0
- package/Libraries/Components/Pressable/Pressable.js +3 -3
- package/Libraries/Components/Pressable/Pressable.win32.js +3 -3
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +4 -4
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +3 -3
- package/Libraries/Components/RefreshControl/RefreshControl.js +5 -5
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +8 -12
- package/Libraries/Components/ScrollView/ScrollView.d.ts +9 -0
- package/Libraries/Components/ScrollView/ScrollView.js +19 -9
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +8 -18
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +4 -3
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/StatusBar.js +8 -8
- package/Libraries/Components/Switch/Switch.js +3 -3
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -48
- package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -11
- package/Libraries/Components/TextInput/TextInput.flow.js +21 -20
- package/Libraries/Components/TextInput/TextInput.flow.win32.js +23 -22
- package/Libraries/Components/TextInput/TextInput.js +8 -4
- package/Libraries/Components/TextInput/TextInput.win32.js +3 -4
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +2 -2
- package/Libraries/Components/Touchable/Touchable.win32.js +2 -2
- package/Libraries/Components/Touchable/TouchableBounce.js +4 -4
- package/Libraries/Components/Touchable/TouchableHighlight.js +8 -8
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +7 -7
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +7 -7
- package/Libraries/Components/Touchable/TouchableOpacity.js +4 -4
- package/Libraries/Components/Touchable/TouchableWin32.js +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +68 -31
- package/Libraries/Components/View/ViewAccessibility.js +7 -7
- package/Libraries/Components/View/ViewAccessibility.win32.js +7 -7
- package/Libraries/Components/View/ViewPropTypes.js +14 -14
- package/Libraries/Components/View/ViewPropTypes.win32.js +16 -16
- package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
- package/Libraries/Core/ExceptionsManager.js +2 -2
- package/Libraries/Core/ExtendedError.js +3 -3
- package/Libraries/Core/RawEventEmitter.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +3 -2
- package/Libraries/Core/setUpDeveloperTools.js +1 -1
- package/Libraries/Core/setUpErrorHandling.js +4 -2
- package/Libraries/Core/setUpReactDevTools.js +23 -6
- package/Libraries/Core/setUpSegmentFetcher.js +1 -1
- package/Libraries/Debugging/DebuggingOverlay.js +2 -2
- package/Libraries/EventEmitter/NativeEventEmitter.js +7 -9
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +1 -1
- package/Libraries/Image/AssetSourceResolver.js +1 -1
- package/Libraries/Image/Image.android.js +172 -306
- package/Libraries/Image/ImageProps.js +9 -11
- package/Libraries/Image/ImageSource.js +2 -2
- package/Libraries/Image/ImageSourceUtils.js +8 -4
- package/Libraries/Image/ImageTypes.flow.js +2 -2
- package/Libraries/Image/ImageViewNativeComponent.js +7 -16
- package/Libraries/Image/nativeImageSource.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +5 -4
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +3 -3
- package/Libraries/Lists/SectionList.js +1 -1
- package/Libraries/Lists/SectionListModern.js +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +38 -24
- package/Libraries/LogBox/Data/LogBoxLog.js +43 -112
- package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -117
- package/Libraries/LogBox/LogBox.js +42 -19
- package/Libraries/LogBox/LogBoxInspectorContainer.js +2 -2
- package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
- package/Libraries/LogBox/UI/LogBoxButton.js +14 -16
- package/Libraries/LogBox/UI/LogBoxInspector.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -9
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +6 -9
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +10 -15
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +25 -18
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +15 -16
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +8 -10
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.win32.js +11 -13
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -6
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +3 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +17 -29
- package/Libraries/LogBox/UI/LogBoxMessage.js +28 -37
- package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
- package/Libraries/Modal/Modal.js +3 -3
- package/Libraries/NativeComponent/BaseViewConfig.android.js +28 -52
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -21
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +16 -16
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- 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/RCTNetworkingEventDefinitions.flow.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +1 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
- package/Libraries/Pressability/Pressability.js +5 -5
- package/Libraries/Pressability/Pressability.win32.js +5 -5
- package/Libraries/Pressability/PressabilityDebug.js +1 -1
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
- package/Libraries/Pressability/usePressability.js +3 -14
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +18 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +2 -2
- package/Libraries/ReactNative/FabricUIManager.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +4 -4
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -2
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -2
- package/Libraries/Renderer/shims/ReactFabric.js +1 -3
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
- package/Libraries/Renderer/shims/ReactNative.js +3 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
- package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +1 -3
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
- package/Libraries/StyleSheet/PointPropType.js +1 -1
- package/Libraries/StyleSheet/Rect.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
- package/Libraries/StyleSheet/StyleSheetExports.js +16 -25
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +2 -7
- package/Libraries/StyleSheet/StyleSheetTypes.js +33 -35
- package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
- package/Libraries/StyleSheet/private/_TransformStyle.js +7 -7
- package/Libraries/StyleSheet/processBackgroundImage.js +7 -7
- package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
- package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
- package/Libraries/StyleSheet/processBackgroundSize.js +4 -4
- package/Libraries/StyleSheet/processBoxShadow.js +44 -4
- package/Libraries/StyleSheet/processColorArray.js +2 -2
- package/Libraries/StyleSheet/processFilter.js +2 -2
- package/Libraries/Text/Text.js +295 -627
- package/Libraries/Text/Text.win32.js +360 -744
- package/Libraries/Text/TextNativeComponent.js +14 -7
- package/Libraries/Text/TextNativeComponent.win32.js +14 -7
- package/Libraries/Text/TextProps.js +4 -4
- package/Libraries/Text/TextProps.win32.js +4 -4
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CoreEventTypes.js +21 -21
- package/Libraries/Types/CoreEventTypes.win32.js +22 -21
- package/Libraries/Types/ReactDevToolsTypes.js +2 -2
- package/Libraries/Utilities/Appearance.js +6 -1
- package/Libraries/Utilities/Dimensions.js +1 -1
- package/Libraries/Utilities/Dimensions.win32.js +1 -1
- package/Libraries/Utilities/HMRClient.js +32 -5
- package/Libraries/Utilities/IPerformanceLogger.js +4 -4
- package/Libraries/Utilities/codegenNativeCommands.js +4 -4
- package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
- package/Libraries/Utilities/codegenNativeComponent.js +2 -2
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +3 -3
- package/Libraries/Utilities/useMergeRefs.js +2 -2
- package/Libraries/vendor/core/ErrorUtils.js +4 -4
- package/Libraries/vendor/emitter/EventEmitter.js +16 -20
- package/flow/bom.js.flow +18 -17
- package/flow/dom.js.flow +12 -5
- package/flow/global.js +1 -1
- package/index.js +9 -0
- package/index.win32.js +9 -0
- package/index.win32.js.flow +8 -1
- package/jest/RefreshControlMock.js +2 -2
- package/jest/assetFileTransformer.js +8 -3
- package/jest/mockComponent.js +3 -4
- package/jest/mockNativeComponent.js +1 -1
- package/jest/mocks/ActivityIndicator.js +2 -2
- package/jest/mocks/Image.js +2 -2
- package/jest/mocks/Modal.js +2 -2
- package/jest/mocks/RefreshControl.js +3 -3
- package/jest/mocks/RendererProxy.js +2 -2
- package/jest/mocks/ScrollView.js +5 -5
- package/jest/mocks/Text.js +2 -2
- package/jest/mocks/TextInput.js +2 -2
- package/jest/mocks/View.js +2 -2
- package/jest/mocks/ViewNativeComponent.js +1 -1
- package/jest/mocks/requireNativeComponent.js +1 -1
- package/jest/mocks/useColorScheme.js +1 -1
- package/jest/setup.js +68 -31
- package/overrides.json +30 -36
- package/package.json +22 -19
- package/src/private/animated/NativeAnimatedHelper.js +2 -2
- package/src/private/animated/NativeAnimatedHelper.win32.js +2 -2
- package/src/private/animated/createAnimatedPropsMemoHook.js +19 -19
- package/src/private/components/virtualview/VirtualView.js +14 -21
- package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
- package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +39 -17
- package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
- package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
- package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
- package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
- package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +71 -79
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -2
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -12
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +3 -3
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/styles/composeStyles.js +1 -1
- package/src/private/utilities/toError.js +27 -0
- package/src/private/utilities/toExtendedError.js +30 -0
- package/src/private/webapis/dom/events/Event.js +1 -1
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
- package/src/private/webapis/dom/events/EventTarget.js +3 -3
- package/src/private/webapis/dom/events/internals/EventInternals.js +2 -2
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +2 -2
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +14 -14
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/geometry/DOMRectList.js +2 -2
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +8 -8
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +6 -6
- package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
- package/src/private/webapis/mutationobserver/MutationRecord.js +2 -2
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +3 -3
- package/src/private/webapis/performance/LongTasks.js +3 -3
- package/src/private/webapis/performance/Performance.js +4 -4
- package/src/private/webapis/performance/PerformanceEntry.js +1 -1
- package/src/private/webapis/performance/PerformanceObserver.js +2 -2
- package/src/private/webapis/performance/specs/NativePerformance.js +8 -8
- package/src/private/webapis/structuredClone/structuredClone.js +2 -2
- package/src/types/globals.d.ts +4 -4
- package/src-win/Libraries/Components/EnterString.win32.tsx +2 -2
- package/src-win/Libraries/Components/Touchable/TouchableWin32.tsx +14 -14
- package/src-win/index.win32.js.flow +8 -1
- package/types/index.d.ts +2 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -60
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +0 -94
- package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
|
@@ -24,6 +24,7 @@ import type {TextInputNativeCommands} from './TextInputNativeCommands';
|
|
|
24
24
|
|
|
25
25
|
import * as NativeComponentRegistry from '../../NativeComponent/NativeComponentRegistry';
|
|
26
26
|
import codegenNativeCommands from '../../Utilities/codegenNativeCommands';
|
|
27
|
+
import {colorAttribute} from '../View/ReactNativeStyleAttributes';
|
|
27
28
|
|
|
28
29
|
export type KeyboardType =
|
|
29
30
|
// Cross Platform
|
|
@@ -63,7 +64,7 @@ export type ReturnKeyType =
|
|
|
63
64
|
|
|
64
65
|
export type SubmitBehavior = 'submit' | 'blurAndSubmit' | 'newline';
|
|
65
66
|
|
|
66
|
-
export type AndroidTextInputNativeProps =
|
|
67
|
+
export type AndroidTextInputNativeProps = Readonly<{
|
|
67
68
|
// This allows us to inherit everything from ViewProps except for style (see below)
|
|
68
69
|
// This must be commented for Fabric codegen to work.
|
|
69
70
|
...Omit<ViewProps, 'style'>,
|
|
@@ -339,13 +340,13 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
339
340
|
* Callback that is called when the text input is blurred.
|
|
340
341
|
* `target` is the reactTag of the element
|
|
341
342
|
*/
|
|
342
|
-
onBlur?: ?BubblingEventHandler
|
|
343
|
+
onBlur?: ?BubblingEventHandler<Readonly<{target: Int32}>>,
|
|
343
344
|
|
|
344
345
|
/**
|
|
345
346
|
* Callback that is called when the text input is focused.
|
|
346
347
|
* `target` is the reactTag of the element
|
|
347
348
|
*/
|
|
348
|
-
onFocus?: ?BubblingEventHandler
|
|
349
|
+
onFocus?: ?BubblingEventHandler<Readonly<{target: Int32}>>,
|
|
349
350
|
|
|
350
351
|
/**
|
|
351
352
|
* Callback that is called when the text input's text changes.
|
|
@@ -353,7 +354,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
353
354
|
* TODO: differentiate between onChange and onChangeText
|
|
354
355
|
*/
|
|
355
356
|
onChange?: ?BubblingEventHandler<
|
|
356
|
-
|
|
357
|
+
Readonly<{target: Int32, eventCount: Int32, text: string}>,
|
|
357
358
|
>,
|
|
358
359
|
|
|
359
360
|
/**
|
|
@@ -362,7 +363,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
362
363
|
* TODO: differentiate between onChange and onChangeText
|
|
363
364
|
*/
|
|
364
365
|
onChangeText?: ?BubblingEventHandler<
|
|
365
|
-
|
|
366
|
+
Readonly<{target: Int32, eventCount: Int32, text: string}>,
|
|
366
367
|
>,
|
|
367
368
|
|
|
368
369
|
/**
|
|
@@ -373,18 +374,16 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
373
374
|
* Only called for multiline text inputs.
|
|
374
375
|
*/
|
|
375
376
|
onContentSizeChange?: ?DirectEventHandler<
|
|
376
|
-
|
|
377
|
+
Readonly<{
|
|
377
378
|
target: Int32,
|
|
378
|
-
contentSize:
|
|
379
|
+
contentSize: Readonly<{width: Double, height: Double}>,
|
|
379
380
|
}>,
|
|
380
381
|
>,
|
|
381
382
|
|
|
382
383
|
/**
|
|
383
384
|
* Callback that is called when text input ends.
|
|
384
385
|
*/
|
|
385
|
-
onEndEditing?: ?BubblingEventHandler<
|
|
386
|
-
$ReadOnly<{target: Int32, text: string}>,
|
|
387
|
-
>,
|
|
386
|
+
onEndEditing?: ?BubblingEventHandler<Readonly<{target: Int32, text: string}>>,
|
|
388
387
|
|
|
389
388
|
/**
|
|
390
389
|
* Callback that is called when the text input selection is changed.
|
|
@@ -392,9 +391,9 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
392
391
|
* `{ nativeEvent: { selection: { start, end } } }`.
|
|
393
392
|
*/
|
|
394
393
|
onSelectionChange?: ?DirectEventHandler<
|
|
395
|
-
|
|
394
|
+
Readonly<{
|
|
396
395
|
target: Int32,
|
|
397
|
-
selection:
|
|
396
|
+
selection: Readonly<{start: Double, end: Double}>,
|
|
398
397
|
}>,
|
|
399
398
|
>,
|
|
400
399
|
|
|
@@ -403,7 +402,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
403
402
|
* Invalid if `multiline={true}` is specified.
|
|
404
403
|
*/
|
|
405
404
|
onSubmitEditing?: ?BubblingEventHandler<
|
|
406
|
-
|
|
405
|
+
Readonly<{target: Int32, text: string}>,
|
|
407
406
|
>,
|
|
408
407
|
|
|
409
408
|
/**
|
|
@@ -413,7 +412,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
413
412
|
* the typed-in character otherwise including `' '` for space.
|
|
414
413
|
* Fires before `onChange` callbacks.
|
|
415
414
|
*/
|
|
416
|
-
onKeyPress?: ?BubblingEventHandler
|
|
415
|
+
onKeyPress?: ?BubblingEventHandler<Readonly<{target: Int32, key: string}>>,
|
|
417
416
|
|
|
418
417
|
/**
|
|
419
418
|
* Invoked on content scroll with `{ nativeEvent: { contentOffset: { x, y } } }`.
|
|
@@ -421,28 +420,28 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
421
420
|
* is not provided for performance reasons.
|
|
422
421
|
*/
|
|
423
422
|
onScroll?: ?DirectEventHandler<
|
|
424
|
-
|
|
423
|
+
Readonly<{
|
|
425
424
|
target: Int32,
|
|
426
425
|
responderIgnoreScroll: boolean,
|
|
427
|
-
contentInset:
|
|
426
|
+
contentInset: Readonly<{
|
|
428
427
|
top: Double, // always 0 on Android
|
|
429
428
|
bottom: Double, // always 0 on Android
|
|
430
429
|
left: Double, // always 0 on Android
|
|
431
430
|
right: Double, // always 0 on Android
|
|
432
431
|
}>,
|
|
433
|
-
contentOffset:
|
|
432
|
+
contentOffset: Readonly<{
|
|
434
433
|
x: Double,
|
|
435
434
|
y: Double,
|
|
436
435
|
}>,
|
|
437
|
-
contentSize:
|
|
436
|
+
contentSize: Readonly<{
|
|
438
437
|
width: Double, // always 0 on Android
|
|
439
438
|
height: Double, // always 0 on Android
|
|
440
439
|
}>,
|
|
441
|
-
layoutMeasurement:
|
|
440
|
+
layoutMeasurement: Readonly<{
|
|
442
441
|
width: Double,
|
|
443
442
|
height: Double,
|
|
444
443
|
}>,
|
|
445
|
-
velocity:
|
|
444
|
+
velocity: Readonly<{
|
|
446
445
|
x: Double, // always 0 on Android
|
|
447
446
|
y: Double, // always 0 on Android
|
|
448
447
|
}>,
|
|
@@ -479,7 +478,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
479
478
|
* The start and end of the text input's selection. Set start and end to
|
|
480
479
|
* the same value to position the cursor.
|
|
481
480
|
*/
|
|
482
|
-
selection?:
|
|
481
|
+
selection?: ?Readonly<{
|
|
483
482
|
start: Int32,
|
|
484
483
|
end?: ?Int32,
|
|
485
484
|
}>,
|
|
@@ -582,7 +581,7 @@ export type AndroidTextInputNativeProps = $ReadOnly<{
|
|
|
582
581
|
textShadowRadius?: ?Float,
|
|
583
582
|
textDecorationLine?: ?string,
|
|
584
583
|
fontStyle?: ?string,
|
|
585
|
-
textShadowOffset?:
|
|
584
|
+
textShadowOffset?: ?Readonly<{width?: ?Double, height?: ?Double}>,
|
|
586
585
|
lineHeight?: ?Float,
|
|
587
586
|
textTransform?: ?string,
|
|
588
587
|
color?: ?Int32,
|
|
@@ -650,41 +649,33 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
|
|
|
650
649
|
placeholder: true,
|
|
651
650
|
inlineImagePadding: true,
|
|
652
651
|
contextMenuHidden: true,
|
|
653
|
-
textShadowColor:
|
|
654
|
-
process: require('../../StyleSheet/processColor').default,
|
|
655
|
-
},
|
|
652
|
+
textShadowColor: colorAttribute,
|
|
656
653
|
maxLength: true,
|
|
657
654
|
selectTextOnFocus: true,
|
|
658
655
|
textShadowRadius: true,
|
|
659
|
-
underlineColorAndroid:
|
|
660
|
-
process: require('../../StyleSheet/processColor').default,
|
|
661
|
-
},
|
|
656
|
+
underlineColorAndroid: colorAttribute,
|
|
662
657
|
textDecorationLine: true,
|
|
663
658
|
submitBehavior: true,
|
|
664
659
|
textAlignVertical: true,
|
|
665
660
|
fontStyle: true,
|
|
666
661
|
textShadowOffset: true,
|
|
667
|
-
selectionColor:
|
|
668
|
-
selectionHandleColor:
|
|
669
|
-
|
|
670
|
-
},
|
|
671
|
-
placeholderTextColor: {
|
|
672
|
-
process: require('../../StyleSheet/processColor').default,
|
|
673
|
-
},
|
|
662
|
+
selectionColor: colorAttribute,
|
|
663
|
+
selectionHandleColor: colorAttribute,
|
|
664
|
+
placeholderTextColor: colorAttribute,
|
|
674
665
|
importantForAutofill: true,
|
|
675
666
|
lineHeight: true,
|
|
676
667
|
textTransform: true,
|
|
677
668
|
returnKeyType: true,
|
|
678
669
|
keyboardType: true,
|
|
679
670
|
multiline: true,
|
|
680
|
-
color:
|
|
671
|
+
color: colorAttribute,
|
|
681
672
|
autoComplete: true,
|
|
682
673
|
numberOfLines: true,
|
|
683
674
|
letterSpacing: true,
|
|
684
675
|
returnKeyLabel: true,
|
|
685
676
|
fontSize: true,
|
|
686
677
|
onKeyPress: true,
|
|
687
|
-
cursorColor:
|
|
678
|
+
cursorColor: colorAttribute,
|
|
688
679
|
text: true,
|
|
689
680
|
showSoftInputOnFocus: true,
|
|
690
681
|
textAlign: true,
|
|
@@ -706,22 +697,16 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig = {
|
|
|
706
697
|
editable: true,
|
|
707
698
|
fontVariant: true,
|
|
708
699
|
borderBottomRightRadius: true,
|
|
709
|
-
borderBottomColor:
|
|
710
|
-
process: require('../../StyleSheet/processColor').default,
|
|
711
|
-
},
|
|
700
|
+
borderBottomColor: colorAttribute,
|
|
712
701
|
borderRadius: true,
|
|
713
|
-
borderRightColor:
|
|
714
|
-
|
|
715
|
-
},
|
|
716
|
-
borderColor: {process: require('../../StyleSheet/processColor').default},
|
|
702
|
+
borderRightColor: colorAttribute,
|
|
703
|
+
borderColor: colorAttribute,
|
|
717
704
|
borderTopRightRadius: true,
|
|
718
705
|
borderStyle: true,
|
|
719
706
|
borderBottomLeftRadius: true,
|
|
720
|
-
borderLeftColor:
|
|
721
|
-
process: require('../../StyleSheet/processColor').default,
|
|
722
|
-
},
|
|
707
|
+
borderLeftColor: colorAttribute,
|
|
723
708
|
borderTopLeftRadius: true,
|
|
724
|
-
borderTopColor:
|
|
709
|
+
borderTopColor: colorAttribute,
|
|
725
710
|
},
|
|
726
711
|
};
|
|
727
712
|
|
|
@@ -76,7 +76,7 @@ import * as React from 'react';
|
|
|
76
76
|
* For an example, look at InputAccessoryViewExample.js in RNTester.
|
|
77
77
|
*/
|
|
78
78
|
|
|
79
|
-
export type InputAccessoryViewProps =
|
|
79
|
+
export type InputAccessoryViewProps = Readonly<{
|
|
80
80
|
+children: React.Node,
|
|
81
81
|
/**
|
|
82
82
|
* An ID which is used to associate this `InputAccessoryView` to
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
import type {PartialViewConfig} from '../../Renderer/shims/ReactNativeTypes';
|
|
12
12
|
|
|
13
13
|
import {ConditionallyIgnoredEventHandlers} from '../../NativeComponent/ViewConfigIgnore';
|
|
14
|
+
import {colorAttribute} from '../View/ReactNativeStyleAttributes';
|
|
14
15
|
|
|
15
16
|
type PartialViewConfigWithoutName = Omit<PartialViewConfig, 'uiViewClassName'>;
|
|
16
17
|
|
|
@@ -111,22 +112,16 @@ const RCTTextInputViewConfig: PartialViewConfigWithoutName = {
|
|
|
111
112
|
textShadowRadius: true,
|
|
112
113
|
letterSpacing: true,
|
|
113
114
|
textDecorationStyle: true,
|
|
114
|
-
textDecorationColor:
|
|
115
|
-
|
|
116
|
-
},
|
|
117
|
-
color: {process: require('../../StyleSheet/processColor').default},
|
|
115
|
+
textDecorationColor: colorAttribute,
|
|
116
|
+
color: colorAttribute,
|
|
118
117
|
maxFontSizeMultiplier: true,
|
|
119
|
-
textShadowColor:
|
|
120
|
-
process: require('../../StyleSheet/processColor').default,
|
|
121
|
-
},
|
|
118
|
+
textShadowColor: colorAttribute,
|
|
122
119
|
editable: true,
|
|
123
120
|
inputAccessoryViewID: true,
|
|
124
121
|
inputAccessoryViewButtonLabel: true,
|
|
125
122
|
caretHidden: true,
|
|
126
123
|
enablesReturnKeyAutomatically: true,
|
|
127
|
-
placeholderTextColor:
|
|
128
|
-
process: require('../../StyleSheet/processColor').default,
|
|
129
|
-
},
|
|
124
|
+
placeholderTextColor: colorAttribute,
|
|
130
125
|
clearButtonMode: true,
|
|
131
126
|
keyboardType: true,
|
|
132
127
|
selection: true,
|
|
@@ -134,7 +129,7 @@ const RCTTextInputViewConfig: PartialViewConfigWithoutName = {
|
|
|
134
129
|
submitBehavior: true,
|
|
135
130
|
mostRecentEventCount: true,
|
|
136
131
|
scrollEnabled: true,
|
|
137
|
-
selectionColor:
|
|
132
|
+
selectionColor: colorAttribute,
|
|
138
133
|
contextMenuHidden: true,
|
|
139
134
|
secureTextEntry: true,
|
|
140
135
|
placeholder: true,
|
|
@@ -25,20 +25,21 @@ import * as React from 'react';
|
|
|
25
25
|
/**
|
|
26
26
|
* @see TextInputProps.onChange
|
|
27
27
|
*/
|
|
28
|
-
type TextInputChangeEventData =
|
|
28
|
+
type TextInputChangeEventData = Readonly<{
|
|
29
29
|
eventCount: number,
|
|
30
30
|
target: number,
|
|
31
31
|
text: string,
|
|
32
|
+
selection?: Selection,
|
|
32
33
|
}>;
|
|
33
34
|
|
|
34
35
|
export type TextInputChangeEvent =
|
|
35
36
|
NativeSyntheticEvent<TextInputChangeEventData>;
|
|
36
37
|
|
|
37
38
|
export type TextInputEvent = NativeSyntheticEvent<
|
|
38
|
-
|
|
39
|
+
Readonly<{
|
|
39
40
|
eventCount: number,
|
|
40
41
|
previousText: string,
|
|
41
|
-
range:
|
|
42
|
+
range: Readonly<{
|
|
42
43
|
start: number,
|
|
43
44
|
end: number,
|
|
44
45
|
}>,
|
|
@@ -47,9 +48,9 @@ export type TextInputEvent = NativeSyntheticEvent<
|
|
|
47
48
|
}>,
|
|
48
49
|
>;
|
|
49
50
|
|
|
50
|
-
type TextInputContentSizeChangeEventData =
|
|
51
|
+
type TextInputContentSizeChangeEventData = Readonly<{
|
|
51
52
|
target: number,
|
|
52
|
-
contentSize:
|
|
53
|
+
contentSize: Readonly<{
|
|
53
54
|
width: number,
|
|
54
55
|
height: number,
|
|
55
56
|
}>,
|
|
@@ -73,17 +74,17 @@ export type TextInputBlurEvent = BlurEvent;
|
|
|
73
74
|
*/
|
|
74
75
|
export type TextInputFocusEvent = FocusEvent;
|
|
75
76
|
|
|
76
|
-
type TargetEvent =
|
|
77
|
+
type TargetEvent = Readonly<{
|
|
77
78
|
target: number,
|
|
78
79
|
...
|
|
79
80
|
}>;
|
|
80
81
|
|
|
81
|
-
export type Selection =
|
|
82
|
+
export type Selection = Readonly<{
|
|
82
83
|
start: number,
|
|
83
84
|
end: number,
|
|
84
85
|
}>;
|
|
85
86
|
|
|
86
|
-
type TextInputSelectionChangeEventData =
|
|
87
|
+
type TextInputSelectionChangeEventData = Readonly<{
|
|
87
88
|
...TargetEvent,
|
|
88
89
|
selection: Selection,
|
|
89
90
|
...
|
|
@@ -95,7 +96,7 @@ type TextInputSelectionChangeEventData = $ReadOnly<{
|
|
|
95
96
|
export type TextInputSelectionChangeEvent =
|
|
96
97
|
NativeSyntheticEvent<TextInputSelectionChangeEventData>;
|
|
97
98
|
|
|
98
|
-
type TextInputKeyPressEventData =
|
|
99
|
+
type TextInputKeyPressEventData = Readonly<{
|
|
99
100
|
...TargetEvent,
|
|
100
101
|
key: string,
|
|
101
102
|
target?: ?number,
|
|
@@ -109,7 +110,7 @@ type TextInputKeyPressEventData = $ReadOnly<{
|
|
|
109
110
|
export type TextInputKeyPressEvent =
|
|
110
111
|
NativeSyntheticEvent<TextInputKeyPressEventData>;
|
|
111
112
|
|
|
112
|
-
type TextInputEndEditingEventData =
|
|
113
|
+
type TextInputEndEditingEventData = Readonly<{
|
|
113
114
|
...TargetEvent,
|
|
114
115
|
eventCount: number,
|
|
115
116
|
text: string,
|
|
@@ -122,7 +123,7 @@ type TextInputEndEditingEventData = $ReadOnly<{
|
|
|
122
123
|
export type TextInputEndEditingEvent =
|
|
123
124
|
NativeSyntheticEvent<TextInputEndEditingEventData>;
|
|
124
125
|
|
|
125
|
-
type TextInputSubmitEditingEventData =
|
|
126
|
+
type TextInputSubmitEditingEventData = Readonly<{
|
|
126
127
|
...TargetEvent,
|
|
127
128
|
eventCount: number,
|
|
128
129
|
text: string,
|
|
@@ -266,7 +267,7 @@ export type EnterKeyHintTypeOptions =
|
|
|
266
267
|
|
|
267
268
|
type PasswordRules = string;
|
|
268
269
|
|
|
269
|
-
export type TextInputIOSProps =
|
|
270
|
+
export type TextInputIOSProps = Readonly<{
|
|
270
271
|
/**
|
|
271
272
|
* If true, the keyboard shortcuts (undo/redo and copy buttons) are disabled. The default value is false.
|
|
272
273
|
* @platform ios
|
|
@@ -306,7 +307,7 @@ export type TextInputIOSProps = $ReadOnly<{
|
|
|
306
307
|
*/
|
|
307
308
|
dataDetectorTypes?:
|
|
308
309
|
| ?DataDetectorTypesType
|
|
309
|
-
|
|
|
310
|
+
| ReadonlyArray<DataDetectorTypesType>,
|
|
310
311
|
|
|
311
312
|
/**
|
|
312
313
|
* If `true`, the keyboard disables the return key when there is no text and
|
|
@@ -403,7 +404,7 @@ export type TextInputIOSProps = $ReadOnly<{
|
|
|
403
404
|
smartInsertDelete?: ?boolean,
|
|
404
405
|
}>;
|
|
405
406
|
|
|
406
|
-
export type TextInputAndroidProps =
|
|
407
|
+
export type TextInputAndroidProps = Readonly<{
|
|
407
408
|
/**
|
|
408
409
|
* When provided it will set the color of the cursor (or "caret") in the component.
|
|
409
410
|
* Unlike the behavior of `selectionColor` the cursor color will be set independently
|
|
@@ -512,7 +513,7 @@ export type TextInputAndroidProps = $ReadOnly<{
|
|
|
512
513
|
underlineColorAndroid?: ?ColorValue,
|
|
513
514
|
}>;
|
|
514
515
|
|
|
515
|
-
type TextInputBaseProps =
|
|
516
|
+
type TextInputBaseProps = Readonly<{
|
|
516
517
|
/**
|
|
517
518
|
* When provided, the text input will only accept drag and drop events for the specified
|
|
518
519
|
* types. If null or not provided, the text input will accept all types of drag and drop events.
|
|
@@ -531,7 +532,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
531
532
|
*
|
|
532
533
|
* @see https://developer.android.com/reference/android/content/ClipData for more information on MIME types
|
|
533
534
|
*/
|
|
534
|
-
experimental_acceptDragAndDropTypes?:
|
|
535
|
+
experimental_acceptDragAndDropTypes?: ?ReadonlyArray<string>,
|
|
535
536
|
|
|
536
537
|
/**
|
|
537
538
|
* Can tell `TextInput` to automatically capitalize certain characters.
|
|
@@ -946,7 +947,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
946
947
|
* The start and end of the text input's selection. Set start and end to
|
|
947
948
|
* the same value to position the cursor.
|
|
948
949
|
*/
|
|
949
|
-
selection?:
|
|
950
|
+
selection?: ?Readonly<{
|
|
950
951
|
start: number,
|
|
951
952
|
end?: ?number,
|
|
952
953
|
}>,
|
|
@@ -1031,7 +1032,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
1031
1032
|
textAlign?: ?('left' | 'center' | 'right'),
|
|
1032
1033
|
}>;
|
|
1033
1034
|
|
|
1034
|
-
export type TextInputProps =
|
|
1035
|
+
export type TextInputProps = Readonly<{
|
|
1035
1036
|
...Omit<ViewProps, 'style' | 'experimental_accessibilityOrder'>,
|
|
1036
1037
|
...TextInputIOSProps,
|
|
1037
1038
|
...TextInputAndroidProps,
|
|
@@ -1167,8 +1168,8 @@ type InternalTextInput = component(
|
|
|
1167
1168
|
...TextInputProps
|
|
1168
1169
|
);
|
|
1169
1170
|
|
|
1170
|
-
export type TextInputComponentStatics =
|
|
1171
|
-
State:
|
|
1171
|
+
export type TextInputComponentStatics = Readonly<{
|
|
1172
|
+
State: Readonly<{
|
|
1172
1173
|
currentlyFocusedInput: () => ?HostInstance,
|
|
1173
1174
|
currentlyFocusedField: () => ?number,
|
|
1174
1175
|
focusTextInput: (textField: ?HostInstance) => void,
|
|
@@ -25,20 +25,21 @@ import * as React from 'react';
|
|
|
25
25
|
/**
|
|
26
26
|
* @see TextInputProps.onChange
|
|
27
27
|
*/
|
|
28
|
-
type TextInputChangeEventData =
|
|
28
|
+
type TextInputChangeEventData = Readonly<{
|
|
29
29
|
eventCount: number,
|
|
30
30
|
target: number,
|
|
31
31
|
text: string,
|
|
32
|
+
selection?: Selection,
|
|
32
33
|
}>;
|
|
33
34
|
|
|
34
35
|
export type TextInputChangeEvent =
|
|
35
36
|
NativeSyntheticEvent<TextInputChangeEventData>;
|
|
36
37
|
|
|
37
38
|
export type TextInputEvent = NativeSyntheticEvent<
|
|
38
|
-
|
|
39
|
+
Readonly<{
|
|
39
40
|
eventCount: number,
|
|
40
41
|
previousText: string,
|
|
41
|
-
range:
|
|
42
|
+
range: Readonly<{
|
|
42
43
|
start: number,
|
|
43
44
|
end: number,
|
|
44
45
|
}>,
|
|
@@ -47,9 +48,9 @@ export type TextInputEvent = NativeSyntheticEvent<
|
|
|
47
48
|
}>,
|
|
48
49
|
>;
|
|
49
50
|
|
|
50
|
-
type TextInputContentSizeChangeEventData =
|
|
51
|
+
type TextInputContentSizeChangeEventData = Readonly<{
|
|
51
52
|
target: number,
|
|
52
|
-
contentSize:
|
|
53
|
+
contentSize: Readonly<{
|
|
53
54
|
width: number,
|
|
54
55
|
height: number,
|
|
55
56
|
}>,
|
|
@@ -73,17 +74,17 @@ export type TextInputBlurEvent = BlurEvent;
|
|
|
73
74
|
*/
|
|
74
75
|
export type TextInputFocusEvent = FocusEvent;
|
|
75
76
|
|
|
76
|
-
type TargetEvent =
|
|
77
|
+
type TargetEvent = Readonly<{
|
|
77
78
|
target: number,
|
|
78
79
|
...
|
|
79
80
|
}>;
|
|
80
81
|
|
|
81
|
-
export type Selection =
|
|
82
|
+
export type Selection = Readonly<{
|
|
82
83
|
start: number,
|
|
83
84
|
end: number,
|
|
84
85
|
}>;
|
|
85
86
|
|
|
86
|
-
type TextInputSelectionChangeEventData =
|
|
87
|
+
type TextInputSelectionChangeEventData = Readonly<{
|
|
87
88
|
...TargetEvent,
|
|
88
89
|
selection: Selection,
|
|
89
90
|
...
|
|
@@ -95,7 +96,7 @@ type TextInputSelectionChangeEventData = $ReadOnly<{
|
|
|
95
96
|
export type TextInputSelectionChangeEvent =
|
|
96
97
|
NativeSyntheticEvent<TextInputSelectionChangeEventData>;
|
|
97
98
|
|
|
98
|
-
type TextInputKeyPressEventData =
|
|
99
|
+
type TextInputKeyPressEventData = Readonly<{
|
|
99
100
|
...TargetEvent,
|
|
100
101
|
key: string,
|
|
101
102
|
target?: ?number,
|
|
@@ -109,7 +110,7 @@ type TextInputKeyPressEventData = $ReadOnly<{
|
|
|
109
110
|
export type TextInputKeyPressEvent =
|
|
110
111
|
NativeSyntheticEvent<TextInputKeyPressEventData>;
|
|
111
112
|
|
|
112
|
-
type TextInputEndEditingEventData =
|
|
113
|
+
type TextInputEndEditingEventData = Readonly<{
|
|
113
114
|
...TargetEvent,
|
|
114
115
|
eventCount: number,
|
|
115
116
|
text: string,
|
|
@@ -122,7 +123,7 @@ type TextInputEndEditingEventData = $ReadOnly<{
|
|
|
122
123
|
export type TextInputEndEditingEvent =
|
|
123
124
|
NativeSyntheticEvent<TextInputEndEditingEventData>;
|
|
124
125
|
|
|
125
|
-
type TextInputSubmitEditingEventData =
|
|
126
|
+
type TextInputSubmitEditingEventData = Readonly<{
|
|
126
127
|
...TargetEvent,
|
|
127
128
|
eventCount: number,
|
|
128
129
|
text: string,
|
|
@@ -266,7 +267,7 @@ export type EnterKeyHintTypeOptions =
|
|
|
266
267
|
|
|
267
268
|
type PasswordRules = string;
|
|
268
269
|
|
|
269
|
-
export type TextInputIOSProps =
|
|
270
|
+
export type TextInputIOSProps = Readonly<{
|
|
270
271
|
/**
|
|
271
272
|
* If true, the keyboard shortcuts (undo/redo and copy buttons) are disabled. The default value is false.
|
|
272
273
|
* @platform ios
|
|
@@ -306,7 +307,7 @@ export type TextInputIOSProps = $ReadOnly<{
|
|
|
306
307
|
*/
|
|
307
308
|
dataDetectorTypes?:
|
|
308
309
|
| ?DataDetectorTypesType
|
|
309
|
-
|
|
|
310
|
+
| ReadonlyArray<DataDetectorTypesType>,
|
|
310
311
|
|
|
311
312
|
/**
|
|
312
313
|
* If `true`, the keyboard disables the return key when there is no text and
|
|
@@ -403,7 +404,7 @@ export type TextInputIOSProps = $ReadOnly<{
|
|
|
403
404
|
smartInsertDelete?: ?boolean,
|
|
404
405
|
}>;
|
|
405
406
|
|
|
406
|
-
export type TextInputAndroidProps =
|
|
407
|
+
export type TextInputAndroidProps = Readonly<{
|
|
407
408
|
/**
|
|
408
409
|
* When provided it will set the color of the cursor (or "caret") in the component.
|
|
409
410
|
* Unlike the behavior of `selectionColor` the cursor color will be set independently
|
|
@@ -514,7 +515,7 @@ export type TextInputAndroidProps = $ReadOnly<{
|
|
|
514
515
|
|
|
515
516
|
// [Windows
|
|
516
517
|
|
|
517
|
-
type SubmitKeyEvent =
|
|
518
|
+
type SubmitKeyEvent = Readonly<{|
|
|
518
519
|
altKey?: ?boolean,
|
|
519
520
|
ctrlKey?: ?boolean,
|
|
520
521
|
metaKey?: ?boolean,
|
|
@@ -522,7 +523,7 @@ type SubmitKeyEvent = $ReadOnly<{|
|
|
|
522
523
|
code: string,
|
|
523
524
|
|}>;
|
|
524
525
|
|
|
525
|
-
export type TextInputWindowsProps =
|
|
526
|
+
export type TextInputWindowsProps = Readonly<{|
|
|
526
527
|
/**
|
|
527
528
|
* If `true`, clears the text field synchronously before `onSubmitEditing` is emitted.
|
|
528
529
|
* @platform windows
|
|
@@ -538,7 +539,7 @@ export type TextInputWindowsProps = $ReadOnly<{|
|
|
|
538
539
|
|
|
539
540
|
// Windows]
|
|
540
541
|
|
|
541
|
-
type TextInputBaseProps =
|
|
542
|
+
type TextInputBaseProps = Readonly<{
|
|
542
543
|
/**
|
|
543
544
|
* When provided, the text input will only accept drag and drop events for the specified
|
|
544
545
|
* types. If null or not provided, the text input will accept all types of drag and drop events.
|
|
@@ -557,7 +558,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
557
558
|
*
|
|
558
559
|
* @see https://developer.android.com/reference/android/content/ClipData for more information on MIME types
|
|
559
560
|
*/
|
|
560
|
-
experimental_acceptDragAndDropTypes?:
|
|
561
|
+
experimental_acceptDragAndDropTypes?: ?ReadonlyArray<string>,
|
|
561
562
|
/**
|
|
562
563
|
* String to be read by screenreaders to indicate an error state. The acceptable parameters
|
|
563
564
|
* of accessibilityErrorMessage is a string. Setting accessibilityInvalid to true activates
|
|
@@ -979,7 +980,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
979
980
|
* The start and end of the text input's selection. Set start and end to
|
|
980
981
|
* the same value to position the cursor.
|
|
981
982
|
*/
|
|
982
|
-
selection?:
|
|
983
|
+
selection?: ?Readonly<{
|
|
983
984
|
start: number,
|
|
984
985
|
end?: ?number,
|
|
985
986
|
}>,
|
|
@@ -1064,7 +1065,7 @@ type TextInputBaseProps = $ReadOnly<{
|
|
|
1064
1065
|
textAlign?: ?('left' | 'center' | 'right'),
|
|
1065
1066
|
}>;
|
|
1066
1067
|
|
|
1067
|
-
export type TextInputProps =
|
|
1068
|
+
export type TextInputProps = Readonly<{
|
|
1068
1069
|
...Omit<ViewProps, 'style'>,
|
|
1069
1070
|
...TextInputIOSProps,
|
|
1070
1071
|
...TextInputAndroidProps,
|
|
@@ -1201,8 +1202,8 @@ type InternalTextInput = component(
|
|
|
1201
1202
|
...TextInputProps
|
|
1202
1203
|
);
|
|
1203
1204
|
|
|
1204
|
-
export type TextInputComponentStatics =
|
|
1205
|
-
State:
|
|
1205
|
+
export type TextInputComponentStatics = Readonly<{
|
|
1206
|
+
State: Readonly<{
|
|
1206
1207
|
currentlyFocusedInput: () => ?HostInstance,
|
|
1207
1208
|
currentlyFocusedField: () => ?number,
|
|
1208
1209
|
focusTextInput: (textField: ?HostInstance) => void,
|
|
@@ -120,7 +120,7 @@ export type {
|
|
|
120
120
|
TextInputSubmitEditingEvent,
|
|
121
121
|
};
|
|
122
122
|
|
|
123
|
-
type TextInputStateType =
|
|
123
|
+
type TextInputStateType = Readonly<{
|
|
124
124
|
/**
|
|
125
125
|
* @deprecated Use currentlyFocusedInput
|
|
126
126
|
* Returns the ID of the currently focused text field, if one exists
|
|
@@ -472,9 +472,13 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
472
472
|
getNativeRef(): ?TextInputInstance {
|
|
473
473
|
return inputRef.current;
|
|
474
474
|
},
|
|
475
|
-
// TODO: Fix this returning true on null === null, when no input is focused
|
|
476
475
|
isFocused(): boolean {
|
|
477
|
-
|
|
476
|
+
const currentlyFocusedInput =
|
|
477
|
+
TextInputState.currentlyFocusedInput();
|
|
478
|
+
return (
|
|
479
|
+
currentlyFocusedInput != null &&
|
|
480
|
+
currentlyFocusedInput === inputRef.current
|
|
481
|
+
);
|
|
478
482
|
},
|
|
479
483
|
setSelection(start: number, end: number): void {
|
|
480
484
|
if (inputRef.current != null) {
|
|
@@ -965,7 +969,7 @@ TextInput.State = {
|
|
|
965
969
|
focusTextInput: TextInputState.focusTextInput,
|
|
966
970
|
};
|
|
967
971
|
|
|
968
|
-
export type TextInputComponentStatics =
|
|
972
|
+
export type TextInputComponentStatics = Readonly<{
|
|
969
973
|
State: TextInputStateType,
|
|
970
974
|
}>;
|
|
971
975
|
|
|
@@ -133,7 +133,7 @@ export type {
|
|
|
133
133
|
TextInputWindowsProps, // [Windows]
|
|
134
134
|
};
|
|
135
135
|
|
|
136
|
-
type TextInputStateType =
|
|
136
|
+
type TextInputStateType = Readonly<{
|
|
137
137
|
/**
|
|
138
138
|
* @deprecated Use currentlyFocusedInput
|
|
139
139
|
* Returns the ID of the currently focused text field, if one exists
|
|
@@ -489,12 +489,11 @@ function InternalTextInput(props: TextInputProps): React.Node {
|
|
|
489
489
|
getNativeRef(): ?TextInputInstance {
|
|
490
490
|
return inputRef.current;
|
|
491
491
|
},
|
|
492
|
-
// TODO: Fix this returning true on null === null, when no input is focused
|
|
493
492
|
isFocused(): boolean {
|
|
494
493
|
const currentlyFocusedInput =
|
|
495
494
|
TextInputState.currentlyFocusedInput();
|
|
496
495
|
return (
|
|
497
|
-
currentlyFocusedInput
|
|
496
|
+
currentlyFocusedInput != null &&
|
|
498
497
|
currentlyFocusedInput === inputRef.current
|
|
499
498
|
);
|
|
500
499
|
},
|
|
@@ -1102,7 +1101,7 @@ TextInput.State = {
|
|
|
1102
1101
|
focusTextInput: TextInputState.focusTextInput,
|
|
1103
1102
|
};
|
|
1104
1103
|
|
|
1105
|
-
export type TextInputComponentStatics =
|
|
1104
|
+
export type TextInputComponentStatics = Readonly<{
|
|
1106
1105
|
State: TextInputStateType,
|
|
1107
1106
|
}>;
|
|
1108
1107
|
|
|
@@ -105,7 +105,7 @@ const addPoolingTo = function <T>(
|
|
|
105
105
|
pooler: Pooler,
|
|
106
106
|
): Class<T> & {
|
|
107
107
|
getPooled(
|
|
108
|
-
...args:
|
|
108
|
+
...args: ReadonlyArray<unknown>
|
|
109
109
|
): /* arguments of the constructor */ T,
|
|
110
110
|
release(instance: unknown): void,
|
|
111
111
|
...
|