@office-iss/react-native-win32 0.78.4 → 0.79.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/.flowconfig +4 -1
- package/CHANGELOG.json +166 -53
- package/CHANGELOG.md +53 -30
- 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 +17 -12
- 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 +39 -18
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
- package/Libraries/Alert/Alert.js +33 -10
- package/Libraries/Alert/Alert.win32.js +32 -9
- package/Libraries/Alert/NativeAlertManager.js +2 -2
- package/Libraries/Alert/RCTAlertManager.android.js +1 -1
- package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
- package/Libraries/Alert/RCTAlertManager.js.flow +18 -0
- package/Libraries/Animated/Animated.js +8 -37
- package/Libraries/Animated/Animated.js.flow +15 -0
- package/Libraries/Animated/AnimatedExports.js +47 -0
- package/Libraries/Animated/AnimatedExports.js.flow +48 -0
- package/Libraries/Animated/AnimatedMock.js +1 -1
- package/Libraries/Animated/NativeAnimatedModule.js +2 -2
- package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
- package/Libraries/Animated/animations/Animation.js +1 -4
- package/Libraries/Animated/createAnimatedComponent.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +1 -0
- package/Libraries/Animated/nodes/AnimatedValue.js +30 -22
- package/Libraries/Animated/useAnimatedProps.js +4 -333
- package/Libraries/Animated/useAnimatedValue.js +1 -3
- package/Libraries/AppState/AppState.js +24 -7
- package/Libraries/AppState/NativeAppState.js +2 -2
- package/Libraries/BatchedBridge/BatchedBridge.js +4 -2
- package/Libraries/BatchedBridge/MessageQueue.js +5 -4
- package/Libraries/BatchedBridge/NativeModules.js +6 -4
- package/Libraries/Blob/Blob.js +5 -5
- 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 +8 -174
- package/Libraries/Blob/FileReader_new.js +231 -0
- package/Libraries/Blob/FileReader_old.js +186 -0
- package/Libraries/Blob/NativeBlobModule.js +2 -2
- package/Libraries/Blob/NativeFileReaderModule.js +2 -2
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +9 -10
- package/Libraries/Blob/URLSearchParams.js.flow +23 -0
- package/Libraries/BugReporting/BugReporting.js +2 -2
- package/Libraries/BugReporting/NativeBugReporting.js +2 -2
- package/Libraries/BugReporting/dumpReactTree.js +2 -2
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +1 -1
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -2
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +20 -0
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +11 -11
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
- package/Libraries/Components/Button.js +6 -6
- package/Libraries/Components/Button.win32.js +6 -9
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +14 -100
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +64 -4
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +138 -0
- package/Libraries/Components/Keyboard/Keyboard.js +9 -9
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +24 -25
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +7 -5
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
- package/Libraries/Components/Pressable/Pressable.js +28 -73
- package/Libraries/Components/Pressable/Pressable.win32.js +29 -75
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +17 -17
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +4 -47
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +13 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +54 -0
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/RefreshControl.js +17 -14
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
- package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +1 -1
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
- package/Libraries/Components/ScrollView/ScrollView.js +139 -134
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +7 -9
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +10 -11
- package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
- package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
- package/Libraries/Components/Sound/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +4 -4
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
- package/Libraries/Components/StatusBar/StatusBar.js +57 -31
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
- package/Libraries/Components/Switch/Switch.js +74 -45
- package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -35
- package/Libraries/Components/TextInput/InputAccessoryView.js +5 -3
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +2 -4
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -4
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +5 -2
- package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +1 -2
- package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
- package/Libraries/Components/TextInput/TextInput.flow.js +131 -121
- package/Libraries/Components/TextInput/TextInput.js +149 -146
- package/Libraries/Components/TextInput/TextInput.win32.js +151 -148
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.js +6 -20
- package/Libraries/Components/TextInput/TextInputState.win32.js +6 -20
- package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +1 -1
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +68 -6
- package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
- package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Position.js +1 -1
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +1 -2
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
- package/Libraries/Components/Touchable/Touchable.js +23 -23
- package/Libraries/Components/Touchable/Touchable.win32.js +23 -23
- package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
- package/Libraries/Components/Touchable/TouchableHighlight.js +44 -23
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +102 -54
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +252 -47
- package/Libraries/Components/Touchable/TouchableOpacity.js +57 -15
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +114 -61
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +11 -3
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +17 -3
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -1
- package/Libraries/Components/View/View.js +2 -2
- package/Libraries/Components/View/View.win32.js +2 -2
- package/Libraries/Components/View/ViewAccessibility.js +245 -5
- package/Libraries/Components/View/ViewAccessibility.win32.js +245 -5
- package/Libraries/Components/View/ViewNativeComponent.js +2 -4
- package/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
- package/Libraries/Components/View/ViewPropTypes.js +65 -253
- package/Libraries/Components/View/ViewPropTypes.win32.js +123 -312
- package/Libraries/Core/Devtools/getDevServer.js +1 -3
- package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
- package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +4 -2
- package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
- package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
- package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
- package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +6 -5
- package/Libraries/Core/ExceptionsManager.js +6 -4
- package/Libraries/Core/InitializeCore.js +7 -3
- package/Libraries/Core/NativeExceptionsManager.js +2 -2
- package/Libraries/Core/RawEventEmitter.js +2 -2
- package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +4 -6
- package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +2 -4
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +10 -8
- package/Libraries/Core/Timers/NativeTiming.js +2 -2
- package/Libraries/Core/Timers/immediateShim.js +2 -9
- package/Libraries/Core/polyfillPromise.js +1 -1
- package/Libraries/Core/registerCallableModule.js +1 -1
- package/Libraries/Core/setUpAlert.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +13 -8
- package/Libraries/Core/setUpDeveloperTools.js +3 -35
- package/Libraries/Core/setUpErrorHandling.js +2 -2
- package/Libraries/Core/setUpReactDevTools.js +26 -6
- package/Libraries/Core/setUpReactRefresh.js +1 -1
- package/Libraries/Core/setUpTimers.js +45 -66
- package/Libraries/Core/setUpXHR.js +11 -8
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +10 -7
- package/Libraries/EventEmitter/NativeEventEmitter.js +8 -2
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -5
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -2
- package/Libraries/Events/CustomEvent.js +3 -3
- package/Libraries/Events/EventPolyfill.js +2 -2
- package/Libraries/Image/AssetRegistry.js +8 -1
- package/Libraries/Image/AssetSourceResolver.js +4 -4
- package/Libraries/Image/Image.android.js +2 -2
- package/Libraries/Image/Image.ios.js +1 -1
- package/Libraries/Image/Image.js.flow +27 -0
- package/Libraries/Image/Image.win32.js +1 -1
- package/Libraries/Image/ImageBackground.js +2 -2
- package/Libraries/Image/ImageProps.js +109 -39
- package/Libraries/Image/ImageTypes.flow.js +16 -6
- package/Libraries/Image/ImageViewNativeComponent.js +5 -7
- package/Libraries/Image/NativeImageEditor.js +2 -2
- package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
- package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
- package/Libraries/Image/NativeImageLoaderWin32.js +2 -2
- package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
- package/Libraries/Image/NativeImageStoreIOS.js +2 -2
- package/Libraries/Image/RelativeImageStub.js +3 -1
- package/Libraries/Image/Tests/ImageWin32Test.d.ts +1 -2
- package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
- package/Libraries/Image/TextInlineImageNativeComponent.js +2 -4
- package/Libraries/Image/nativeImageSource.js +3 -3
- package/Libraries/Image/resolveAssetSource.js +4 -2
- package/Libraries/Image/resolveAssetSource.win32.js +1 -1
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +20 -9
- package/Libraries/Interaction/InteractionManagerStub.js +10 -2
- package/Libraries/Interaction/JSEventLoopWatchdog.js +2 -2
- package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
- package/Libraries/Interaction/PanResponder.js +49 -46
- package/Libraries/Interaction/TaskQueue.js +4 -4
- package/Libraries/Interaction/TouchHistoryMath.js +27 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +20 -6
- package/Libraries/Linking/Linking.d.ts +3 -3
- package/Libraries/Linking/Linking.js +10 -9
- package/Libraries/Linking/NativeIntentAndroid.js +2 -2
- package/Libraries/Linking/NativeLinkingManager.js +2 -2
- package/Libraries/Lists/FillRateHelper.js +4 -4
- package/Libraries/Lists/FlatList.js +30 -30
- package/Libraries/Lists/SectionList.js +10 -10
- package/Libraries/Lists/SectionListModern.js +9 -7
- package/Libraries/Lists/ViewabilityHelper.js +4 -3
- package/Libraries/Lists/VirtualizeUtils.js +3 -5
- package/Libraries/Lists/VirtualizedList.js +6 -6
- package/Libraries/Lists/VirtualizedListContext.js +5 -5
- package/Libraries/Lists/VirtualizedSectionList.js +5 -3
- package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +15 -15
- package/Libraries/LogBox/Data/LogBoxLog.js +51 -29
- package/Libraries/LogBox/Data/parseLogBoxLog.js +10 -10
- package/Libraries/LogBox/LogBox.js +22 -2
- package/Libraries/LogBox/LogBoxInspectorContainer.js +3 -3
- package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
- package/Libraries/LogBox/UI/AnsiHighlight.js +7 -3
- package/Libraries/LogBox/UI/LogBoxButton.js +8 -6
- package/Libraries/LogBox/UI/LogBoxInspector.js +1 -1
- 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/LogBoxInspectorFooter.js +11 -3
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +8 -2
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -4
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -4
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -2
- package/Libraries/LogBox/UI/LogBoxNotification.js +6 -2
- package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +3 -1
- package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +2 -0
- package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +4 -1
- package/Libraries/Modal/Modal.js +82 -89
- package/Libraries/Modal/NativeModalManager.js +2 -2
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
- package/Libraries/NativeComponent/BaseViewConfig.android.js +16 -6
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -9
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +14 -0
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +19 -9
- package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +5 -1
- package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
- package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
- package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
- package/Libraries/Network/FormData.js +1 -1
- package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
- package/Libraries/Network/NativeNetworkingIOS.js +2 -2
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +44 -0
- package/Libraries/Network/RCTNetworking.win32.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +10 -685
- package/Libraries/Network/XMLHttpRequest_new.js +794 -0
- package/Libraries/Network/XMLHttpRequest_old.js +701 -0
- package/Libraries/Network/convertRequestBody.js +7 -4
- package/Libraries/Network/fetch.js +4 -3
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +65 -63
- package/Libraries/Pressability/HoverState.js +1 -0
- package/Libraries/Pressability/HoverState.win32.js +1 -0
- package/Libraries/Pressability/Pressability.js +34 -34
- package/Libraries/Pressability/Pressability.win32.js +35 -35
- package/Libraries/Pressability/PressabilityDebug.js +2 -2
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +2 -2
- package/Libraries/Promise.js +2 -2
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +119 -16
- package/Libraries/ReactNative/AppContainer-dev.js +4 -3
- package/Libraries/ReactNative/AppContainer.js +3 -3
- package/Libraries/ReactNative/AppRegistry.js +4 -4
- package/Libraries/ReactNative/BridgelessUIManager.js +4 -9
- package/Libraries/ReactNative/FabricUIManager.js +22 -10
- package/Libraries/ReactNative/I18nManager.js +4 -3
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
- package/Libraries/ReactNative/NativeI18nManager.js +2 -2
- package/Libraries/ReactNative/NativeUIManager.js +2 -2
- package/Libraries/ReactNative/PaperUIManager.js +6 -6
- package/Libraries/ReactNative/PaperUIManager.win32.js +6 -6
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +7 -5
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -30
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +3 -3
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +3 -3
- package/Libraries/ReactNative/RendererImplementation.js +12 -5
- package/Libraries/ReactNative/RootTag.js +1 -1
- package/Libraries/ReactNative/UIManager.d.ts +1 -0
- package/Libraries/ReactNative/UIManager.js +3 -3
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +10 -9
- package/Libraries/ReactNative/requireNativeComponent.js +3 -2
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +30 -10
- package/Libraries/Renderer/shims/ReactNativeTypes.js +40 -89
- package/Libraries/Settings/NativeSettingsManager.js +2 -2
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/Settings/Settings.js +3 -3
- package/Libraries/Settings/Settings.win32.js +3 -3
- package/Libraries/Share/NativeShareModule.js +2 -2
- package/Libraries/Share/Share.js +11 -4
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +22 -0
- package/Libraries/StyleSheet/Rect.js +2 -2
- package/Libraries/StyleSheet/StyleSheet.js +4 -3
- package/Libraries/StyleSheet/StyleSheet.win32.js +5 -4
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
- package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +1 -1
- package/Libraries/StyleSheet/flattenStyle.js +1 -1
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +18 -18
- package/Libraries/StyleSheet/processAspectRatio.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +138 -136
- package/Libraries/StyleSheet/processBoxShadow.js +4 -0
- package/Libraries/StyleSheet/processColor.js +2 -2
- package/Libraries/StyleSheet/processColorArray.js +1 -1
- package/Libraries/StyleSheet/processFilter.js +4 -0
- package/Libraries/StyleSheet/processFontVariant.js +1 -1
- package/Libraries/StyleSheet/processTransform.js +1 -1
- package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
- package/Libraries/Text/Text.d.ts +1 -1
- package/Libraries/Text/Text.js +19 -17
- package/Libraries/Text/Text.win32.js +19 -17
- package/Libraries/Text/TextAncestor.js +2 -3
- package/Libraries/Text/TextNativeComponent.js +3 -3
- package/Libraries/Text/TextNativeComponent.win32.js +3 -3
- package/Libraries/Text/TextProps.js +134 -94
- package/Libraries/Text/TextProps.win32.js +134 -94
- package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
- package/Libraries/Types/CodegenTypes.js +5 -4
- package/Libraries/Types/CoreEventTypes.js +119 -86
- package/Libraries/Types/CoreEventTypes.win32.js +131 -93
- package/Libraries/Types/ReactDevToolsTypes.js +4 -8
- package/Libraries/UTFSequence.js +4 -3
- package/Libraries/Utilities/Appearance.js +0 -8
- package/Libraries/Utilities/BackHandler.android.js +3 -3
- package/Libraries/Utilities/BackHandler.ios.js +7 -7
- package/Libraries/Utilities/BackHandler.js.flow +25 -0
- package/Libraries/Utilities/BackHandler.win32.js +3 -3
- package/Libraries/Utilities/DevLoadingView.js +1 -1
- package/Libraries/Utilities/DevSettings.js +15 -1
- package/Libraries/Utilities/DeviceInfo.js +1 -1
- package/Libraries/Utilities/DeviceInfo.win32.js +1 -1
- package/Libraries/Utilities/Dimensions.js +5 -0
- package/Libraries/Utilities/Dimensions.win32.js +5 -0
- package/Libraries/Utilities/FeatureDetection.js +2 -4
- package/Libraries/Utilities/FocusManager.win32.js +3 -3
- package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -1
- package/Libraries/Utilities/HMRClient.js +7 -7
- package/Libraries/Utilities/HMRClientProdShim.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +2 -2
- package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
- package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsWin.js +2 -2
- package/Libraries/Utilities/Platform.android.js +6 -6
- package/Libraries/Utilities/Platform.ios.js +6 -6
- package/{flow/Position.js → Libraries/Utilities/Platform.js.flow} +3 -6
- package/Libraries/Utilities/Platform.win32.js +4 -4
- package/Libraries/Utilities/{Platform.flow.win32.js → PlatformTypes.js} +105 -14
- package/Libraries/Utilities/PolyfillFunctions.js +3 -5
- package/Libraries/Utilities/RCTLog.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +6 -6
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +2 -2
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +2 -2
- package/Libraries/Utilities/codegenNativeComponent.js +3 -3
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
- package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
- package/Libraries/Utilities/differ/deepDiffer.js +6 -6
- package/Libraries/Utilities/differ/insetsDiffer.js +3 -3
- package/Libraries/Utilities/differ/matricesDiffer.js +3 -6
- package/Libraries/Utilities/differ/pointsDiffer.js +3 -3
- package/Libraries/Utilities/differ/sizesDiffer.js +3 -3
- package/Libraries/Utilities/dismissKeyboard.js +3 -2
- package/Libraries/Utilities/infoLog.js +1 -1
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/mapWithSeparator.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +2 -2
- package/Libraries/Utilities/warnOnce.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +2 -2
- package/Libraries/Vibration/Vibration.js +4 -4
- package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
- package/Libraries/WebSocket/WebSocket.js +8 -285
- package/Libraries/WebSocket/WebSocketEvent.js +2 -2
- package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
- package/Libraries/WebSocket/WebSocket_new.js +325 -0
- package/Libraries/WebSocket/WebSocket_old.js +297 -0
- package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -4
- package/Libraries/vendor/core/ErrorUtils.js +1 -1
- package/Libraries/vendor/emitter/EventEmitter.js +21 -9
- package/flow/jest.js +14 -14
- package/index.js +153 -237
- package/index.win32.js +64 -55
- package/jest/mockScrollView.js +1 -1
- package/jest/setup.js +314 -264
- package/overrides.json +64 -75
- package/package.json +26 -26
- package/src/private/animated/createAnimatedPropsHook.js +360 -0
- package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
- package/src/private/components/HScrollViewNativeComponents.js +2 -2
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
- package/src/private/components/VScrollViewNativeComponents.js +1 -1
- package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
- package/src/private/debugging/ReactDevToolsSettingsManager.win32.js +1 -1
- package/src/private/devmenu/DevMenu.js +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +53 -75
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +5 -7
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +10 -12
- package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
- package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
- package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +9 -8
- package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +20 -15
- package/{Libraries/Inspector → src/private/inspector}/Inspector.js +21 -18
- package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +11 -10
- package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +17 -15
- package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +43 -27
- package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +8 -6
- package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +11 -10
- package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
- package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +5 -2
- package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +6 -6
- package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +5 -4
- package/src/private/renderer/errorhandling/ErrorHandlers.js +5 -5
- package/src/private/setup/setUpDOM.js +43 -3
- package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +5 -5
- package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +5 -5
- package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +5 -5
- package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +8 -8
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +9 -9
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderWin32.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +5 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsWin.js +5 -10
- package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +7 -7
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +3 -3
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +2 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +4 -4
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +6 -6
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +184 -0
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +1 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +1 -1
- package/{flow/react.js → src/private/types/HostComponent.js} +6 -5
- package/src/private/types/HostInstance.js +50 -0
- package/src/private/webapis/dom/events/CustomEvent.js +38 -0
- package/src/private/webapis/dom/events/Event.js +236 -0
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
- package/src/private/webapis/dom/events/EventTarget.js +436 -0
- package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
- package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +121 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +82 -51
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +7 -6
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +26 -26
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +56 -78
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
- package/src/private/webapis/html/events/MessageEvent.js +56 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +6 -6
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
- package/src/private/webapis/intersectionobserver/{IntersectionObserverManager.js → internals/IntersectionObserverManager.js} +20 -17
- package/src/private/webapis/mutationobserver/MutationObserver.js +11 -11
- package/src/private/webapis/mutationobserver/{MutationObserverManager.js → internals/MutationObserverManager.js} +12 -14
- 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 +8 -8
- 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
- package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
- package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
- package/src/types/globals.d.ts +628 -0
- package/src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx +7 -7
- package/src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +3 -3
- package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
- package/src-win/Libraries/Image/Tests/ImageWin32Test.tsx +1 -1
- package/src-win/Libraries/Text/Text.d.ts +1 -1
- package/types/index.d.ts +2 -58
- package/Libraries/Animated/AnimatedWeb.js +0 -26
- package/Libraries/Inspector/Inspector.win32.js +0 -212
- package/Libraries/Inspector/InspectorOverlay.win32.js +0 -68
- package/Libraries/JSInspector/InspectorAgent.js +0 -27
- package/Libraries/JSInspector/JSInspector.js +0 -33
- package/Libraries/JSInspector/NetworkAgent.js +0 -295
- package/Libraries/Utilities/DebugEnvironment.js +0 -16
- package/Libraries/Utilities/Platform.flow.js +0 -91
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
- package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
- package/src/private/specs/modules/NativeCPUTime.js +0 -24
- package/src/private/specs/modules/NativeFantom.js +0 -37
- package/src/private/specs/modules/NativeUIManager.js +0 -111
- package/types/modules/globals.d.ts +0 -599
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfoWin32.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
- /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
- /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
|
@@ -5,68 +5,97 @@
|
|
|
5
5
|
* @flow strict-local
|
|
6
6
|
* @format
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
8
|
'use strict';
|
|
10
9
|
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import typeof TouchableWithoutFeedback from './TouchableWithoutFeedback';
|
|
14
|
-
|
|
15
|
-
type Props = $ReadOnly<{|
|
|
16
|
-
...React.ElementConfig<TouchableWithoutFeedback>,
|
|
10
|
+
import type {GestureResponderEvent} from '../../Types/CoreEventTypes';
|
|
11
|
+
import type {TouchableWithoutFeedbackProps} from './TouchableWithoutFeedback';
|
|
17
12
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
attribute:
|
|
28
|
-
| 'selectableItemBackground'
|
|
29
|
-
| 'selectableItemBackgroundBorderless',
|
|
30
|
-
rippleRadius: ?number,
|
|
31
|
-
|}>
|
|
32
|
-
| $ReadOnly<{|
|
|
33
|
-
type: 'RippleAndroid',
|
|
34
|
-
color: ?number,
|
|
35
|
-
borderless: boolean,
|
|
36
|
-
rippleRadius: ?number,
|
|
37
|
-
|}>
|
|
38
|
-
),
|
|
13
|
+
import Pressability, {
|
|
14
|
+
type PressabilityConfig,
|
|
15
|
+
} from '../../Pressability/Pressability';
|
|
16
|
+
import {findHostInstance_DEPRECATED} from '../../ReactNative/RendererProxy';
|
|
17
|
+
import processColor from '../../StyleSheet/processColor';
|
|
18
|
+
import Platform from '../../Utilities/Platform';
|
|
19
|
+
import {Commands} from '../View/ViewNativeComponent';
|
|
20
|
+
import invariant from 'invariant';
|
|
21
|
+
import * as React from 'react';
|
|
39
22
|
|
|
23
|
+
type TVProps = {
|
|
40
24
|
/**
|
|
41
|
-
* TV preferred focus (see documentation for the View component).
|
|
25
|
+
* *(Apple TV only)* TV preferred focus (see documentation for the View component).
|
|
26
|
+
*
|
|
27
|
+
* @platform ios
|
|
42
28
|
*/
|
|
43
29
|
hasTVPreferredFocus?: ?boolean,
|
|
44
30
|
|
|
45
31
|
/**
|
|
46
|
-
*
|
|
32
|
+
* Designates the next view to receive focus when the user navigates down. See the Android documentation.
|
|
33
|
+
*
|
|
34
|
+
* @platform android
|
|
47
35
|
*/
|
|
48
36
|
nextFocusDown?: ?number,
|
|
49
37
|
|
|
50
38
|
/**
|
|
51
|
-
*
|
|
39
|
+
* Designates the next view to receive focus when the user navigates forward. See the Android documentation.
|
|
40
|
+
*
|
|
41
|
+
* @platform android
|
|
52
42
|
*/
|
|
53
43
|
nextFocusForward?: ?number,
|
|
54
44
|
|
|
55
45
|
/**
|
|
56
|
-
*
|
|
46
|
+
* Designates the next view to receive focus when the user navigates left. See the Android documentation.
|
|
47
|
+
*
|
|
48
|
+
* @platform android
|
|
57
49
|
*/
|
|
58
50
|
nextFocusLeft?: ?number,
|
|
59
51
|
|
|
60
52
|
/**
|
|
61
|
-
*
|
|
53
|
+
* Designates the next view to receive focus when the user navigates right. See the Android documentation.
|
|
54
|
+
*
|
|
55
|
+
* @platform android
|
|
62
56
|
*/
|
|
63
57
|
nextFocusRight?: ?number,
|
|
64
58
|
|
|
65
59
|
/**
|
|
66
|
-
*
|
|
60
|
+
* Designates the next view to receive focus when the user navigates up. See the Android documentation.
|
|
61
|
+
*
|
|
62
|
+
* @platform android
|
|
67
63
|
*/
|
|
68
64
|
nextFocusUp?: ?number,
|
|
65
|
+
};
|
|
69
66
|
|
|
67
|
+
export type TouchableNativeFeedbackProps = $ReadOnly<{
|
|
68
|
+
...TouchableWithoutFeedbackProps,
|
|
69
|
+
...TVProps,
|
|
70
|
+
/**
|
|
71
|
+
* Determines the type of background drawable that's going to be used to display feedback.
|
|
72
|
+
* It takes an object with type property and extra data depending on the type.
|
|
73
|
+
* It's recommended to use one of the following static methods to generate that dictionary:
|
|
74
|
+
* 1) TouchableNativeFeedback.SelectableBackground() - will create object that represents android theme's
|
|
75
|
+
* default background for selectable elements (?android:attr/selectableItemBackground)
|
|
76
|
+
* 2) TouchableNativeFeedback.SelectableBackgroundBorderless() - will create object that represent android
|
|
77
|
+
* theme's default background for borderless selectable elements
|
|
78
|
+
* (?android:attr/selectableItemBackgroundBorderless). Available on android API level 21+
|
|
79
|
+
* 3) TouchableNativeFeedback.Ripple(color, borderless) - will create object that represents ripple drawable
|
|
80
|
+
* with specified color (as a string). If property borderless evaluates to true the ripple will render
|
|
81
|
+
* outside of the view bounds (see native actionbar buttons as an example of that behavior). This background
|
|
82
|
+
* type is available on Android API level 21+
|
|
83
|
+
*/
|
|
84
|
+
background?: ?(
|
|
85
|
+
| $ReadOnly<{
|
|
86
|
+
type: 'ThemeAttrAndroid',
|
|
87
|
+
attribute:
|
|
88
|
+
| 'selectableItemBackground'
|
|
89
|
+
| 'selectableItemBackgroundBorderless',
|
|
90
|
+
rippleRadius: ?number,
|
|
91
|
+
}>
|
|
92
|
+
| $ReadOnly<{
|
|
93
|
+
type: 'RippleAndroid',
|
|
94
|
+
color: ?number,
|
|
95
|
+
borderless: boolean,
|
|
96
|
+
rippleRadius: ?number,
|
|
97
|
+
}>
|
|
98
|
+
),
|
|
70
99
|
/**
|
|
71
100
|
* Set to true to add the ripple effect to the foreground of the view, instead
|
|
72
101
|
* of the background. This is useful if one of your child views has a
|
|
@@ -80,20 +109,196 @@ type Props = $ReadOnly<{|
|
|
|
80
109
|
useForeground?: ?boolean,
|
|
81
110
|
|
|
82
111
|
tooltip?: string, // Win32
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
112
|
+
}>;
|
|
113
|
+
|
|
114
|
+
type State = $ReadOnly<{
|
|
115
|
+
pressability: Pressability,
|
|
116
|
+
}>;
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* A wrapper for making views respond properly to touches (Android only).
|
|
120
|
+
* On Android this component uses native state drawable to display touch feedback.
|
|
121
|
+
* At the moment it only supports having a single View instance as a child node,
|
|
122
|
+
* as it's implemented by replacing that View with another instance of RCTView node with some additional properties set.
|
|
123
|
+
*
|
|
124
|
+
* Background drawable of native feedback touchable can be customized with background property.
|
|
125
|
+
*
|
|
126
|
+
* @see https://reactnative.dev/docs/touchablenativefeedback#content
|
|
127
|
+
*/
|
|
128
|
+
class TouchableNativeFeedback extends React.Component<
|
|
129
|
+
TouchableNativeFeedbackProps,
|
|
130
|
+
State,
|
|
131
|
+
> {
|
|
132
|
+
/**
|
|
133
|
+
* Creates an object that represents android theme's default background for
|
|
134
|
+
* selectable elements (?android:attr/selectableItemBackground).
|
|
135
|
+
*
|
|
136
|
+
* @param rippleRadius The radius of ripple effect
|
|
137
|
+
*/
|
|
138
|
+
static SelectableBackground: (rippleRadius?: ?number) => $ReadOnly<{
|
|
139
|
+
attribute: 'selectableItemBackground',
|
|
140
|
+
type: 'ThemeAttrAndroid',
|
|
141
|
+
rippleRadius: ?number,
|
|
142
|
+
}> = (rippleRadius?: ?number) => ({
|
|
143
|
+
type: 'ThemeAttrAndroid',
|
|
144
|
+
attribute: 'selectableItemBackground',
|
|
145
|
+
rippleRadius,
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Creates an object that represent android theme's default background for borderless
|
|
150
|
+
* selectable elements (?android:attr/selectableItemBackgroundBorderless).
|
|
151
|
+
* Available on android API level 21+.
|
|
152
|
+
*
|
|
153
|
+
* @param rippleRadius The radius of ripple effect
|
|
154
|
+
*/
|
|
155
|
+
static SelectableBackgroundBorderless: (rippleRadius?: ?number) => $ReadOnly<{
|
|
156
|
+
attribute: 'selectableItemBackgroundBorderless',
|
|
157
|
+
type: 'ThemeAttrAndroid',
|
|
158
|
+
rippleRadius: ?number,
|
|
159
|
+
}> = (rippleRadius?: ?number) => ({
|
|
160
|
+
type: 'ThemeAttrAndroid',
|
|
161
|
+
attribute: 'selectableItemBackgroundBorderless',
|
|
162
|
+
rippleRadius,
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Creates an object that represents ripple drawable with specified color (as a
|
|
167
|
+
* string). If property `borderless` evaluates to true the ripple will
|
|
168
|
+
* render outside of the view bounds (see native actionbar buttons as an
|
|
169
|
+
* example of that behavior). This background type is available on Android
|
|
170
|
+
* API level 21+.
|
|
171
|
+
*
|
|
172
|
+
* @param color The ripple color
|
|
173
|
+
* @param borderless If the ripple can render outside it's bounds
|
|
174
|
+
* @param rippleRadius The radius of ripple effect
|
|
175
|
+
*/
|
|
176
|
+
static Ripple: (
|
|
177
|
+
color: string,
|
|
178
|
+
borderless: boolean,
|
|
179
|
+
rippleRadius?: ?number,
|
|
180
|
+
) => $ReadOnly<{
|
|
181
|
+
borderless: boolean,
|
|
182
|
+
color: ?number,
|
|
183
|
+
rippleRadius: ?number,
|
|
184
|
+
type: 'RippleAndroid',
|
|
185
|
+
}> = (color: string, borderless: boolean, rippleRadius?: ?number) => {
|
|
186
|
+
const processedColor = processColor(color);
|
|
187
|
+
invariant(
|
|
188
|
+
processedColor == null || typeof processedColor === 'number',
|
|
189
|
+
'Unexpected color given for Ripple color',
|
|
95
190
|
);
|
|
191
|
+
return {
|
|
192
|
+
type: 'RippleAndroid',
|
|
193
|
+
// $FlowFixMe[incompatible-type]
|
|
194
|
+
color: processedColor,
|
|
195
|
+
borderless,
|
|
196
|
+
rippleRadius,
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Whether `useForeground` is supported.
|
|
202
|
+
*/
|
|
203
|
+
static canUseNativeForeground: () => boolean = () =>
|
|
204
|
+
Platform.OS === 'android';
|
|
205
|
+
|
|
206
|
+
state: State = {
|
|
207
|
+
pressability: new Pressability(this._createPressabilityConfig()),
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
_createPressabilityConfig(): PressabilityConfig {
|
|
211
|
+
const accessibilityStateDisabled =
|
|
212
|
+
this.props['aria-disabled'] ?? this.props.accessibilityState?.disabled;
|
|
213
|
+
return {
|
|
214
|
+
cancelable: !this.props.rejectResponderTermination,
|
|
215
|
+
disabled:
|
|
216
|
+
this.props.disabled != null
|
|
217
|
+
? this.props.disabled
|
|
218
|
+
: accessibilityStateDisabled,
|
|
219
|
+
hitSlop: this.props.hitSlop,
|
|
220
|
+
delayLongPress: this.props.delayLongPress,
|
|
221
|
+
delayPressIn: this.props.delayPressIn,
|
|
222
|
+
delayPressOut: this.props.delayPressOut,
|
|
223
|
+
minPressDuration: 0,
|
|
224
|
+
pressRectOffset: this.props.pressRetentionOffset,
|
|
225
|
+
android_disableSound: this.props.touchSoundDisabled,
|
|
226
|
+
onLongPress: this.props.onLongPress,
|
|
227
|
+
onPress: this.props.onPress,
|
|
228
|
+
onPressIn: event => {
|
|
229
|
+
if (Platform.OS === 'android') {
|
|
230
|
+
this._dispatchHotspotUpdate(event);
|
|
231
|
+
this._dispatchPressedStateChange(true);
|
|
232
|
+
}
|
|
233
|
+
if (this.props.onPressIn != null) {
|
|
234
|
+
this.props.onPressIn(event);
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
onPressMove: event => {
|
|
238
|
+
if (Platform.OS === 'android') {
|
|
239
|
+
this._dispatchHotspotUpdate(event);
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
onPressOut: event => {
|
|
243
|
+
if (Platform.OS === 'android') {
|
|
244
|
+
this._dispatchPressedStateChange(false);
|
|
245
|
+
}
|
|
246
|
+
if (this.props.onPressOut != null) {
|
|
247
|
+
this.props.onPressOut(event);
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
_dispatchPressedStateChange(pressed: boolean): void {
|
|
254
|
+
if (Platform.OS === 'android') {
|
|
255
|
+
const hostComponentRef = findHostInstance_DEPRECATED(this);
|
|
256
|
+
if (hostComponentRef == null) {
|
|
257
|
+
console.warn(
|
|
258
|
+
'Touchable: Unable to find HostComponent instance. ' +
|
|
259
|
+
'Has your Touchable component been unmounted?',
|
|
260
|
+
);
|
|
261
|
+
} else {
|
|
262
|
+
Commands.setPressed(hostComponentRef, pressed);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
_dispatchHotspotUpdate(event: GestureResponderEvent): void {
|
|
268
|
+
if (Platform.OS === 'android') {
|
|
269
|
+
const {locationX, locationY} = event.nativeEvent;
|
|
270
|
+
const hostComponentRef = findHostInstance_DEPRECATED(this);
|
|
271
|
+
if (hostComponentRef == null) {
|
|
272
|
+
console.warn(
|
|
273
|
+
'Touchable: Unable to find HostComponent instance. ' +
|
|
274
|
+
'Has your Touchable component been unmounted?',
|
|
275
|
+
);
|
|
276
|
+
} else {
|
|
277
|
+
Commands.hotspotUpdate(
|
|
278
|
+
hostComponentRef,
|
|
279
|
+
locationX ?? 0,
|
|
280
|
+
locationY ?? 0,
|
|
281
|
+
);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
componentDidUpdate(
|
|
287
|
+
prevProps: TouchableNativeFeedbackProps,
|
|
288
|
+
prevState: State,
|
|
289
|
+
) {
|
|
290
|
+
this.state.pressability.configure(this._createPressabilityConfig());
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
componentDidMount(): mixed {
|
|
294
|
+
this.state.pressability.configure(this._createPressabilityConfig());
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
componentWillUnmount(): void {
|
|
298
|
+
this.state.pressability.reset();
|
|
96
299
|
}
|
|
97
300
|
}
|
|
98
301
|
|
|
99
|
-
|
|
302
|
+
TouchableNativeFeedback.displayName = 'TouchableNativeFeedback';
|
|
303
|
+
|
|
304
|
+
export default TouchableNativeFeedback;
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
12
|
-
import
|
|
12
|
+
import type {TouchableWithoutFeedbackProps} from './TouchableWithoutFeedback';
|
|
13
13
|
|
|
14
14
|
import Animated from '../../Animated/Animated';
|
|
15
15
|
import Easing from '../../Animated/Easing';
|
|
@@ -21,29 +21,71 @@ import flattenStyle from '../../StyleSheet/flattenStyle';
|
|
|
21
21
|
import Platform from '../../Utilities/Platform';
|
|
22
22
|
import * as React from 'react';
|
|
23
23
|
|
|
24
|
-
type TVProps = $ReadOnly<{
|
|
24
|
+
export type TVProps = $ReadOnly<{
|
|
25
|
+
/**
|
|
26
|
+
* *(Apple TV only)* TV preferred focus (see documentation for the View component).
|
|
27
|
+
*
|
|
28
|
+
* @platform ios
|
|
29
|
+
*/
|
|
25
30
|
hasTVPreferredFocus?: ?boolean,
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Designates the next view to receive focus when the user navigates down. See the Android documentation.
|
|
34
|
+
*
|
|
35
|
+
* @platform android
|
|
36
|
+
*/
|
|
26
37
|
nextFocusDown?: ?number,
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Designates the next view to receive focus when the user navigates forward. See the Android documentation.
|
|
41
|
+
*
|
|
42
|
+
* @platform android
|
|
43
|
+
*/
|
|
27
44
|
nextFocusForward?: ?number,
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Designates the next view to receive focus when the user navigates left. See the Android documentation.
|
|
48
|
+
*
|
|
49
|
+
* @platform android
|
|
50
|
+
*/
|
|
28
51
|
nextFocusLeft?: ?number,
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Designates the next view to receive focus when the user navigates right. See the Android documentation.
|
|
55
|
+
*
|
|
56
|
+
* @platform android
|
|
57
|
+
*/
|
|
29
58
|
nextFocusRight?: ?number,
|
|
30
|
-
nextFocusUp?: ?number,
|
|
31
|
-
|}>;
|
|
32
59
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
60
|
+
/**
|
|
61
|
+
* Designates the next view to receive focus when the user navigates up. See the Android documentation.
|
|
62
|
+
*
|
|
63
|
+
* @platform android
|
|
64
|
+
*/
|
|
65
|
+
nextFocusUp?: ?number,
|
|
66
|
+
}>;
|
|
36
67
|
|
|
68
|
+
type TouchableOpacityBaseProps = $ReadOnly<{
|
|
69
|
+
/**
|
|
70
|
+
* Determines what the opacity of the wrapped view should be when touch is active.
|
|
71
|
+
* Defaults to 0.2
|
|
72
|
+
*/
|
|
37
73
|
activeOpacity?: ?number,
|
|
38
74
|
style?: ?ViewStyleProp,
|
|
39
75
|
|
|
40
76
|
hostRef?: ?React.RefSetter<React.ElementRef<typeof Animated.View>>,
|
|
41
|
-
|
|
77
|
+
}>;
|
|
78
|
+
|
|
79
|
+
export type TouchableOpacityProps = $ReadOnly<{
|
|
80
|
+
...TouchableWithoutFeedbackProps,
|
|
81
|
+
...TVProps,
|
|
82
|
+
...TouchableOpacityBaseProps,
|
|
83
|
+
}>;
|
|
42
84
|
|
|
43
|
-
type State = $ReadOnly<{
|
|
85
|
+
type State = $ReadOnly<{
|
|
44
86
|
anim: Animated.Value,
|
|
45
87
|
pressability: Pressability,
|
|
46
|
-
|
|
88
|
+
}>;
|
|
47
89
|
|
|
48
90
|
/**
|
|
49
91
|
* A wrapper for making views respond properly to touches.
|
|
@@ -129,7 +171,7 @@ type State = $ReadOnly<{|
|
|
|
129
171
|
* ```
|
|
130
172
|
*
|
|
131
173
|
*/
|
|
132
|
-
class TouchableOpacity extends React.Component<
|
|
174
|
+
class TouchableOpacity extends React.Component<TouchableOpacityProps, State> {
|
|
133
175
|
state: State = {
|
|
134
176
|
anim: new Animated.Value(this._getChildStyleOpacityWithDefault()),
|
|
135
177
|
pressability: new Pressability(this._createPressabilityConfig()),
|
|
@@ -302,7 +344,7 @@ class TouchableOpacity extends React.Component<Props, State> {
|
|
|
302
344
|
);
|
|
303
345
|
}
|
|
304
346
|
|
|
305
|
-
componentDidUpdate(prevProps:
|
|
347
|
+
componentDidUpdate(prevProps: TouchableOpacityProps, prevState: State) {
|
|
306
348
|
this.state.pressability.configure(this._createPressabilityConfig());
|
|
307
349
|
if (
|
|
308
350
|
this.props.disabled !== prevProps.disabled ||
|
|
@@ -328,12 +370,12 @@ class TouchableOpacity extends React.Component<Props, State> {
|
|
|
328
370
|
}
|
|
329
371
|
|
|
330
372
|
const Touchable: component(
|
|
331
|
-
ref
|
|
332
|
-
...props:
|
|
373
|
+
ref?: React.RefSetter<React.ElementRef<typeof Animated.View>>,
|
|
374
|
+
...props: TouchableOpacityProps
|
|
333
375
|
) = React.forwardRef((props, ref) => (
|
|
334
376
|
<TouchableOpacity {...props} hostRef={ref} />
|
|
335
377
|
));
|
|
336
378
|
|
|
337
379
|
Touchable.displayName = 'TouchableOpacity';
|
|
338
380
|
|
|
339
|
-
|
|
381
|
+
export default Touchable;
|
|
@@ -8,81 +8,125 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import type {
|
|
12
|
-
AccessibilityActionEvent,
|
|
13
|
-
AccessibilityActionInfo,
|
|
14
|
-
AccessibilityRole,
|
|
15
|
-
AccessibilityState,
|
|
16
|
-
AccessibilityValue,
|
|
17
|
-
} from '../../Components/View/ViewAccessibility';
|
|
11
|
+
import type {AccessibilityActionEvent} from '../../Components/View/ViewAccessibility';
|
|
18
12
|
import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
19
13
|
import type {
|
|
20
14
|
BlurEvent,
|
|
21
15
|
FocusEvent,
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
GestureResponderEvent,
|
|
17
|
+
LayoutChangeEvent,
|
|
24
18
|
} from '../../Types/CoreEventTypes';
|
|
25
19
|
|
|
26
20
|
import View from '../../Components/View/View';
|
|
21
|
+
import {type AccessibilityProps} from '../../Components/View/ViewAccessibility';
|
|
27
22
|
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
28
23
|
import usePressability from '../../Pressability/usePressability';
|
|
24
|
+
import {type ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
29
25
|
import * as React from 'react';
|
|
30
26
|
import {useMemo} from 'react';
|
|
31
27
|
|
|
32
|
-
type
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
accessibilityHint?: ?Stringish,
|
|
36
|
-
accessibilityLanguage?: ?Stringish,
|
|
37
|
-
accessibilityIgnoresInvertColors?: ?boolean,
|
|
38
|
-
accessibilityLabel?: ?Stringish,
|
|
39
|
-
accessibilityLiveRegion?: ?('none' | 'polite' | 'assertive'),
|
|
40
|
-
accessibilityRole?: ?AccessibilityRole,
|
|
41
|
-
accessibilityState?: ?AccessibilityState,
|
|
42
|
-
accessibilityValue?: ?AccessibilityValue,
|
|
43
|
-
'aria-valuemax'?: AccessibilityValue['max'],
|
|
44
|
-
'aria-valuemin'?: AccessibilityValue['min'],
|
|
45
|
-
'aria-valuenow'?: AccessibilityValue['now'],
|
|
46
|
-
'aria-valuetext'?: AccessibilityValue['text'],
|
|
47
|
-
accessibilityViewIsModal?: ?boolean,
|
|
48
|
-
'aria-modal'?: ?boolean,
|
|
49
|
-
accessible?: ?boolean,
|
|
28
|
+
export type TouchableWithoutFeedbackPropsIOS = {};
|
|
29
|
+
|
|
30
|
+
export type TouchableWithoutFeedbackPropsAndroid = {
|
|
50
31
|
/**
|
|
51
|
-
*
|
|
32
|
+
* If true, doesn't play a system sound on touch.
|
|
52
33
|
*
|
|
53
|
-
*
|
|
34
|
+
* @platform android
|
|
54
35
|
*/
|
|
55
|
-
'aria-busy'?: ?boolean,
|
|
56
|
-
'aria-checked'?: ?boolean | 'mixed',
|
|
57
|
-
'aria-disabled'?: ?boolean,
|
|
58
|
-
'aria-expanded'?: ?boolean,
|
|
59
|
-
'aria-selected'?: ?boolean,
|
|
60
|
-
'aria-hidden'?: ?boolean,
|
|
61
|
-
'aria-live'?: ?('polite' | 'assertive' | 'off'),
|
|
62
|
-
'aria-label'?: ?Stringish,
|
|
63
|
-
children?: ?React.Node,
|
|
64
|
-
delayLongPress?: ?number,
|
|
65
|
-
delayPressIn?: ?number,
|
|
66
|
-
delayPressOut?: ?number,
|
|
67
|
-
disabled?: ?boolean,
|
|
68
|
-
focusable?: ?boolean,
|
|
69
|
-
hitSlop?: ?EdgeInsetsOrSizeProp,
|
|
70
|
-
id?: string,
|
|
71
|
-
importantForAccessibility?: ?('auto' | 'yes' | 'no' | 'no-hide-descendants'),
|
|
72
|
-
nativeID?: ?string,
|
|
73
|
-
onAccessibilityAction?: ?(event: AccessibilityActionEvent) => mixed,
|
|
74
|
-
onBlur?: ?(event: BlurEvent) => mixed,
|
|
75
|
-
onFocus?: ?(event: FocusEvent) => mixed,
|
|
76
|
-
onLayout?: ?(event: LayoutEvent) => mixed,
|
|
77
|
-
onLongPress?: ?(event: PressEvent) => mixed,
|
|
78
|
-
onPress?: ?(event: PressEvent) => mixed,
|
|
79
|
-
onPressIn?: ?(event: PressEvent) => mixed,
|
|
80
|
-
onPressOut?: ?(event: PressEvent) => mixed,
|
|
81
|
-
pressRetentionOffset?: ?EdgeInsetsOrSizeProp,
|
|
82
|
-
rejectResponderTermination?: ?boolean,
|
|
83
|
-
testID?: ?string,
|
|
84
36
|
touchSoundDisabled?: ?boolean,
|
|
85
|
-
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export type TouchableWithoutFeedbackProps = $ReadOnly<
|
|
40
|
+
{
|
|
41
|
+
children?: ?React.Node,
|
|
42
|
+
/**
|
|
43
|
+
* Delay in ms, from onPressIn, before onLongPress is called.
|
|
44
|
+
*/
|
|
45
|
+
delayLongPress?: ?number,
|
|
46
|
+
/**
|
|
47
|
+
* Delay in ms, from the start of the touch, before onPressIn is called.
|
|
48
|
+
*/
|
|
49
|
+
delayPressIn?: ?number,
|
|
50
|
+
/**
|
|
51
|
+
* Delay in ms, from the release of the touch, before onPressOut is called.
|
|
52
|
+
*/
|
|
53
|
+
delayPressOut?: ?number,
|
|
54
|
+
/**
|
|
55
|
+
* If true, disable all interactions for this component.
|
|
56
|
+
*/
|
|
57
|
+
disabled?: ?boolean,
|
|
58
|
+
/**
|
|
59
|
+
* Whether this View should be focusable with a non-touch input device,
|
|
60
|
+
* eg. receive focus with a hardware keyboard / TV remote.
|
|
61
|
+
*/
|
|
62
|
+
focusable?: ?boolean,
|
|
63
|
+
/**
|
|
64
|
+
* This defines how far your touch can start away from the button.
|
|
65
|
+
* This is added to pressRetentionOffset when moving off of the button.
|
|
66
|
+
* NOTE The touch area never extends past the parent view bounds and
|
|
67
|
+
* the Z-index of sibling views always takes precedence if a touch hits
|
|
68
|
+
* two overlapping views.
|
|
69
|
+
*/
|
|
70
|
+
hitSlop?: ?EdgeInsetsOrSizeProp,
|
|
71
|
+
/**
|
|
72
|
+
* Used to reference react managed views from native code.
|
|
73
|
+
*/
|
|
74
|
+
id?: string,
|
|
75
|
+
importantForAccessibility?: ?(
|
|
76
|
+
| 'auto'
|
|
77
|
+
| 'yes'
|
|
78
|
+
| 'no'
|
|
79
|
+
| 'no-hide-descendants'
|
|
80
|
+
),
|
|
81
|
+
nativeID?: ?string,
|
|
82
|
+
onAccessibilityAction?: ?(event: AccessibilityActionEvent) => mixed,
|
|
83
|
+
/**
|
|
84
|
+
* When `accessible` is true (which is the default) this may be called when
|
|
85
|
+
* the OS-specific concept of "blur" occurs, meaning the element lost focus.
|
|
86
|
+
* Some platforms may not have the concept of blur.
|
|
87
|
+
*/
|
|
88
|
+
onBlur?: ?(event: BlurEvent) => mixed,
|
|
89
|
+
/**
|
|
90
|
+
* When `accessible` is true (which is the default) this may be called when
|
|
91
|
+
* the OS-specific concept of "focus" occurs. Some platforms may not have
|
|
92
|
+
* the concept of focus.
|
|
93
|
+
*/
|
|
94
|
+
onFocus?: ?(event: FocusEvent) => mixed,
|
|
95
|
+
/**
|
|
96
|
+
* Invoked on mount and layout changes with
|
|
97
|
+
* {nativeEvent: {layout: {x, y, width, height}}}
|
|
98
|
+
*/
|
|
99
|
+
onLayout?: ?(event: LayoutChangeEvent) => mixed,
|
|
100
|
+
onLongPress?: ?(event: GestureResponderEvent) => mixed,
|
|
101
|
+
/**
|
|
102
|
+
* Called when the touch is released,
|
|
103
|
+
* but not if cancelled (e.g. by a scroll that steals the responder lock).
|
|
104
|
+
*/
|
|
105
|
+
onPress?: ?(event: GestureResponderEvent) => mixed,
|
|
106
|
+
onPressIn?: ?(event: GestureResponderEvent) => mixed,
|
|
107
|
+
onPressOut?: ?(event: GestureResponderEvent) => mixed,
|
|
108
|
+
/**
|
|
109
|
+
* When the scroll view is disabled, this defines how far your
|
|
110
|
+
* touch may move off of the button, before deactivating the button.
|
|
111
|
+
* Once deactivated, try moving it back and you'll see that the button
|
|
112
|
+
* is once again reactivated! Move it back and forth several times
|
|
113
|
+
* while the scroll view is disabled. Ensure you pass in a constant
|
|
114
|
+
* to reduce memory allocations.
|
|
115
|
+
*/
|
|
116
|
+
pressRetentionOffset?: ?EdgeInsetsOrSizeProp,
|
|
117
|
+
rejectResponderTermination?: ?boolean,
|
|
118
|
+
/**
|
|
119
|
+
* Used to locate this view in end-to-end tests.
|
|
120
|
+
*/
|
|
121
|
+
testID?: ?string,
|
|
122
|
+
/**
|
|
123
|
+
* //FIXME: not in doc but available in examples
|
|
124
|
+
*/
|
|
125
|
+
style?: ?ViewStyleProp,
|
|
126
|
+
} & TouchableWithoutFeedbackPropsAndroid &
|
|
127
|
+
TouchableWithoutFeedbackPropsIOS &
|
|
128
|
+
AccessibilityProps,
|
|
129
|
+
>;
|
|
86
130
|
|
|
87
131
|
const PASSTHROUGH_PROPS = [
|
|
88
132
|
'accessibilityActions',
|
|
@@ -110,7 +154,16 @@ const PASSTHROUGH_PROPS = [
|
|
|
110
154
|
'testID',
|
|
111
155
|
];
|
|
112
156
|
|
|
113
|
-
|
|
157
|
+
/**
|
|
158
|
+
* Do not use unless you have a very good reason.
|
|
159
|
+
* All the elements that respond to press should have a visual feedback when touched.
|
|
160
|
+
* This is one of the primary reason a "web" app doesn't feel "native".
|
|
161
|
+
*
|
|
162
|
+
* @see https://reactnative.dev/docs/touchablewithoutfeedback
|
|
163
|
+
*/
|
|
164
|
+
export default function TouchableWithoutFeedback(
|
|
165
|
+
props: TouchableWithoutFeedbackProps,
|
|
166
|
+
): React.Node {
|
|
114
167
|
const {
|
|
115
168
|
disabled,
|
|
116
169
|
rejectResponderTermination,
|
|
@@ -231,4 +284,4 @@ module.exports = function TouchableWithoutFeedback(props: Props): React.Node {
|
|
|
231
284
|
|
|
232
285
|
// $FlowFixMe[incompatible-call]
|
|
233
286
|
return React.cloneElement(element, elementProps, ...children);
|
|
234
|
-
}
|
|
287
|
+
}
|
|
@@ -8,6 +8,6 @@
|
|
|
8
8
|
* @flow strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
export * from '../../../src/private/
|
|
12
|
-
import UnimplementedNativeViewNativeComponent from '../../../src/private/
|
|
11
|
+
export * from '../../../src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent';
|
|
12
|
+
import UnimplementedNativeViewNativeComponent from '../../../src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent';
|
|
13
13
|
export default UnimplementedNativeViewNativeComponent;
|