@office-iss/react-native-win32 0.80.0 → 0.81.0-preview.3
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 +10 -4
- package/CHANGELOG.json +142 -13
- package/CHANGELOG.md +57 -8
- package/IntegrationTests/AccessibilityManagerTest.js +1 -1
- package/IntegrationTests/AppEventsTest.js +1 -1
- package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
- package/IntegrationTests/ImageCachePolicyTest.js +2 -2
- package/IntegrationTests/ImageSnapshotTest.js +1 -1
- package/IntegrationTests/IntegrationTestHarnessTest.js +1 -1
- package/IntegrationTests/IntegrationTestsApp.js +2 -1
- package/IntegrationTests/LayoutEventsTest.js +1 -1
- package/IntegrationTests/LoggingTestModule.js +16 -20
- package/IntegrationTests/PromiseTest.js +1 -1
- package/IntegrationTests/SimpleSnapshotTest.js +1 -1
- package/IntegrationTests/SyncMethodTest.js +1 -1
- package/IntegrationTests/TimersTest.js +2 -1
- package/IntegrationTests/WebSocketTest.js +2 -1
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.js +3 -3
- package/Libraries/Alert/Alert.win32.js +1 -1
- package/Libraries/Alert/NativeAlertManager.js +1 -0
- package/Libraries/Alert/RCTAlertManager.android.js +19 -13
- package/Libraries/Alert/RCTAlertManager.ios.js +10 -12
- package/Libraries/Alert/RCTAlertManager.js +1 -3
- package/Libraries/Alert/RCTAlertManager.js.flow +5 -7
- package/Libraries/Animated/Animated.js +0 -1
- package/Libraries/Animated/Animated.js.flow +0 -1
- package/Libraries/Animated/AnimatedEvent.js +4 -3
- package/Libraries/Animated/AnimatedExports.js +0 -1
- package/Libraries/Animated/AnimatedExports.js.flow +5 -1
- package/Libraries/Animated/AnimatedImplementation.js +44 -44
- package/Libraries/Animated/AnimatedMock.js +2 -2
- package/Libraries/Animated/Easing.js +1 -1
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/SpringConfig.js +1 -1
- package/Libraries/Animated/animations/Animation.js +10 -2
- package/Libraries/Animated/components/AnimatedScrollView.js +58 -56
- package/Libraries/Animated/components/AnimatedText.js +2 -5
- package/Libraries/Animated/components/AnimatedView.js +2 -1
- package/Libraries/Animated/createAnimatedComponent.js +39 -37
- package/Libraries/Animated/nodes/AnimatedObject.js +2 -3
- package/Libraries/Animated/nodes/AnimatedProps.js +31 -4
- package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +6 -1
- package/Libraries/AppState/NativeAppState.js +1 -0
- package/Libraries/BatchedBridge/BatchedBridge.js +1 -1
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/BlobManager.js +4 -0
- package/Libraries/Blob/NativeBlobModule.js +1 -0
- package/Libraries/Blob/NativeFileReaderModule.js +1 -0
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/Blob/URLSearchParams.js +5 -1
- package/Libraries/Blob/URLSearchParams.js.flow +2 -1
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +1 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -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 +1 -1
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +1 -1
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +19 -19
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
- package/Libraries/Components/Button.js +10 -7
- package/Libraries/Components/Button.win32.js +10 -7
- package/Libraries/Components/Clipboard/Clipboard.js +1 -1
- package/Libraries/Components/Clipboard/NativeClipboard.js +1 -2
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -3
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -4
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +1 -1
- package/Libraries/Components/Keyboard/Keyboard.js +1 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +3 -2
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -2
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +0 -1
- package/Libraries/Components/Pressable/Pressable.js +17 -8
- package/Libraries/Components/Pressable/Pressable.win32.js +17 -14
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +14 -13
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -3
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -3
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -1
- package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -3
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +9 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +3 -2
- package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +3 -2
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -3
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +33 -6
- package/Libraries/Components/ScrollView/ScrollView.js +25 -15
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -1
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +19 -6
- package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
- package/Libraries/Components/Sound/NativeSoundManager.js +1 -2
- package/Libraries/Components/Sound/SoundManager.js +1 -1
- package/Libraries/Components/StaticRenderer.js +1 -1
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -2
- package/Libraries/Components/StatusBar/StatusBar.d.ts +4 -0
- package/Libraries/Components/StatusBar/StatusBar.js +6 -1
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -3
- package/Libraries/Components/Switch/Switch.js +10 -3
- package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -3
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -24
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -3
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +9 -3
- package/Libraries/Components/TextInput/TextInput.flow.js +13 -15
- package/Libraries/Components/TextInput/TextInput.flow.win32.js +12 -14
- package/Libraries/Components/TextInput/TextInput.js +42 -39
- package/Libraries/Components/TextInput/TextInput.win32.js +69 -38
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/TextInput/TextInputState.win32.js +1 -1
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -2
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +1 -1
- package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Position.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +17 -3
- package/Libraries/Components/Touchable/Touchable.win32.js +17 -3
- package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
- package/Libraries/Components/Touchable/TouchableHighlight.js +14 -5
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +5 -3
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +5 -2
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +1 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +10 -5
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -3
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +7 -16
- package/Libraries/Components/View/View.js +114 -29
- package/Libraries/Components/View/View.win32.js +17 -3
- package/Libraries/Components/View/ViewAccessibility.d.ts +1 -0
- package/Libraries/Components/View/ViewAccessibility.js +1 -8
- package/Libraries/Components/View/ViewAccessibility.win32.js +1 -8
- package/Libraries/Components/View/ViewPropTypes.d.ts +22 -2
- package/Libraries/Components/View/ViewPropTypes.js +9 -1
- package/Libraries/Components/View/ViewPropTypes.win32.js +9 -1
- package/Libraries/Core/Devtools/getDevServer.js +1 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.js +49 -7
- package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +49 -7
- package/Libraries/Core/Devtools/openFileInEditor.js +1 -1
- package/Libraries/Core/Devtools/openURLInBrowser.js +1 -1
- package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
- package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +27 -16
- package/Libraries/Core/InitializeCore.js +2 -23
- package/Libraries/Core/NativeExceptionsManager.js +1 -0
- package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +3 -2
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/Timers/NativeTiming.js +1 -0
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/Timers/queueMicrotask.js +1 -1
- package/Libraries/Core/checkNativeVersion.js +1 -0
- package/Libraries/Core/setUpDeveloperTools.js +13 -11
- package/Libraries/Core/setUpReactDevTools.js +21 -4
- package/Libraries/Debugging/DebuggingOverlay.js +12 -14
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +0 -1
- package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +0 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/Image/AssetRegistry.js +4 -10
- package/Libraries/Image/Image.android.js +113 -107
- package/Libraries/Image/Image.ios.js +10 -2
- package/Libraries/Image/Image.win32.js +11 -3
- package/Libraries/Image/ImageAnalyticsTagContext.js +2 -2
- package/Libraries/Image/ImageInjection.js +1 -1
- package/Libraries/Image/ImageSource.d.ts +5 -0
- package/Libraries/Image/ImageViewNativeComponent.js +3 -3
- package/Libraries/Image/NativeImageEditor.js +1 -0
- package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
- package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
- package/Libraries/Image/NativeImageLoaderWin32.js +1 -0
- package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
- package/Libraries/Image/NativeImageStoreIOS.js +1 -0
- package/Libraries/Image/RelativeImageStub.js +2 -1
- package/Libraries/Image/TextInlineImageNativeComponent.js +4 -4
- package/Libraries/Image/resolveAssetSource.js +1 -1
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +64 -54
- package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
- package/Libraries/Interaction/TaskQueue.js +8 -9
- package/Libraries/Interaction/TouchHistoryMath.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -8
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Linking/NativeIntentAndroid.js +1 -0
- package/Libraries/Linking/NativeLinkingManager.js +1 -0
- package/Libraries/Lists/FlatList.d.ts +9 -5
- package/Libraries/Lists/FlatList.js +6 -7
- package/Libraries/Lists/SectionList.js +4 -4
- package/Libraries/Lists/SectionListModern.js +9 -3
- package/Libraries/Lists/VirtualizedList.js +3 -2
- package/Libraries/LogBox/Data/LogBoxData.js +7 -4
- package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
- package/Libraries/LogBox/LogBox.js +72 -99
- package/Libraries/LogBox/UI/LogBoxButton.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +2 -1
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.win32.js +3 -2
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -1
- package/Libraries/Modal/Modal.d.ts +8 -2
- package/Libraries/Modal/Modal.js +24 -3
- package/Libraries/Modal/NativeModalManager.js +1 -0
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +21 -18
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -17
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +8 -17
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
- package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
- package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
- package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
- package/Libraries/NativeModules/specs/NativeLogBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
- package/Libraries/Network/FormData.js +1 -1
- package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
- package/Libraries/Network/NativeNetworkingIOS.js +1 -0
- package/Libraries/Network/RCTNetworking.android.js +2 -2
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +1 -1
- package/Libraries/Network/RCTNetworking.win32.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +3 -3
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -3
- package/Libraries/Pressability/Pressability.js +1 -1
- package/Libraries/Pressability/Pressability.win32.js +1 -1
- package/Libraries/Promise.js +1 -1
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +3 -2
- package/Libraries/ReactNative/AppContainer-dev.js +4 -4
- package/Libraries/ReactNative/AppContainer-prod.js +0 -1
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +2 -13
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
- package/Libraries/ReactNative/NativeI18nManager.js +1 -0
- package/Libraries/ReactNative/NativeUIManager.js +1 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +81 -62
- package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +1 -1
- package/Libraries/ReactNative/RendererProxy.js +1 -1
- package/Libraries/ReactNative/RootTag.js +2 -2
- package/Libraries/ReactNative/renderApplication.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -1
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -1
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -36
- package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +261 -0
- package/Libraries/Settings/NativeSettingsManager.js +1 -0
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/Settings/Settings.js +1 -1
- package/Libraries/Settings/SettingsFallback.js +1 -1
- package/Libraries/Share/NativeShareModule.js +1 -0
- package/Libraries/Share/Share.js +1 -1
- package/Libraries/StyleSheet/EdgeInsetsPropType.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +1 -1
- package/Libraries/StyleSheet/PointPropType.js +1 -1
- package/Libraries/StyleSheet/Rect.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js +1 -0
- package/Libraries/StyleSheet/StyleSheetTypes.js +0 -1
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/processAspectRatio.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +1 -1
- package/Libraries/StyleSheet/processBoxShadow.js +0 -1
- package/Libraries/StyleSheet/processColor.js +1 -1
- package/Libraries/StyleSheet/processColorArray.js +1 -1
- package/Libraries/StyleSheet/processFilter.js +1 -2
- package/Libraries/StyleSheet/processFontVariant.js +1 -1
- package/Libraries/StyleSheet/processTransform.js +1 -1
- package/Libraries/StyleSheet/processTransformOrigin.js +1 -1
- package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
- package/Libraries/Text/Text.d.ts +7 -0
- package/Libraries/Text/Text.js +255 -246
- package/Libraries/Text/Text.win32.js +294 -285
- package/Libraries/Text/TextAncestor.js +3 -9
- package/Libraries/Text/TextAncestorContext.js +23 -0
- package/Libraries/Text/TextNativeComponent.js +4 -0
- package/Libraries/Text/TextNativeComponent.win32.js +4 -0
- package/Libraries/Text/TextProps.js +2 -5
- package/Libraries/Text/TextProps.win32.js +2 -7
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CodegenTypesNamespace.js +2 -1
- package/Libraries/Types/CoreEventTypes.d.ts +4 -0
- package/Libraries/Types/ReactDevToolsTypes.js +0 -1
- package/Libraries/Utilities/Appearance.js +1 -1
- package/Libraries/Utilities/BackHandler.js.flow +1 -1
- package/Libraries/Utilities/DevLoadingView.js +1 -1
- package/Libraries/Utilities/DeviceInfo.js +1 -1
- package/Libraries/Utilities/Dimensions.js +1 -1
- package/Libraries/Utilities/Dimensions.win32.js +1 -1
- package/Libraries/Utilities/HMRClient.js +13 -3
- package/Libraries/Utilities/HMRClientProdShim.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +1 -0
- package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -2
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -0
- package/Libraries/Utilities/PerformanceLoggerContext.js +2 -2
- package/Libraries/Utilities/PixelRatio.js +1 -1
- package/Libraries/Utilities/Platform.android.js +2 -5
- package/Libraries/Utilities/Platform.ios.js +2 -5
- package/Libraries/Utilities/Platform.js +1 -1
- package/Libraries/Utilities/Platform.js.flow +2 -2
- package/Libraries/Utilities/Platform.win32.js +2 -5
- package/Libraries/Utilities/PlatformTypes.js +2 -2
- package/Libraries/Utilities/RCTLog.js +1 -1
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +5 -3
- package/Libraries/Utilities/codegenNativeComponent.js +4 -4
- package/Libraries/Utilities/createPerformanceLogger.js +27 -20
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
- package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
- package/Libraries/Utilities/differ/deepDiffer.js +1 -1
- package/Libraries/Utilities/differ/insetsDiffer.js +1 -1
- package/Libraries/Utilities/differ/matricesDiffer.js +1 -1
- package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/mapWithSeparator.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +1 -1
- package/Libraries/Utilities/stringifyViewConfig.js +1 -1
- package/Libraries/Utilities/useColorScheme.js +1 -1
- package/Libraries/Utilities/useWindowDimensions.js +1 -1
- package/Libraries/Utilities/warnOnce.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +1 -0
- package/Libraries/Vibration/Vibration.js +1 -2
- package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
- package/Libraries/WebSocket/WebSocket.js +1 -1
- package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
- package/Libraries/promiseRejectionTrackingOptions.js +1 -1
- package/Libraries/vendor/core/ErrorUtils.js +1 -1
- package/Libraries/vendor/emitter/EventEmitter.js +6 -6
- package/index.js +22 -2
- package/index.win32.js +15 -2
- package/interface.js +1 -1
- package/jest/MockNativeMethods.js +9 -3
- package/jest/RefreshControlMock.js +32 -0
- package/jest/assetFileTransformer.js +1 -0
- package/jest/local-setup.js +4 -3
- package/jest/mock.js +39 -0
- package/jest/mockComponent.js +47 -17
- package/jest/mockNativeComponent.js +26 -15
- package/jest/mocks/AccessibilityInfo.js +62 -0
- package/jest/mocks/ActivityIndicator.js +23 -0
- package/jest/mocks/AppState.js +19 -0
- package/{flow/Stringish.js → jest/mocks/Clipboard.js} +6 -4
- package/jest/mocks/Image.js +23 -0
- package/jest/mocks/InitializeCore.js +9 -0
- package/jest/mocks/Linking.js +28 -0
- package/jest/mocks/Modal.js +33 -0
- package/jest/mocks/NativeComponentRegistry.js +30 -0
- package/jest/mocks/NativeModules.js +239 -0
- package/jest/mocks/RefreshControl.js +31 -0
- package/jest/mocks/RendererProxy.js +45 -0
- package/jest/mocks/ScrollView.js +58 -0
- package/jest/mocks/Text.js +27 -0
- package/jest/mocks/TextInput.js +32 -0
- package/jest/mocks/UIManager.js +60 -0
- package/jest/mocks/Vibration.js +16 -0
- package/jest/mocks/View.js +27 -0
- package/jest/mocks/ViewNativeComponent.js +23 -0
- package/jest/mocks/requireNativeComponent.js +22 -0
- package/{Libraries/Utilities/infoLog.js → jest/mocks/useColorScheme.js} +7 -9
- package/jest/react-native-env.js +1 -0
- package/jest/renderer.js +1 -2
- package/jest/resolver.js +1 -0
- package/jest/setup.js +64 -445
- package/overrides.json +49 -42
- package/package.json +20 -20
- package/src/private/animated/NativeAnimatedHelper.js +8 -1
- package/src/private/animated/NativeAnimatedHelper.win32.js +8 -1
- package/src/private/animated/createAnimatedPropsHook.js +14 -4
- package/src/private/animated/createAnimatedPropsMemoHook.js +2 -3
- package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +0 -1
- package/src/private/components/scrollview/HScrollViewNativeComponents.js +0 -1
- package/src/private/components/scrollview/VScrollViewNativeComponents.js +0 -1
- package/src/private/components/virtualview/VirtualView.js +145 -0
- package/src/private/components/virtualview/VirtualViewNativeComponent.js +90 -0
- package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
- package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +1 -1
- package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +0 -1
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +8 -9
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +12 -15
- package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.win32.js +8 -9
- package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +0 -1
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +0 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +88 -8
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -3
- package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
- package/src/private/setup/setUpPerformanceObserver.js +7 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +8 -5
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +10 -7
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +5 -4
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +7 -4
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +10 -7
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +9 -6
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +15 -6
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +9 -6
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +5 -5
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +4 -4
- package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +1 -0
- package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +9 -6
- package/src/private/styles/composeStyles.js +5 -12
- package/src/private/types/HostInstance.js +1 -1
- package/src/private/webapis/dom/events/Event.js +3 -0
- package/src/private/webapis/dom/events/EventTarget.js +3 -0
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +1 -1
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +7 -24
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +4 -2
- package/src/private/webapis/dom/nodes/ReadOnlyText.js +1 -1
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +1 -1
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/internals/Traversal.js +1 -1
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +38 -0
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +4 -1
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +4 -1
- package/src/private/webapis/errors/DOMException.js +166 -0
- package/src/private/webapis/geometry/DOMRect.js +5 -0
- package/src/private/webapis/geometry/DOMRectList.js +4 -1
- package/src/private/webapis/geometry/DOMRectReadOnly.js +6 -0
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +4 -2
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +15 -7
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +3 -0
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +83 -18
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +12 -0
- package/src/private/webapis/mutationobserver/MutationObserver.js +13 -38
- package/src/private/webapis/mutationobserver/MutationRecord.js +3 -0
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +7 -29
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +1 -4
- package/src/private/webapis/performance/EventTiming.js +1 -1
- package/src/private/webapis/performance/LongTasks.js +1 -1
- package/src/private/webapis/performance/MemoryInfo.js +4 -1
- package/src/private/webapis/performance/Performance.js +20 -9
- package/src/private/webapis/performance/PerformanceEntry.js +5 -1
- package/src/private/webapis/performance/PerformanceObserver.js +32 -28
- package/src/private/webapis/performance/ReactNativeStartupTiming.js +4 -1
- package/src/private/webapis/performance/ResourceTiming.js +108 -0
- package/src/private/webapis/performance/UserTiming.js +1 -1
- package/src/private/webapis/performance/internals/RawPerformanceEntry.js +50 -33
- package/src/private/webapis/performance/internals/Utilities.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
- package/src/private/webapis/structuredClone/structuredClone.js +233 -0
- package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
- package/src/private/webapis/webidl/PlatformObjects.js +59 -0
- package/src-win/Libraries/Components/View/ViewAccessibility.d.ts +1 -0
- package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +22 -2
- package/src-win/Libraries/Text/Text.d.ts +7 -0
- package/types/modules/Devtools.d.ts +23 -9
- package/Libraries/BugReporting/BugReporting.js +0 -140
- package/Libraries/BugReporting/NativeBugReporting.js +0 -13
- package/Libraries/BugReporting/dumpReactTree.js +0 -151
- package/Libraries/BugReporting/getReactData.js +0 -187
- package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
- package/flow/HermesInternalType.js +0 -114
- package/flow/console.js +0 -49
- package/flow/global.js +0 -88
- package/jest/mockModal.js +0 -32
- package/jest/mockScrollView.js +0 -35
- package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +0 -20
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
12
12
|
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
13
|
-
import type {
|
|
13
|
+
import type {
|
|
14
|
+
BlurEvent,
|
|
15
|
+
FocusEvent,
|
|
16
|
+
GestureResponderEvent,
|
|
17
|
+
} from '../../Types/CoreEventTypes';
|
|
14
18
|
|
|
15
19
|
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
16
20
|
import UIManager from '../../ReactNative/UIManager';
|
|
@@ -589,7 +593,7 @@ const TouchableMixinImpl = {
|
|
|
589
593
|
*/
|
|
590
594
|
/* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
|
|
591
595
|
* Flow's LTI update could not be added via codemod */
|
|
592
|
-
touchableHandleFocus: function (e:
|
|
596
|
+
touchableHandleFocus: function (e: FocusEvent) {
|
|
593
597
|
this.props.onFocus && this.props.onFocus(e);
|
|
594
598
|
},
|
|
595
599
|
|
|
@@ -603,7 +607,7 @@ const TouchableMixinImpl = {
|
|
|
603
607
|
*/
|
|
604
608
|
/* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
|
|
605
609
|
* Flow's LTI update could not be added via codemod */
|
|
606
|
-
touchableHandleBlur: function (e:
|
|
610
|
+
touchableHandleBlur: function (e: BlurEvent) {
|
|
607
611
|
this.props.onBlur && this.props.onBlur(e);
|
|
608
612
|
},
|
|
609
613
|
|
|
@@ -869,11 +873,15 @@ const TouchableMixinImpl = {
|
|
|
869
873
|
curState === States.NOT_RESPONDER &&
|
|
870
874
|
nextState === States.RESPONDER_INACTIVE_PRESS_IN;
|
|
871
875
|
|
|
876
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
877
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
872
878
|
const isActiveTransition = !IsActive[curState] && IsActive[nextState];
|
|
873
879
|
if (isInitialTransition || isActiveTransition) {
|
|
874
880
|
this._remeasureMetricsOnActivation();
|
|
875
881
|
}
|
|
876
882
|
|
|
883
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
884
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
877
885
|
if (IsPressingIn[curState] && signal === Signals.LONG_PRESS_DETECTED) {
|
|
878
886
|
this.touchableHandleLongPress && this.touchableHandleLongPress(e);
|
|
879
887
|
}
|
|
@@ -884,13 +892,19 @@ const TouchableMixinImpl = {
|
|
|
884
892
|
this._endHighlight(e);
|
|
885
893
|
}
|
|
886
894
|
|
|
895
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
896
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
887
897
|
if (IsPressingIn[curState] && signal === Signals.RESPONDER_RELEASE) {
|
|
888
898
|
const hasLongPressHandler = !!this.props.onLongPress;
|
|
889
899
|
const pressIsLongButStillCallOnPress =
|
|
900
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
901
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
890
902
|
IsLongPressingIn[curState] && // We *are* long pressing.. // But either has no long handler
|
|
891
903
|
(!hasLongPressHandler || !this.touchableLongPressCancelsPress()); // or we're told to ignore it.
|
|
892
904
|
|
|
893
905
|
const shouldInvokePress =
|
|
906
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
907
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
894
908
|
!IsLongPressingIn[curState] || pressIsLongButStillCallOnPress;
|
|
895
909
|
if (shouldInvokePress && this.touchableHandlePress) {
|
|
896
910
|
if (!newIsHighlight && !curIsHighlight) {
|
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
12
12
|
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
13
|
-
import type {
|
|
13
|
+
import type {
|
|
14
|
+
BlurEvent,
|
|
15
|
+
FocusEvent,
|
|
16
|
+
GestureResponderEvent,
|
|
17
|
+
} from '../../Types/CoreEventTypes';
|
|
14
18
|
|
|
15
19
|
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
16
20
|
import UIManager from '../../ReactNative/UIManager';
|
|
@@ -594,7 +598,7 @@ const TouchableMixinImpl = {
|
|
|
594
598
|
*/
|
|
595
599
|
/* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
|
|
596
600
|
* Flow's LTI update could not be added via codemod */
|
|
597
|
-
touchableHandleFocus: function (e:
|
|
601
|
+
touchableHandleFocus: function (e: FocusEvent) {
|
|
598
602
|
this.props.onFocus && this.props.onFocus(e);
|
|
599
603
|
},
|
|
600
604
|
|
|
@@ -608,7 +612,7 @@ const TouchableMixinImpl = {
|
|
|
608
612
|
*/
|
|
609
613
|
/* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
|
|
610
614
|
* Flow's LTI update could not be added via codemod */
|
|
611
|
-
touchableHandleBlur: function (e:
|
|
615
|
+
touchableHandleBlur: function (e: BlurEvent) {
|
|
612
616
|
this.props.onBlur && this.props.onBlur(e);
|
|
613
617
|
},
|
|
614
618
|
|
|
@@ -874,11 +878,15 @@ const TouchableMixinImpl = {
|
|
|
874
878
|
curState === States.NOT_RESPONDER &&
|
|
875
879
|
nextState === States.RESPONDER_INACTIVE_PRESS_IN;
|
|
876
880
|
|
|
881
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
882
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
877
883
|
const isActiveTransition = !IsActive[curState] && IsActive[nextState];
|
|
878
884
|
if (isInitialTransition || isActiveTransition) {
|
|
879
885
|
this._remeasureMetricsOnActivation();
|
|
880
886
|
}
|
|
881
887
|
|
|
888
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
889
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
882
890
|
if (IsPressingIn[curState] && signal === Signals.LONG_PRESS_DETECTED) {
|
|
883
891
|
this.touchableHandleLongPress && this.touchableHandleLongPress(e);
|
|
884
892
|
}
|
|
@@ -889,13 +897,19 @@ const TouchableMixinImpl = {
|
|
|
889
897
|
this._endHighlight(e);
|
|
890
898
|
}
|
|
891
899
|
|
|
900
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
901
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
892
902
|
if (IsPressingIn[curState] && signal === Signals.RESPONDER_RELEASE) {
|
|
893
903
|
const hasLongPressHandler = !!this.props.onLongPress;
|
|
894
904
|
const pressIsLongButStillCallOnPress =
|
|
905
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
906
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
895
907
|
IsLongPressingIn[curState] && // We *are* long pressing.. // But either has no long handler
|
|
896
908
|
(!hasLongPressHandler || !this.touchableLongPressCancelsPress()); // or we're told to ignore it.
|
|
897
909
|
|
|
898
910
|
const shouldInvokePress =
|
|
911
|
+
/* $FlowFixMe[invalid-computed-prop] Natural Inference rollout. See
|
|
912
|
+
* https://fburl.com/workplace/6291gfvu */
|
|
899
913
|
!IsLongPressingIn[curState] || pressIsLongButStillCallOnPress;
|
|
900
914
|
if (shouldInvokePress && this.touchableHandlePress) {
|
|
901
915
|
if (!newIsHighlight && !curIsHighlight) {
|
|
@@ -221,9 +221,15 @@ class TouchableBounce extends React.Component<
|
|
|
221
221
|
}
|
|
222
222
|
}
|
|
223
223
|
|
|
224
|
-
export default (
|
|
225
|
-
|
|
226
|
-
|
|
224
|
+
export default (function TouchableBounceWrapper({
|
|
225
|
+
ref: hostRef,
|
|
226
|
+
...props
|
|
227
|
+
}: {
|
|
228
|
+
ref: React.RefSetter<mixed>,
|
|
229
|
+
...$ReadOnly<Omit<TouchableBounceProps, 'hostRef'>>,
|
|
230
|
+
}) {
|
|
231
|
+
return <TouchableBounce {...props} hostRef={hostRef} />;
|
|
232
|
+
} as component(
|
|
227
233
|
ref: React.RefSetter<mixed>,
|
|
228
234
|
...props: $ReadOnly<Omit<TouchableBounceProps, 'hostRef'>>
|
|
229
235
|
));
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
12
|
+
import type {AccessibilityState} from '../View/ViewAccessibility';
|
|
12
13
|
import type {TouchableWithoutFeedbackProps} from './TouchableWithoutFeedback';
|
|
13
14
|
|
|
14
15
|
import View from '../../Components/View/View';
|
|
@@ -19,6 +20,7 @@ import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
|
19
20
|
import StyleSheet, {type ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
20
21
|
import Platform from '../../Utilities/Platform';
|
|
21
22
|
import * as React from 'react';
|
|
23
|
+
import {cloneElement} from 'react';
|
|
22
24
|
|
|
23
25
|
type AndroidProps = $ReadOnly<{
|
|
24
26
|
nextFocusDown?: ?number,
|
|
@@ -29,6 +31,9 @@ type AndroidProps = $ReadOnly<{
|
|
|
29
31
|
}>;
|
|
30
32
|
|
|
31
33
|
type IOSProps = $ReadOnly<{
|
|
34
|
+
/**
|
|
35
|
+
* @deprecated Use `focusable` instead
|
|
36
|
+
*/
|
|
32
37
|
hasTVPreferredFocus?: ?boolean,
|
|
33
38
|
}>;
|
|
34
39
|
|
|
@@ -305,7 +310,7 @@ class TouchableHighlightImpl extends React.Component<
|
|
|
305
310
|
const {onBlur, onFocus, ...eventHandlersWithoutBlurAndFocus} =
|
|
306
311
|
this.state.pressability.getEventHandlers();
|
|
307
312
|
|
|
308
|
-
const accessibilityState =
|
|
313
|
+
const accessibilityState: ?AccessibilityState =
|
|
309
314
|
this.props.disabled != null
|
|
310
315
|
? {
|
|
311
316
|
...this.props.accessibilityState,
|
|
@@ -371,7 +376,7 @@ class TouchableHighlightImpl extends React.Component<
|
|
|
371
376
|
testID={this.props.testID}
|
|
372
377
|
ref={this.props.hostRef}
|
|
373
378
|
{...eventHandlersWithoutBlurAndFocus}>
|
|
374
|
-
{
|
|
379
|
+
{cloneElement(child, {
|
|
375
380
|
style: StyleSheet.compose(
|
|
376
381
|
child.props.style,
|
|
377
382
|
this.state.extraStyles?.child,
|
|
@@ -408,9 +413,13 @@ class TouchableHighlightImpl extends React.Component<
|
|
|
408
413
|
const TouchableHighlight: component(
|
|
409
414
|
ref?: React.RefSetter<React.ElementRef<typeof View>>,
|
|
410
415
|
...props: $ReadOnly<Omit<TouchableHighlightProps, 'hostRef'>>
|
|
411
|
-
) =
|
|
412
|
-
|
|
413
|
-
|
|
416
|
+
) = ({
|
|
417
|
+
ref: hostRef,
|
|
418
|
+
...props
|
|
419
|
+
}: {
|
|
420
|
+
ref?: React.RefSetter<React.ElementRef<typeof View>>,
|
|
421
|
+
...$ReadOnly<Omit<TouchableHighlightProps, 'hostRef'>>,
|
|
422
|
+
}) => <TouchableHighlightImpl {...props} hostRef={hostRef} />;
|
|
414
423
|
|
|
415
424
|
TouchableHighlight.displayName = 'TouchableHighlight';
|
|
416
425
|
|
|
@@ -22,12 +22,14 @@ import Platform from '../../Utilities/Platform';
|
|
|
22
22
|
import {Commands} from '../View/ViewNativeComponent';
|
|
23
23
|
import invariant from 'invariant';
|
|
24
24
|
import * as React from 'react';
|
|
25
|
+
import {cloneElement} from 'react';
|
|
25
26
|
|
|
26
|
-
type
|
|
27
|
+
type TouchableNativeFeedbackTVProps = {
|
|
27
28
|
/**
|
|
28
29
|
* *(Apple TV only)* TV preferred focus (see documentation for the View component).
|
|
29
30
|
*
|
|
30
31
|
* @platform ios
|
|
32
|
+
* @deprecated Use `focusable` instead
|
|
31
33
|
*/
|
|
32
34
|
hasTVPreferredFocus?: ?boolean,
|
|
33
35
|
|
|
@@ -69,7 +71,7 @@ type TVProps = {
|
|
|
69
71
|
|
|
70
72
|
export type TouchableNativeFeedbackProps = $ReadOnly<{
|
|
71
73
|
...TouchableWithoutFeedbackProps,
|
|
72
|
-
...
|
|
74
|
+
...TouchableNativeFeedbackTVProps,
|
|
73
75
|
/**
|
|
74
76
|
* Determines the type of background drawable that's going to be used to display feedback.
|
|
75
77
|
* It takes an object with type property and extra data depending on the type.
|
|
@@ -334,7 +336,7 @@ class TouchableNativeFeedback extends React.Component<
|
|
|
334
336
|
|
|
335
337
|
const accessibilityLabel =
|
|
336
338
|
this.props['aria-label'] ?? this.props.accessibilityLabel;
|
|
337
|
-
return
|
|
339
|
+
return cloneElement(
|
|
338
340
|
element,
|
|
339
341
|
{
|
|
340
342
|
...eventHandlersWithoutBlurAndFocus,
|
|
@@ -13,18 +13,21 @@ import type {TouchableWithoutFeedbackProps} from './TouchableWithoutFeedback';
|
|
|
13
13
|
import Pressability, {
|
|
14
14
|
type PressabilityConfig,
|
|
15
15
|
} from '../../Pressability/Pressability';
|
|
16
|
+
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
16
17
|
import {findHostInstance_DEPRECATED} from '../../ReactNative/RendererProxy';
|
|
17
18
|
import processColor from '../../StyleSheet/processColor';
|
|
18
19
|
import Platform from '../../Utilities/Platform';
|
|
19
20
|
import {Commands} from '../View/ViewNativeComponent';
|
|
20
21
|
import invariant from 'invariant';
|
|
21
22
|
import * as React from 'react';
|
|
23
|
+
import {cloneElement} from 'react';
|
|
22
24
|
|
|
23
|
-
type
|
|
25
|
+
type TouchableNativeFeedbackTVProps = {
|
|
24
26
|
/**
|
|
25
27
|
* *(Apple TV only)* TV preferred focus (see documentation for the View component).
|
|
26
28
|
*
|
|
27
29
|
* @platform ios
|
|
30
|
+
* @deprecated Use `focusable` instead
|
|
28
31
|
*/
|
|
29
32
|
hasTVPreferredFocus?: ?boolean,
|
|
30
33
|
|
|
@@ -66,7 +69,7 @@ type TVProps = {
|
|
|
66
69
|
|
|
67
70
|
export type TouchableNativeFeedbackProps = $ReadOnly<{
|
|
68
71
|
...TouchableWithoutFeedbackProps,
|
|
69
|
-
...
|
|
72
|
+
...TouchableNativeFeedbackTVProps,
|
|
70
73
|
/**
|
|
71
74
|
* Determines the type of background drawable that's going to be used to display feedback.
|
|
72
75
|
* It takes an object with type property and extra data depending on the type.
|
|
@@ -21,11 +21,12 @@ import flattenStyle from '../../StyleSheet/flattenStyle';
|
|
|
21
21
|
import Platform from '../../Utilities/Platform';
|
|
22
22
|
import * as React from 'react';
|
|
23
23
|
|
|
24
|
-
export type
|
|
24
|
+
export type TouchableOpacityTVProps = $ReadOnly<{
|
|
25
25
|
/**
|
|
26
26
|
* *(Apple TV only)* TV preferred focus (see documentation for the View component).
|
|
27
27
|
*
|
|
28
28
|
* @platform ios
|
|
29
|
+
* @deprecated Use `focusable` instead
|
|
29
30
|
*/
|
|
30
31
|
hasTVPreferredFocus?: ?boolean,
|
|
31
32
|
|
|
@@ -78,7 +79,7 @@ type TouchableOpacityBaseProps = $ReadOnly<{
|
|
|
78
79
|
|
|
79
80
|
export type TouchableOpacityProps = $ReadOnly<{
|
|
80
81
|
...TouchableWithoutFeedbackProps,
|
|
81
|
-
...
|
|
82
|
+
...TouchableOpacityTVProps,
|
|
82
83
|
...TouchableOpacityBaseProps,
|
|
83
84
|
}>;
|
|
84
85
|
|
|
@@ -379,9 +380,13 @@ class TouchableOpacity extends React.Component<
|
|
|
379
380
|
const Touchable: component(
|
|
380
381
|
ref?: React.RefSetter<React.ElementRef<typeof Animated.View>>,
|
|
381
382
|
...props: TouchableOpacityProps
|
|
382
|
-
) =
|
|
383
|
-
|
|
384
|
-
|
|
383
|
+
) = ({
|
|
384
|
+
ref,
|
|
385
|
+
...props
|
|
386
|
+
}: {
|
|
387
|
+
ref?: React.RefSetter<React.ElementRef<typeof Animated.View>>,
|
|
388
|
+
...TouchableOpacityProps,
|
|
389
|
+
}) => <TouchableOpacity {...props} hostRef={ref} />;
|
|
385
390
|
|
|
386
391
|
Touchable.displayName = 'TouchableOpacity';
|
|
387
392
|
|
|
@@ -23,7 +23,7 @@ import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
|
23
23
|
import usePressability from '../../Pressability/usePressability';
|
|
24
24
|
import {type ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
25
25
|
import * as React from 'react';
|
|
26
|
-
import {useMemo} from 'react';
|
|
26
|
+
import {cloneElement, useMemo} from 'react';
|
|
27
27
|
|
|
28
28
|
export type TouchableWithoutFeedbackPropsIOS = {};
|
|
29
29
|
|
|
@@ -152,7 +152,7 @@ const PASSTHROUGH_PROPS = [
|
|
|
152
152
|
'onFocus',
|
|
153
153
|
'onLayout',
|
|
154
154
|
'testID',
|
|
155
|
-
];
|
|
155
|
+
] as const;
|
|
156
156
|
|
|
157
157
|
/**
|
|
158
158
|
* Do not use unless you have a very good reason.
|
|
@@ -283,5 +283,5 @@ export default function TouchableWithoutFeedback(
|
|
|
283
283
|
}
|
|
284
284
|
|
|
285
285
|
// $FlowFixMe[incompatible-call]
|
|
286
|
-
return
|
|
286
|
+
return cloneElement(element, elementProps, ...children);
|
|
287
287
|
}
|
|
@@ -4,10 +4,9 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format
|
|
8
7
|
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
export * from '../../../src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent';
|
|
12
|
-
|
|
13
|
-
export default UnimplementedNativeViewNativeComponent;
|
|
12
|
+
export {default} from '../../../src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent';
|
|
@@ -4,14 +4,13 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format strict-local
|
|
8
7
|
* @flow strict-local
|
|
8
|
+
* @format strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {AnyAttributeType} from '../../Renderer/shims/ReactNativeTypes';
|
|
12
12
|
|
|
13
13
|
import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
|
|
14
|
-
import NativeReactNativeFeatureFlags from '../../../src/private/featureflags/specs/NativeReactNativeFeatureFlags';
|
|
15
14
|
import processAspectRatio from '../../StyleSheet/processAspectRatio';
|
|
16
15
|
import processBackgroundImage from '../../StyleSheet/processBackgroundImage';
|
|
17
16
|
import processBoxShadow from '../../StyleSheet/processBoxShadow';
|
|
@@ -123,13 +122,9 @@ const ReactNativeStyleAttributes: {[string]: AnyAttributeType, ...} = {
|
|
|
123
122
|
/**
|
|
124
123
|
* Filter
|
|
125
124
|
*/
|
|
126
|
-
filter:
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
? true
|
|
130
|
-
: {
|
|
131
|
-
process: processFilter,
|
|
132
|
-
},
|
|
125
|
+
filter: ReactNativeFeatureFlags.enableNativeCSSParsing()
|
|
126
|
+
? true
|
|
127
|
+
: {process: processFilter},
|
|
133
128
|
|
|
134
129
|
/**
|
|
135
130
|
* MixBlendMode
|
|
@@ -144,13 +139,9 @@ const ReactNativeStyleAttributes: {[string]: AnyAttributeType, ...} = {
|
|
|
144
139
|
/*
|
|
145
140
|
* BoxShadow
|
|
146
141
|
*/
|
|
147
|
-
boxShadow:
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
? true
|
|
151
|
-
: {
|
|
152
|
-
process: processBoxShadow,
|
|
153
|
-
},
|
|
142
|
+
boxShadow: ReactNativeFeatureFlags.enableNativeCSSParsing()
|
|
143
|
+
? true
|
|
144
|
+
: {process: processBoxShadow},
|
|
154
145
|
|
|
155
146
|
/**
|
|
156
147
|
* Linear Gradient
|
|
@@ -4,17 +4,17 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format
|
|
8
7
|
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {ViewProps} from './ViewPropTypes';
|
|
12
12
|
|
|
13
|
-
import
|
|
13
|
+
import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
|
|
14
|
+
import TextAncestorContext from '../../Text/TextAncestorContext';
|
|
14
15
|
import ViewNativeComponent from './ViewNativeComponent';
|
|
15
16
|
import * as React from 'react';
|
|
16
|
-
|
|
17
|
-
export type Props = ViewProps;
|
|
17
|
+
import {use} from 'react';
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* The most fundamental component for building a UI, View is a container that
|
|
@@ -23,12 +23,107 @@ export type Props = ViewProps;
|
|
|
23
23
|
*
|
|
24
24
|
* @see https://reactnative.dev/docs/view
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
export default component View(
|
|
27
27
|
ref?: React.RefSetter<React.ElementRef<typeof ViewNativeComponent>>,
|
|
28
28
|
...props: ViewProps
|
|
29
|
-
)
|
|
30
|
-
(
|
|
31
|
-
|
|
29
|
+
) {
|
|
30
|
+
const hasTextAncestor = use(TextAncestorContext);
|
|
31
|
+
|
|
32
|
+
let actualView;
|
|
33
|
+
if (ReactNativeFeatureFlags.reduceDefaultPropsInView()) {
|
|
34
|
+
const {
|
|
35
|
+
accessibilityState,
|
|
36
|
+
accessibilityValue,
|
|
37
|
+
'aria-busy': ariaBusy,
|
|
38
|
+
'aria-checked': ariaChecked,
|
|
39
|
+
'aria-disabled': ariaDisabled,
|
|
40
|
+
'aria-expanded': ariaExpanded,
|
|
41
|
+
'aria-hidden': ariaHidden,
|
|
42
|
+
'aria-label': ariaLabel,
|
|
43
|
+
'aria-labelledby': ariaLabelledBy,
|
|
44
|
+
'aria-live': ariaLive,
|
|
45
|
+
'aria-selected': ariaSelected,
|
|
46
|
+
'aria-valuemax': ariaValueMax,
|
|
47
|
+
'aria-valuemin': ariaValueMin,
|
|
48
|
+
'aria-valuenow': ariaValueNow,
|
|
49
|
+
'aria-valuetext': ariaValueText,
|
|
50
|
+
id,
|
|
51
|
+
tabIndex,
|
|
52
|
+
...otherProps
|
|
53
|
+
} = props;
|
|
54
|
+
|
|
55
|
+
// Since we destructured props, we can now treat it as mutable
|
|
56
|
+
const processedProps = otherProps as {...ViewProps};
|
|
57
|
+
|
|
58
|
+
const parsedAriaLabelledBy = ariaLabelledBy?.split(/\s*,\s*/g);
|
|
59
|
+
if (parsedAriaLabelledBy !== undefined) {
|
|
60
|
+
processedProps.accessibilityLabelledBy = parsedAriaLabelledBy;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (ariaLabel !== undefined) {
|
|
64
|
+
processedProps.accessibilityLabel = ariaLabel;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if (ariaLive !== undefined) {
|
|
68
|
+
processedProps.accessibilityLiveRegion =
|
|
69
|
+
ariaLive === 'off' ? 'none' : ariaLive;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
if (ariaHidden !== undefined) {
|
|
73
|
+
processedProps.accessibilityElementsHidden = ariaHidden;
|
|
74
|
+
if (ariaHidden === true) {
|
|
75
|
+
processedProps.importantForAccessibility = 'no-hide-descendants';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (id !== undefined) {
|
|
80
|
+
processedProps.nativeID = id;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
if (tabIndex !== undefined) {
|
|
84
|
+
processedProps.focusable = !tabIndex;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (
|
|
88
|
+
accessibilityState != null ||
|
|
89
|
+
ariaBusy != null ||
|
|
90
|
+
ariaChecked != null ||
|
|
91
|
+
ariaDisabled != null ||
|
|
92
|
+
ariaExpanded != null ||
|
|
93
|
+
ariaSelected != null
|
|
94
|
+
) {
|
|
95
|
+
processedProps.accessibilityState = {
|
|
96
|
+
busy: ariaBusy ?? accessibilityState?.busy,
|
|
97
|
+
checked: ariaChecked ?? accessibilityState?.checked,
|
|
98
|
+
disabled: ariaDisabled ?? accessibilityState?.disabled,
|
|
99
|
+
expanded: ariaExpanded ?? accessibilityState?.expanded,
|
|
100
|
+
selected: ariaSelected ?? accessibilityState?.selected,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (
|
|
105
|
+
accessibilityValue != null ||
|
|
106
|
+
ariaValueMax != null ||
|
|
107
|
+
ariaValueMin != null ||
|
|
108
|
+
ariaValueNow != null ||
|
|
109
|
+
ariaValueText != null
|
|
110
|
+
) {
|
|
111
|
+
processedProps.accessibilityValue = {
|
|
112
|
+
max: ariaValueMax ?? accessibilityValue?.max,
|
|
113
|
+
min: ariaValueMin ?? accessibilityValue?.min,
|
|
114
|
+
now: ariaValueNow ?? accessibilityValue?.now,
|
|
115
|
+
text: ariaValueText ?? accessibilityValue?.text,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
actualView =
|
|
120
|
+
ref == null ? (
|
|
121
|
+
<ViewNativeComponent {...processedProps} />
|
|
122
|
+
) : (
|
|
123
|
+
<ViewNativeComponent {...processedProps} ref={ref} />
|
|
124
|
+
);
|
|
125
|
+
} else {
|
|
126
|
+
const {
|
|
32
127
|
accessibilityElementsHidden,
|
|
33
128
|
accessibilityLabel,
|
|
34
129
|
accessibilityLabelledBy,
|
|
@@ -54,10 +149,7 @@ const View: component(
|
|
|
54
149
|
nativeID,
|
|
55
150
|
tabIndex,
|
|
56
151
|
...otherProps
|
|
57
|
-
}
|
|
58
|
-
forwardedRef,
|
|
59
|
-
) => {
|
|
60
|
-
const hasTextAncestor = React.useContext(TextAncestor);
|
|
152
|
+
} = props;
|
|
61
153
|
const _accessibilityLabelledBy =
|
|
62
154
|
ariaLabelledBy?.split(/\s*,\s*/g) ?? accessibilityLabelledBy;
|
|
63
155
|
|
|
@@ -91,7 +183,7 @@ const View: component(
|
|
|
91
183
|
}
|
|
92
184
|
: undefined;
|
|
93
185
|
|
|
94
|
-
|
|
186
|
+
actualView = (
|
|
95
187
|
<ViewNativeComponent
|
|
96
188
|
{...otherProps}
|
|
97
189
|
accessibilityLiveRegion={
|
|
@@ -109,22 +201,15 @@ const View: component(
|
|
|
109
201
|
: importantForAccessibility
|
|
110
202
|
}
|
|
111
203
|
nativeID={id ?? nativeID}
|
|
112
|
-
ref={
|
|
204
|
+
ref={ref}
|
|
113
205
|
/>
|
|
114
206
|
);
|
|
207
|
+
}
|
|
115
208
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
return actualView;
|
|
125
|
-
},
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
View.displayName = 'View';
|
|
129
|
-
|
|
130
|
-
export default View;
|
|
209
|
+
if (hasTextAncestor) {
|
|
210
|
+
return (
|
|
211
|
+
<TextAncestorContext value={false}>{actualView}</TextAncestorContext>
|
|
212
|
+
);
|
|
213
|
+
}
|
|
214
|
+
return actualView;
|
|
215
|
+
}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @format
|
|
8
7
|
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {ViewProps} from './ViewPropTypes';
|
|
@@ -18,8 +18,6 @@ import invariant from 'invariant'; // [Windows]
|
|
|
18
18
|
import type {KeyEvent} from '../../Types/CoreEventTypes';
|
|
19
19
|
// Windows]
|
|
20
20
|
|
|
21
|
-
export type Props = ViewProps;
|
|
22
|
-
|
|
23
21
|
/**
|
|
24
22
|
* The most fundamental component for building a UI, View is a container that
|
|
25
23
|
* supports layout with flexbox, style, some touch handling, and accessibility
|
|
@@ -119,6 +117,10 @@ const View: component(
|
|
|
119
117
|
for (const el of otherProps.keyDownEvents) {
|
|
120
118
|
if (
|
|
121
119
|
event.nativeEvent.code === el.code &&
|
|
120
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
121
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
122
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
123
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
122
124
|
el.handledEventPhase === 3
|
|
123
125
|
) {
|
|
124
126
|
event.stopPropagation();
|
|
@@ -134,6 +136,10 @@ const View: component(
|
|
|
134
136
|
for (const el of otherProps.keyUpEvents) {
|
|
135
137
|
if (
|
|
136
138
|
event.nativeEvent.code === el.code &&
|
|
139
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
140
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
141
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
142
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
137
143
|
el.handledEventPhase === 3
|
|
138
144
|
) {
|
|
139
145
|
event.stopPropagation();
|
|
@@ -149,6 +155,10 @@ const View: component(
|
|
|
149
155
|
for (const el of otherProps.keyDownEvents) {
|
|
150
156
|
if (
|
|
151
157
|
event.nativeEvent.code === el.code &&
|
|
158
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
159
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
160
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
161
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
152
162
|
el.handledEventPhase === 1
|
|
153
163
|
) {
|
|
154
164
|
event.stopPropagation();
|
|
@@ -164,6 +174,10 @@ const View: component(
|
|
|
164
174
|
for (const el of otherProps.keyUpEvents) {
|
|
165
175
|
if (
|
|
166
176
|
event.nativeEvent.code === el.code &&
|
|
177
|
+
event.nativeEvent.ctrlKey === Boolean(el.ctrlKey) &&
|
|
178
|
+
event.nativeEvent.shiftKey === Boolean(el.shiftKey) &&
|
|
179
|
+
event.nativeEvent.altKey === Boolean(el.altKey) &&
|
|
180
|
+
event.nativeEvent.metaKey === Boolean(el.metaKey) &&
|
|
167
181
|
el.handledEventPhase === 1
|
|
168
182
|
) {
|
|
169
183
|
event.stopPropagation();
|