@office-iss/react-native-win32 0.0.0-canary.282 → 0.0.0-canary.284
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.flowconfig +1 -1
- package/CHANGELOG.json +79 -1
- package/CHANGELOG.md +28 -4
- package/IntegrationTests/AccessibilityManagerTest.js +17 -12
- package/IntegrationTests/AppEventsTest.js +47 -32
- package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +10 -14
- package/IntegrationTests/ImageCachePolicyTest.js +64 -81
- package/IntegrationTests/ImageSnapshotTest.js +17 -20
- package/IntegrationTests/IntegrationTestHarnessTest.js +34 -52
- package/IntegrationTests/IntegrationTestsApp.js +11 -6
- package/IntegrationTests/LayoutEventsTest.js +1 -1
- package/IntegrationTests/LoggingTestModule.js +2 -1
- package/IntegrationTests/PromiseTest.js +51 -43
- package/IntegrationTests/SimpleSnapshotTest.js +19 -24
- package/IntegrationTests/SyncMethodTest.js +9 -13
- package/IntegrationTests/TimersTest.js +3 -3
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +3 -3
- package/Libraries/Alert/Alert.js +1 -1
- package/Libraries/Alert/Alert.win32.js +1 -1
- package/Libraries/Alert/RCTAlertManager.android.js +1 -1
- package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
- package/Libraries/Animated/AnimatedMock.js +1 -1
- package/Libraries/Animated/AnimatedWeb.js +27 -9
- package/Libraries/Animated/nodes/AnimatedValue.js +35 -13
- package/Libraries/Animated/useAnimatedProps.js +47 -85
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/BatchedBridge.js +4 -2
- package/Libraries/BatchedBridge/MessageQueue.js +2 -2
- package/Libraries/BatchedBridge/NativeModules.js +4 -3
- package/Libraries/Blob/Blob.js +4 -4
- package/Libraries/Blob/BlobManager.js +3 -2
- package/Libraries/Blob/BlobRegistry.js +3 -9
- package/Libraries/Blob/File.js +3 -2
- package/Libraries/Blob/FileReader.js +1 -1
- package/Libraries/BugReporting/BugReporting.js +2 -2
- package/Libraries/BugReporting/dumpReactTree.js +2 -2
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +5 -5
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/Button.win32.js +2 -2
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +7 -7
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -2
- package/Libraries/Components/Keyboard/Keyboard.js +9 -9
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +4 -4
- package/Libraries/Components/Pressable/Pressable.js +4 -4
- package/Libraries/Components/Pressable/Pressable.win32.js +4 -4
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +9 -9
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +10 -11
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/RefreshControl/RefreshControl.js +9 -9
- package/Libraries/Components/ScrollView/ScrollView.js +32 -26
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
- package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
- package/Libraries/Components/Sound/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +4 -4
- package/Libraries/Components/StatusBar/StatusBar.js +33 -18
- package/Libraries/Components/Switch/Switch.js +6 -6
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +31 -31
- package/Libraries/Components/TextInput/InputAccessoryView.js +2 -2
- package/Libraries/Components/TextInput/TextInput.flow.js +35 -35
- package/Libraries/Components/TextInput/TextInput.js +35 -35
- package/Libraries/Components/TextInput/TextInput.win32.js +35 -35
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +68 -6
- package/Libraries/Components/Touchable/TouchableBounce.js +5 -5
- package/Libraries/Components/Touchable/TouchableHighlight.js +11 -11
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +14 -14
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +6 -6
- package/Libraries/Components/Touchable/TouchableOpacity.js +6 -6
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +9 -1
- package/Libraries/Components/View/ViewAccessibility.js +2 -2
- package/Libraries/Components/View/ViewAccessibility.win32.js +2 -2
- package/Libraries/Components/View/ViewPropTypes.js +22 -22
- package/Libraries/Components/View/ViewPropTypes.win32.js +22 -22
- package/Libraries/Core/RawEventEmitter.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +3 -5
- package/Libraries/Core/Timers/JSTimers.js +3 -3
- package/Libraries/Core/polyfillPromise.js +1 -1
- package/Libraries/Core/registerCallableModule.js +1 -1
- package/Libraries/Core/setUpAlert.js +1 -1
- package/Libraries/Core/setUpDeveloperTools.js +0 -2
- package/Libraries/Core/setUpErrorHandling.js +6 -1
- package/Libraries/Core/setUpReactDevTools.js +1 -1
- package/Libraries/Core/setUpTimers.js +35 -56
- package/Libraries/Core/setUpXHR.js +5 -5
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
- package/Libraries/Events/CustomEvent.js +2 -2
- package/Libraries/Image/AssetRegistry.js +6 -1
- package/Libraries/Image/AssetSourceResolver.js +2 -2
- package/Libraries/Image/ImageProps.js +17 -17
- package/Libraries/Image/nativeImageSource.js +2 -2
- package/Libraries/Inspector/ElementProperties.js +4 -3
- package/Libraries/Inspector/Inspector.js +1 -1
- package/Libraries/Inspector/Inspector.win32.js +1 -1
- package/Libraries/Inspector/InspectorOverlay.js +4 -3
- package/Libraries/Inspector/InspectorOverlay.win32.js +3 -3
- package/Libraries/Inspector/InspectorPanel.js +6 -6
- package/Libraries/Inspector/NetworkOverlay.js +6 -5
- package/Libraries/Inspector/PerformanceOverlay.js +2 -1
- package/Libraries/Inspector/resolveBoxStyle.js +2 -2
- package/Libraries/Interaction/InteractionManager.js +3 -2
- package/Libraries/Interaction/PanResponder.js +6 -6
- package/Libraries/Interaction/TouchHistoryMath.js +26 -0
- package/Libraries/JSInspector/NetworkAgent.js +2 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Linking/Linking.js +0 -1
- package/Libraries/Lists/FlatList.js +9 -10
- package/Libraries/Lists/SectionList.js +7 -9
- package/Libraries/Lists/SectionListModern.js +6 -6
- package/Libraries/LogBox/Data/LogBoxData.js +14 -14
- package/Libraries/LogBox/Data/LogBoxLog.js +51 -29
- package/Libraries/LogBox/Data/parseLogBoxLog.js +10 -10
- package/Libraries/LogBox/LogBox.js +13 -1
- package/Libraries/LogBox/LogBoxInspectorContainer.js +3 -3
- package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
- package/Libraries/LogBox/UI/LogBoxButton.js +4 -4
- package/Libraries/LogBox/UI/LogBoxInspectorBody.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +50 -31
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +50 -31
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -2
- package/Libraries/Modal/Modal.js +7 -7
- package/Libraries/Network/XMLHttpRequest.js +1 -1
- package/Libraries/Network/convertRequestBody.js +3 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -4
- package/Libraries/Pressability/Pressability.js +10 -10
- package/Libraries/Pressability/Pressability.win32.js +10 -10
- package/Libraries/Pressability/PressabilityDebug.js +2 -2
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +2 -2
- package/Libraries/Promise.js +2 -2
- package/Libraries/ReactNative/AppContainer.js +2 -2
- package/Libraries/ReactNative/BridgelessUIManager.js +3 -8
- package/Libraries/ReactNative/I18nManager.js +3 -2
- package/Libraries/ReactNative/PaperUIManager.js +1 -1
- package/Libraries/ReactNative/PaperUIManager.win32.js +1 -1
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +2 -2
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +2 -2
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +3 -2
- package/Libraries/StyleSheet/Rect.js +2 -2
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.win32.js +1 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +18 -18
- package/Libraries/StyleSheet/processBackgroundImage.js +138 -136
- package/Libraries/Text/TextAncestor.js +1 -2
- package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
- package/Libraries/Types/CodegenTypes.js +2 -1
- package/Libraries/Types/CoreEventTypes.js +40 -40
- package/Libraries/Types/CoreEventTypes.win32.js +40 -40
- package/Libraries/UTFSequence.js +2 -2
- package/Libraries/Utilities/BackHandler.android.js +2 -2
- package/Libraries/Utilities/BackHandler.ios.js +2 -2
- package/Libraries/Utilities/BackHandler.win32.js +2 -2
- package/Libraries/Utilities/HMRClient.js +2 -2
- package/Libraries/Utilities/Platform.android.js +4 -4
- package/Libraries/Utilities/Platform.flow.js +8 -8
- package/Libraries/Utilities/Platform.flow.win32.js +8 -8
- package/Libraries/Utilities/Platform.ios.js +4 -4
- package/Libraries/Utilities/Platform.win32.js +2 -2
- package/Libraries/Utilities/ReactNativeTestTools.js +3 -2
- package/Libraries/Utilities/codegenNativeCommands.js +2 -2
- package/Libraries/Utilities/codegenNativeComponent.js +2 -2
- package/Libraries/Utilities/differ/deepDiffer.js +3 -3
- package/Libraries/Utilities/stringifySafe.js +2 -2
- package/Libraries/Vibration/Vibration.js +1 -1
- package/Libraries/WebSocket/WebSocketEvent.js +1 -1
- package/Libraries/YellowBox/YellowBoxDeprecated.js +4 -3
- package/Libraries/vendor/core/ErrorUtils.js +1 -1
- package/flow/jest.js +14 -14
- package/index.js +16 -13
- package/index.win32.js +16 -13
- package/jest/setup.js +214 -197
- package/overrides.json +26 -26
- package/package.json +16 -16
- package/src/private/featureflags/ReactNativeFeatureFlags.js +11 -30
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +3 -2
- package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +2 -2
- package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +6 -6
- package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/src/private/specs/components/AndroidSwitchNativeComponent.js +4 -4
- package/src/private/specs/components/DebuggingOverlayNativeComponent.js +2 -2
- package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +2 -2
- package/src/private/specs/components/PullToRefreshViewNativeComponent.js +2 -2
- package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/src/private/specs/components/RCTModalHostViewNativeComponent.js +4 -4
- package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +2 -2
- package/src/private/specs/components/SwitchNativeComponent.js +4 -4
- package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +2 -2
- package/src/private/specs/modules/NativeAccessibilityManager.js +2 -2
- package/src/private/specs/modules/NativeActionSheetManager.js +7 -7
- package/src/private/specs/modules/NativeAlertManager.js +2 -2
- package/src/private/specs/modules/NativeAnimatedModule.js +2 -2
- package/src/private/specs/modules/NativeAnimatedTurboModule.js +2 -2
- package/src/private/specs/modules/NativeAppState.js +3 -3
- package/src/private/specs/modules/NativeBlobModule.js +1 -1
- package/src/private/specs/modules/NativeClipboard.js +1 -1
- package/src/private/specs/modules/NativeDeviceInfo.js +8 -8
- package/src/private/specs/modules/NativeDialogManagerAndroid.js +4 -4
- package/src/private/specs/modules/NativeExceptionsManager.js +2 -2
- package/src/private/specs/modules/NativeFantom.js +6 -0
- package/src/private/specs/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/specs/modules/NativeI18nManager.js +2 -2
- package/src/private/specs/modules/NativeImageEditor.js +9 -9
- package/src/private/specs/modules/NativeImageLoaderAndroid.js +1 -1
- package/src/private/specs/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/specs/modules/NativeImageLoaderWin32.js +1 -1
- package/src/private/specs/modules/NativeImageStoreAndroid.js +1 -1
- package/src/private/specs/modules/NativeImageStoreIOS.js +3 -3
- package/src/private/specs/modules/NativeNetworkingIOS.js +2 -2
- package/src/private/specs/modules/NativePlatformConstantsAndroid.js +4 -4
- package/src/private/specs/modules/NativePlatformConstantsIOS.js +4 -4
- package/src/private/specs/modules/NativePlatformConstantsWin.js +5 -10
- package/src/private/specs/modules/NativePushNotificationManagerIOS.js +7 -7
- package/src/private/specs/modules/NativeSampleTurboModule.js +2 -2
- package/src/private/specs/modules/NativeSettingsManager.js +2 -2
- package/src/private/specs/modules/NativeShareModule.js +3 -3
- package/src/private/specs/modules/NativeSourceCode.js +2 -2
- package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +4 -4
- package/src/private/specs/modules/NativeStatusBarManagerIOS.js +6 -6
- package/src/private/specs/modules/NativeToastAndroid.js +2 -2
- package/src/private/specs/modules/NativeVibration.js +1 -1
- package/src/private/specs/modules/NativeWebSocketModule.js +1 -1
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +2 -2
- package/src/private/webapis/intersectionobserver/{IntersectionObserverManager.js → internals/IntersectionObserverManager.js} +9 -9
- package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
- package/src/private/webapis/mutationobserver/{MutationObserverManager.js → internals/MutationObserverManager.js} +8 -8
- package/src/private/webapis/performance/EventTiming.js +1 -1
- package/src/private/webapis/performance/Performance.js +3 -3
- package/src/private/webapis/performance/PerformanceObserver.js +2 -2
- package/src/private/webapis/performance/{RawPerformanceEntry.js → internals/RawPerformanceEntry.js} +6 -6
- package/src/private/webapis/performance/{Utilities.js → internals/Utilities.js} +1 -1
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +1 -1
|
@@ -34,11 +34,11 @@ import {useMemo, useRef, useState} from 'react';
|
|
|
34
34
|
|
|
35
35
|
type ViewStyleProp = $ElementType<React.ElementConfig<typeof View>, 'style'>;
|
|
36
36
|
|
|
37
|
-
export type StateCallbackType = $ReadOnly<{
|
|
37
|
+
export type StateCallbackType = $ReadOnly<{
|
|
38
38
|
pressed: boolean,
|
|
39
|
-
|
|
39
|
+
}>;
|
|
40
40
|
|
|
41
|
-
type Props = $ReadOnly<{
|
|
41
|
+
type Props = $ReadOnly<{
|
|
42
42
|
/**
|
|
43
43
|
* Accessibility.
|
|
44
44
|
*/
|
|
@@ -193,7 +193,7 @@ type Props = $ReadOnly<{|
|
|
|
193
193
|
* https://github.com/facebook/react-native/issues/34424
|
|
194
194
|
*/
|
|
195
195
|
'aria-label'?: ?string,
|
|
196
|
-
|
|
196
|
+
}>;
|
|
197
197
|
|
|
198
198
|
type Instance = React.ElementRef<typeof View>;
|
|
199
199
|
|
|
@@ -39,11 +39,11 @@ import View from '../View/View';
|
|
|
39
39
|
|
|
40
40
|
type ViewStyleProp = $ElementType<React.ElementConfig<typeof View>, 'style'>;
|
|
41
41
|
|
|
42
|
-
export type StateCallbackType = $ReadOnly<{
|
|
42
|
+
export type StateCallbackType = $ReadOnly<{
|
|
43
43
|
pressed: boolean,
|
|
44
|
-
|
|
44
|
+
}>;
|
|
45
45
|
|
|
46
|
-
type Props = $ReadOnly<{
|
|
46
|
+
type Props = $ReadOnly<{
|
|
47
47
|
/**
|
|
48
48
|
* Accessibility.
|
|
49
49
|
*/
|
|
@@ -240,7 +240,7 @@ type Props = $ReadOnly<{|
|
|
|
240
240
|
* https://github.com/facebook/react-native/issues/34424
|
|
241
241
|
*/
|
|
242
242
|
'aria-label'?: ?string,
|
|
243
|
-
|
|
243
|
+
}>;
|
|
244
244
|
|
|
245
245
|
type Instance = React.ElementRef<typeof View>;
|
|
246
246
|
|
|
@@ -19,19 +19,19 @@ import invariant from 'invariant';
|
|
|
19
19
|
import * as React from 'react';
|
|
20
20
|
import {useMemo} from 'react';
|
|
21
21
|
|
|
22
|
-
type NativeBackgroundProp = $ReadOnly<{
|
|
22
|
+
type NativeBackgroundProp = $ReadOnly<{
|
|
23
23
|
type: 'RippleAndroid',
|
|
24
24
|
color: ?number,
|
|
25
25
|
borderless: boolean,
|
|
26
26
|
rippleRadius: ?number,
|
|
27
|
-
|
|
27
|
+
}>;
|
|
28
28
|
|
|
29
|
-
export type RippleConfig = {
|
|
29
|
+
export type RippleConfig = {
|
|
30
30
|
color?: ColorValue,
|
|
31
31
|
borderless?: boolean,
|
|
32
32
|
radius?: number,
|
|
33
33
|
foreground?: boolean,
|
|
34
|
-
|
|
34
|
+
};
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* Provides the event handlers and props for configuring the ripple effect on
|
|
@@ -39,15 +39,15 @@ export type RippleConfig = {|
|
|
|
39
39
|
*/
|
|
40
40
|
export default function useAndroidRippleForView(
|
|
41
41
|
rippleConfig: ?RippleConfig,
|
|
42
|
-
viewRef: {
|
|
43
|
-
): ?$ReadOnly<{
|
|
42
|
+
viewRef: {current: null | React.ElementRef<typeof View>},
|
|
43
|
+
): ?$ReadOnly<{
|
|
44
44
|
onPressIn: (event: PressEvent) => void,
|
|
45
45
|
onPressMove: (event: PressEvent) => void,
|
|
46
46
|
onPressOut: (event: PressEvent) => void,
|
|
47
47
|
viewProps:
|
|
48
|
-
| $ReadOnly<{
|
|
49
|
-
| $ReadOnly<{
|
|
50
|
-
|
|
48
|
+
| $ReadOnly<{nativeBackgroundAndroid: NativeBackgroundProp}>
|
|
49
|
+
| $ReadOnly<{nativeForegroundAndroid: NativeBackgroundProp}>,
|
|
50
|
+
}> {
|
|
51
51
|
const {color, borderless, radius, foreground} = rippleConfig ?? {};
|
|
52
52
|
|
|
53
53
|
return useMemo(() => {
|
|
@@ -15,7 +15,7 @@ import ProgressBarAndroidNativeComponent from './ProgressBarAndroidNativeCompone
|
|
|
15
15
|
|
|
16
16
|
const React = require('react');
|
|
17
17
|
|
|
18
|
-
export type ProgressBarAndroidProps = $ReadOnly<{
|
|
18
|
+
export type ProgressBarAndroidProps = $ReadOnly<{
|
|
19
19
|
...ViewProps,
|
|
20
20
|
|
|
21
21
|
/**
|
|
@@ -25,12 +25,12 @@ export type ProgressBarAndroidProps = $ReadOnly<{|
|
|
|
25
25
|
* `progress` value.
|
|
26
26
|
*/
|
|
27
27
|
...
|
|
28
|
-
| {
|
|
28
|
+
| {
|
|
29
29
|
styleAttr: 'Horizontal',
|
|
30
30
|
indeterminate: false,
|
|
31
31
|
progress: number,
|
|
32
|
-
|
|
33
|
-
| {
|
|
32
|
+
}
|
|
33
|
+
| {
|
|
34
34
|
typeAttr:
|
|
35
35
|
| 'Horizontal'
|
|
36
36
|
| 'Normal'
|
|
@@ -40,7 +40,7 @@ export type ProgressBarAndroidProps = $ReadOnly<{|
|
|
|
40
40
|
| 'SmallInverse'
|
|
41
41
|
| 'LargeInverse',
|
|
42
42
|
indeterminate: true,
|
|
43
|
-
|
|
43
|
+
},
|
|
44
44
|
/**
|
|
45
45
|
* Whether to show the ProgressBar (true, the default) or hide it (false).
|
|
46
46
|
*/
|
|
@@ -53,7 +53,7 @@ export type ProgressBarAndroidProps = $ReadOnly<{|
|
|
|
53
53
|
* Used to locate this view in end-to-end tests.
|
|
54
54
|
*/
|
|
55
55
|
testID?: ?string,
|
|
56
|
-
|
|
56
|
+
}>;
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
59
|
* React component that wraps the Android-only `ProgressBar`. This component is
|
|
@@ -106,8 +106,7 @@ const ProgressBarAndroidWithForwardedRef: component(
|
|
|
106
106
|
);
|
|
107
107
|
});
|
|
108
108
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
(ProgressBarAndroidWithForwardedRef: typeof ProgressBarAndroidNativeComponent);
|
|
109
|
+
export default /* $FlowFixMe(>=0.89.0 site=react_native_android_fb) This comment suppresses an
|
|
110
|
+
* error found when Flow v0.89 was deployed. To see the error, delete this
|
|
111
|
+
* comment and run Flow. */
|
|
112
|
+
(ProgressBarAndroidWithForwardedRef: typeof ProgressBarAndroidNativeComponent);
|
|
@@ -17,11 +17,11 @@ import AndroidSwipeRefreshLayoutNativeComponent, {
|
|
|
17
17
|
import PullToRefreshViewNativeComponent, {
|
|
18
18
|
Commands as PullToRefreshCommands,
|
|
19
19
|
} from './PullToRefreshViewNativeComponent';
|
|
20
|
+
import React from 'react';
|
|
20
21
|
|
|
21
22
|
const Platform = require('../../Utilities/Platform');
|
|
22
|
-
const React = require('react');
|
|
23
23
|
|
|
24
|
-
type IOSProps = $ReadOnly<{
|
|
24
|
+
type IOSProps = $ReadOnly<{
|
|
25
25
|
/**
|
|
26
26
|
* The color of the refresh indicator.
|
|
27
27
|
*/
|
|
@@ -34,9 +34,9 @@ type IOSProps = $ReadOnly<{|
|
|
|
34
34
|
* The title displayed under the refresh indicator.
|
|
35
35
|
*/
|
|
36
36
|
title?: ?string,
|
|
37
|
-
|
|
37
|
+
}>;
|
|
38
38
|
|
|
39
|
-
type AndroidProps = $ReadOnly<{
|
|
39
|
+
type AndroidProps = $ReadOnly<{
|
|
40
40
|
/**
|
|
41
41
|
* Whether the pull to refresh functionality is enabled.
|
|
42
42
|
*/
|
|
@@ -53,9 +53,9 @@ type AndroidProps = $ReadOnly<{|
|
|
|
53
53
|
* Size of the refresh indicator.
|
|
54
54
|
*/
|
|
55
55
|
size?: ?('default' | 'large'),
|
|
56
|
-
|
|
56
|
+
}>;
|
|
57
57
|
|
|
58
|
-
export type RefreshControlProps = $ReadOnly<{
|
|
58
|
+
export type RefreshControlProps = $ReadOnly<{
|
|
59
59
|
...ViewProps,
|
|
60
60
|
...IOSProps,
|
|
61
61
|
...AndroidProps,
|
|
@@ -74,7 +74,7 @@ export type RefreshControlProps = $ReadOnly<{|
|
|
|
74
74
|
* Progress view top offset
|
|
75
75
|
*/
|
|
76
76
|
progressViewOffset?: ?number,
|
|
77
|
-
|
|
77
|
+
}>;
|
|
78
78
|
|
|
79
79
|
/**
|
|
80
80
|
* This component is used inside a ScrollView or ListView to add pull to refresh
|
|
@@ -126,7 +126,7 @@ class RefreshControl extends React.Component<RefreshControlProps> {
|
|
|
126
126
|
| typeof PullToRefreshViewNativeComponent
|
|
127
127
|
| typeof AndroidSwipeRefreshLayoutNativeComponent,
|
|
128
128
|
>;
|
|
129
|
-
_lastNativeRefreshing = false;
|
|
129
|
+
_lastNativeRefreshing: boolean = false;
|
|
130
130
|
|
|
131
131
|
componentDidMount() {
|
|
132
132
|
this._lastNativeRefreshing = this.props.refreshing;
|
|
@@ -201,4 +201,4 @@ class RefreshControl extends React.Component<RefreshControlProps> {
|
|
|
201
201
|
};
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
-
|
|
204
|
+
export default RefreshControl;
|
|
@@ -127,7 +127,7 @@ import * as React from 'react';
|
|
|
127
127
|
*/
|
|
128
128
|
|
|
129
129
|
// Public methods for ScrollView
|
|
130
|
-
export type ScrollViewImperativeMethods = $ReadOnly<{
|
|
130
|
+
export type ScrollViewImperativeMethods = $ReadOnly<{
|
|
131
131
|
getScrollResponder: $PropertyType<ScrollView, 'getScrollResponder'>,
|
|
132
132
|
getScrollableNode: $PropertyType<ScrollView, 'getScrollableNode'>,
|
|
133
133
|
getInnerViewNode: $PropertyType<ScrollView, 'getInnerViewNode'>,
|
|
@@ -141,19 +141,19 @@ export type ScrollViewImperativeMethods = $ReadOnly<{|
|
|
|
141
141
|
ScrollView,
|
|
142
142
|
'scrollResponderScrollNativeHandleToKeyboard',
|
|
143
143
|
>,
|
|
144
|
-
|
|
144
|
+
}>;
|
|
145
145
|
|
|
146
146
|
export type DecelerationRateType = 'fast' | 'normal' | number;
|
|
147
147
|
export type ScrollResponderType = ScrollViewImperativeMethods;
|
|
148
148
|
|
|
149
|
-
type PublicScrollViewInstance = $ReadOnly<{
|
|
149
|
+
type PublicScrollViewInstance = $ReadOnly<{
|
|
150
150
|
...HostInstance,
|
|
151
151
|
...ScrollViewImperativeMethods,
|
|
152
|
-
|
|
152
|
+
}>;
|
|
153
153
|
|
|
154
154
|
type InnerViewInstance = React.ElementRef<View>;
|
|
155
155
|
|
|
156
|
-
type IOSProps = $ReadOnly<{
|
|
156
|
+
type IOSProps = $ReadOnly<{
|
|
157
157
|
/**
|
|
158
158
|
* Controls whether iOS should automatically adjust the content inset
|
|
159
159
|
* for scroll views that are placed behind a navigation bar or
|
|
@@ -307,9 +307,9 @@ type IOSProps = $ReadOnly<{|
|
|
|
307
307
|
| 'never'
|
|
308
308
|
| 'always'
|
|
309
309
|
),
|
|
310
|
-
|
|
310
|
+
}>;
|
|
311
311
|
|
|
312
|
-
type AndroidProps = $ReadOnly<{
|
|
312
|
+
type AndroidProps = $ReadOnly<{
|
|
313
313
|
/**
|
|
314
314
|
* Enables nested scrolling for Android API level 21+.
|
|
315
315
|
* Nested scrolling is supported by default on iOS
|
|
@@ -364,14 +364,14 @@ type AndroidProps = $ReadOnly<{|
|
|
|
364
364
|
* @platform android
|
|
365
365
|
*/
|
|
366
366
|
fadingEdgeLength?: ?number,
|
|
367
|
-
|
|
367
|
+
}>;
|
|
368
368
|
|
|
369
369
|
type StickyHeaderComponentType = component(
|
|
370
370
|
ref?: React.RefSetter<$ReadOnly<interface {setNextHeaderY: number => void}>>,
|
|
371
371
|
...ScrollViewStickyHeaderProps
|
|
372
372
|
);
|
|
373
373
|
|
|
374
|
-
export type Props = $ReadOnly<{
|
|
374
|
+
export type Props = $ReadOnly<{
|
|
375
375
|
...ViewProps,
|
|
376
376
|
...IOSProps,
|
|
377
377
|
...AndroidProps,
|
|
@@ -494,10 +494,10 @@ export type Props = $ReadOnly<{|
|
|
|
494
494
|
* whether content is "visible" or not.
|
|
495
495
|
*
|
|
496
496
|
*/
|
|
497
|
-
maintainVisibleContentPosition?: ?$ReadOnly<{
|
|
497
|
+
maintainVisibleContentPosition?: ?$ReadOnly<{
|
|
498
498
|
minIndexForVisible: number,
|
|
499
499
|
autoscrollToTopThreshold?: ?number,
|
|
500
|
-
|
|
500
|
+
}>,
|
|
501
501
|
/**
|
|
502
502
|
* Called when the momentum scroll starts (scroll which occurs as the ScrollView glides to a stop).
|
|
503
503
|
*/
|
|
@@ -651,17 +651,17 @@ export type Props = $ReadOnly<{|
|
|
|
651
651
|
* measure, measureLayout, etc.
|
|
652
652
|
*/
|
|
653
653
|
scrollViewRef?: React.RefSetter<PublicScrollViewInstance>,
|
|
654
|
-
|
|
654
|
+
}>;
|
|
655
655
|
|
|
656
|
-
type State = {
|
|
656
|
+
type State = {
|
|
657
657
|
layoutHeight: ?number,
|
|
658
|
-
|
|
658
|
+
};
|
|
659
659
|
|
|
660
660
|
const IS_ANIMATING_TOUCH_START_THRESHOLD_MS = 16;
|
|
661
661
|
|
|
662
|
-
export type ScrollViewComponentStatics = $ReadOnly<{
|
|
662
|
+
export type ScrollViewComponentStatics = $ReadOnly<{
|
|
663
663
|
Context: typeof ScrollViewContext,
|
|
664
|
-
|
|
664
|
+
}>;
|
|
665
665
|
|
|
666
666
|
/**
|
|
667
667
|
* Component that wraps platform ScrollView while providing
|
|
@@ -712,9 +712,11 @@ class ScrollView extends React.Component<Props, State> {
|
|
|
712
712
|
|
|
713
713
|
_scrollAnimatedValue: AnimatedImplementation.Value;
|
|
714
714
|
_scrollAnimatedValueAttachment: ?{detach: () => void, ...} = null;
|
|
715
|
-
_stickyHeaderRefs: Map<
|
|
716
|
-
|
|
717
|
-
|
|
715
|
+
_stickyHeaderRefs: Map<
|
|
716
|
+
React.Key,
|
|
717
|
+
React.ElementRef<StickyHeaderComponentType>,
|
|
718
|
+
> = new Map();
|
|
719
|
+
_headerLayoutYs: Map<React.Key, number> = new Map();
|
|
718
720
|
|
|
719
721
|
_keyboardMetrics: ?KeyboardMetrics = null;
|
|
720
722
|
_additionalScrollOffset: number = 0;
|
|
@@ -976,22 +978,22 @@ class ScrollView extends React.Component<Props, State> {
|
|
|
976
978
|
* @platform ios
|
|
977
979
|
*/
|
|
978
980
|
scrollResponderZoomTo: (
|
|
979
|
-
rect: {
|
|
981
|
+
rect: {
|
|
980
982
|
x: number,
|
|
981
983
|
y: number,
|
|
982
984
|
width: number,
|
|
983
985
|
height: number,
|
|
984
986
|
animated?: boolean,
|
|
985
|
-
|
|
987
|
+
},
|
|
986
988
|
animated?: boolean, // deprecated, put this inside the rect argument instead
|
|
987
989
|
) => void = (
|
|
988
|
-
rect: {
|
|
990
|
+
rect: {
|
|
989
991
|
x: number,
|
|
990
992
|
y: number,
|
|
991
993
|
width: number,
|
|
992
994
|
height: number,
|
|
993
995
|
animated?: boolean,
|
|
994
|
-
|
|
996
|
+
},
|
|
995
997
|
animated?: boolean, // deprecated, put this inside the rect argument instead
|
|
996
998
|
) => {
|
|
997
999
|
invariant(Platform.OS === 'ios', 'zoomToRect is not implemented');
|
|
@@ -1066,7 +1068,11 @@ class ScrollView extends React.Component<Props, State> {
|
|
|
1066
1068
|
}
|
|
1067
1069
|
};
|
|
1068
1070
|
|
|
1069
|
-
_getKeyForIndex(
|
|
1071
|
+
_getKeyForIndex(
|
|
1072
|
+
index: number,
|
|
1073
|
+
// $FlowFixMe[unclear-type] - The children and its key is unknown.
|
|
1074
|
+
childArray: any,
|
|
1075
|
+
): React.Key {
|
|
1070
1076
|
const child = childArray[index];
|
|
1071
1077
|
return child && child.key;
|
|
1072
1078
|
}
|
|
@@ -1099,7 +1105,7 @@ class ScrollView extends React.Component<Props, State> {
|
|
|
1099
1105
|
}
|
|
1100
1106
|
}
|
|
1101
1107
|
|
|
1102
|
-
_onStickyHeaderLayout(index:
|
|
1108
|
+
_onStickyHeaderLayout(index: number, event: LayoutEvent, key: React.Key) {
|
|
1103
1109
|
const {stickyHeaderIndices} = this.props;
|
|
1104
1110
|
if (!stickyHeaderIndices) {
|
|
1105
1111
|
return;
|
|
@@ -1913,5 +1919,5 @@ Wrapper.displayName = 'ScrollView';
|
|
|
1913
1919
|
// $FlowExpectedError[prop-missing]
|
|
1914
1920
|
Wrapper.Context = ScrollViewContext;
|
|
1915
1921
|
|
|
1916
|
-
|
|
1922
|
+
export default ((Wrapper: $FlowFixMe): typeof Wrapper &
|
|
1917
1923
|
ScrollViewComponentStatics);
|
|
@@ -31,13 +31,13 @@ interface NativeCommands {
|
|
|
31
31
|
) => void;
|
|
32
32
|
+zoomToRect: (
|
|
33
33
|
viewRef: React.ElementRef<ScrollViewNativeComponentType>,
|
|
34
|
-
rect: {
|
|
34
|
+
rect: {
|
|
35
35
|
x: Double,
|
|
36
36
|
y: Double,
|
|
37
37
|
width: Double,
|
|
38
38
|
height: Double,
|
|
39
39
|
animated?: boolean,
|
|
40
|
-
|
|
40
|
+
},
|
|
41
41
|
animated?: boolean,
|
|
42
42
|
) => void;
|
|
43
43
|
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
14
14
|
import type {PointProp} from '../../StyleSheet/PointPropType';
|
|
15
15
|
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
16
|
-
import type {ScrollEvent} from '../../Types/CoreEventTypes';
|
|
16
|
+
import type {PressEvent, ScrollEvent} from '../../Types/CoreEventTypes';
|
|
17
17
|
import type {ViewProps} from '../View/ViewPropTypes';
|
|
18
18
|
|
|
19
19
|
export type ScrollViewNativeProps = $ReadOnly<{
|
|
@@ -76,6 +76,6 @@ export type ScrollViewNativeProps = $ReadOnly<{
|
|
|
76
76
|
snapToStart?: ?boolean,
|
|
77
77
|
zoomScale?: ?number,
|
|
78
78
|
// Overrides
|
|
79
|
-
onResponderGrant?: ?(e:
|
|
79
|
+
onResponderGrant?: ?(e: PressEvent) => void | boolean,
|
|
80
80
|
...
|
|
81
81
|
}>;
|
|
@@ -19,7 +19,7 @@ import * as React from 'react';
|
|
|
19
19
|
import {useCallback, useEffect, useMemo, useRef, useState} from 'react';
|
|
20
20
|
|
|
21
21
|
export type Props = $ReadOnly<{
|
|
22
|
-
children?:
|
|
22
|
+
children?: React.Node,
|
|
23
23
|
nextHeaderLayoutY: ?number,
|
|
24
24
|
onLayout: (event: LayoutEvent) => void,
|
|
25
25
|
scrollAnimatedValue: Animated.Value,
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
import React from 'react';
|
|
14
14
|
|
|
15
|
-
type Props = $ReadOnly<{
|
|
15
|
+
type Props = $ReadOnly<{
|
|
16
16
|
/**
|
|
17
17
|
* Indicates whether the render function needs to be called again
|
|
18
18
|
*/
|
|
@@ -22,7 +22,7 @@ type Props = $ReadOnly<{|
|
|
|
22
22
|
* A function that returns a renderable component
|
|
23
23
|
*/
|
|
24
24
|
render: () => React.Node,
|
|
25
|
-
|
|
25
|
+
}>;
|
|
26
26
|
|
|
27
27
|
class StaticRenderer extends React.Component<Props> {
|
|
28
28
|
shouldComponentUpdate(nextProps: Props): boolean {
|
|
@@ -34,4 +34,4 @@ class StaticRenderer extends React.Component<Props> {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
export default StaticRenderer;
|
|
@@ -55,7 +55,7 @@ export type StatusBarAnimation = $Keys<{
|
|
|
55
55
|
...
|
|
56
56
|
}>;
|
|
57
57
|
|
|
58
|
-
type AndroidProps = $ReadOnly<{
|
|
58
|
+
type AndroidProps = $ReadOnly<{
|
|
59
59
|
/**
|
|
60
60
|
* The background color of the status bar.
|
|
61
61
|
* @platform android
|
|
@@ -69,9 +69,9 @@ type AndroidProps = $ReadOnly<{|
|
|
|
69
69
|
* @platform android
|
|
70
70
|
*/
|
|
71
71
|
translucent?: ?boolean,
|
|
72
|
-
|
|
72
|
+
}>;
|
|
73
73
|
|
|
74
|
-
type IOSProps = $ReadOnly<{
|
|
74
|
+
type IOSProps = $ReadOnly<{
|
|
75
75
|
/**
|
|
76
76
|
* If the network activity indicator should be visible.
|
|
77
77
|
*
|
|
@@ -85,9 +85,9 @@ type IOSProps = $ReadOnly<{|
|
|
|
85
85
|
* @platform ios
|
|
86
86
|
*/
|
|
87
87
|
showHideTransition?: ?('fade' | 'slide' | 'none'),
|
|
88
|
-
|
|
88
|
+
}>;
|
|
89
89
|
|
|
90
|
-
type Props = $ReadOnly<{
|
|
90
|
+
type Props = $ReadOnly<{
|
|
91
91
|
...AndroidProps,
|
|
92
92
|
...IOSProps,
|
|
93
93
|
/**
|
|
@@ -103,7 +103,25 @@ type Props = $ReadOnly<{|
|
|
|
103
103
|
* Sets the color of the status bar text.
|
|
104
104
|
*/
|
|
105
105
|
barStyle?: ?('default' | 'light-content' | 'dark-content'),
|
|
106
|
-
|
|
106
|
+
}>;
|
|
107
|
+
|
|
108
|
+
type StackProps = {
|
|
109
|
+
backgroundColor: ?{
|
|
110
|
+
value: Props['backgroundColor'],
|
|
111
|
+
animated: boolean,
|
|
112
|
+
},
|
|
113
|
+
barStyle: ?{
|
|
114
|
+
value: Props['barStyle'],
|
|
115
|
+
animated: boolean,
|
|
116
|
+
},
|
|
117
|
+
translucent: Props['translucent'],
|
|
118
|
+
hidden: ?{
|
|
119
|
+
value: boolean,
|
|
120
|
+
animated: boolean,
|
|
121
|
+
transition: Props['showHideTransition'],
|
|
122
|
+
},
|
|
123
|
+
networkActivityIndicatorVisible: Props['networkActivityIndicatorVisible'],
|
|
124
|
+
};
|
|
107
125
|
|
|
108
126
|
/**
|
|
109
127
|
* Merges the prop stack with the default values.
|
|
@@ -129,7 +147,7 @@ function mergePropsStack(
|
|
|
129
147
|
* Returns an object to insert in the props stack from the props
|
|
130
148
|
* and the transition/animation info.
|
|
131
149
|
*/
|
|
132
|
-
function createStackEntry(props:
|
|
150
|
+
function createStackEntry(props: Props): StackProps {
|
|
133
151
|
const animated = props.animated ?? false;
|
|
134
152
|
const showHideTransition = props.showHideTransition ?? 'fade';
|
|
135
153
|
return {
|
|
@@ -203,7 +221,7 @@ function createStackEntry(props: any): any {
|
|
|
203
221
|
* `currentHeight` (Android only) The height of the status bar.
|
|
204
222
|
*/
|
|
205
223
|
class StatusBar extends React.Component<Props> {
|
|
206
|
-
static _propsStack: Array<
|
|
224
|
+
static _propsStack: Array<StackProps> = [];
|
|
207
225
|
|
|
208
226
|
static _defaultProps: any = createStackEntry({
|
|
209
227
|
backgroundColor:
|
|
@@ -218,12 +236,10 @@ class StatusBar extends React.Component<Props> {
|
|
|
218
236
|
});
|
|
219
237
|
|
|
220
238
|
// Timer for updating the native module values at the end of the frame.
|
|
221
|
-
|
|
222
|
-
static _updateImmediate = null;
|
|
239
|
+
static _updateImmediate: ?number = null;
|
|
223
240
|
|
|
224
241
|
// The current merged values from the props stack.
|
|
225
|
-
|
|
226
|
-
static _currentValues = null;
|
|
242
|
+
static _currentValues: ?StackProps = null;
|
|
227
243
|
|
|
228
244
|
// TODO(janic): Provide a real API to deal with status bar height. See the
|
|
229
245
|
// discussion in #6195.
|
|
@@ -371,8 +387,7 @@ class StatusBar extends React.Component<Props> {
|
|
|
371
387
|
return newEntry;
|
|
372
388
|
}
|
|
373
389
|
|
|
374
|
-
|
|
375
|
-
_stackEntry = null;
|
|
390
|
+
_stackEntry: ?StackProps = null;
|
|
376
391
|
|
|
377
392
|
componentDidMount() {
|
|
378
393
|
// Every time a StatusBar component is mounted, we push it's prop to a stack
|
|
@@ -412,14 +427,14 @@ class StatusBar extends React.Component<Props> {
|
|
|
412
427
|
if (Platform.OS === 'ios') {
|
|
413
428
|
if (
|
|
414
429
|
!oldProps ||
|
|
415
|
-
oldProps.barStyle
|
|
430
|
+
oldProps.barStyle?.value !== mergedProps.barStyle.value
|
|
416
431
|
) {
|
|
417
432
|
NativeStatusBarManagerIOS.setStyle(
|
|
418
433
|
mergedProps.barStyle.value,
|
|
419
434
|
mergedProps.barStyle.animated || false,
|
|
420
435
|
);
|
|
421
436
|
}
|
|
422
|
-
if (!oldProps || oldProps.hidden
|
|
437
|
+
if (!oldProps || oldProps.hidden?.value !== mergedProps.hidden.value) {
|
|
423
438
|
NativeStatusBarManagerIOS.setHidden(
|
|
424
439
|
mergedProps.hidden.value,
|
|
425
440
|
mergedProps.hidden.animated
|
|
@@ -456,7 +471,7 @@ class StatusBar extends React.Component<Props> {
|
|
|
456
471
|
mergedProps.backgroundColor.animated,
|
|
457
472
|
);
|
|
458
473
|
}
|
|
459
|
-
if (!oldProps || oldProps.hidden
|
|
474
|
+
if (!oldProps || oldProps.hidden?.value !== mergedProps.hidden.value) {
|
|
460
475
|
NativeStatusBarManagerAndroid.setHidden(mergedProps.hidden.value);
|
|
461
476
|
}
|
|
462
477
|
// Activities are not translucent by default, so always set if true.
|
|
@@ -478,4 +493,4 @@ class StatusBar extends React.Component<Props> {
|
|
|
478
493
|
}
|
|
479
494
|
}
|
|
480
495
|
|
|
481
|
-
|
|
496
|
+
export default StatusBar;
|
|
@@ -24,13 +24,13 @@ import SwitchNativeComponent, {
|
|
|
24
24
|
import * as React from 'react';
|
|
25
25
|
|
|
26
26
|
type SwitchChangeEvent = SyntheticEvent<
|
|
27
|
-
$ReadOnly<{
|
|
27
|
+
$ReadOnly<{
|
|
28
28
|
value: boolean,
|
|
29
29
|
target: number,
|
|
30
|
-
|
|
30
|
+
}>,
|
|
31
31
|
>;
|
|
32
32
|
|
|
33
|
-
export type Props = $ReadOnly<{
|
|
33
|
+
export type Props = $ReadOnly<{
|
|
34
34
|
...ViewProps,
|
|
35
35
|
|
|
36
36
|
/**
|
|
@@ -59,10 +59,10 @@ export type Props = $ReadOnly<{|
|
|
|
59
59
|
color of the background exposed by the shrunken track, use
|
|
60
60
|
[`ios_backgroundColor`](https://reactnative.dev/docs/switch#ios_backgroundColor).
|
|
61
61
|
*/
|
|
62
|
-
trackColor?: ?$ReadOnly<{
|
|
62
|
+
trackColor?: ?$ReadOnly<{
|
|
63
63
|
false?: ?ColorValue,
|
|
64
64
|
true?: ?ColorValue,
|
|
65
|
-
|
|
65
|
+
}>,
|
|
66
66
|
|
|
67
67
|
/**
|
|
68
68
|
On iOS, custom color for the background. This background color can be
|
|
@@ -84,7 +84,7 @@ export type Props = $ReadOnly<{|
|
|
|
84
84
|
use `onChange`.
|
|
85
85
|
*/
|
|
86
86
|
onValueChange?: ?(value: boolean) => Promise<void> | void,
|
|
87
|
-
|
|
87
|
+
}>;
|
|
88
88
|
const returnsFalse = () => false;
|
|
89
89
|
const returnsTrue = () => true;
|
|
90
90
|
|