@office-iss/react-native-win32 0.70.2 → 0.71.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +1 -0
- package/.eslintrc.js +2 -0
- package/.flowconfig +3 -6
- package/CHANGELOG.json +281 -43
- package/CHANGELOG.md +105 -24
- package/IntegrationTests/AccessibilityManagerTest.js +1 -1
- package/IntegrationTests/AppEventsTest.js +0 -1
- package/IntegrationTests/BUCK +0 -1
- package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
- package/IntegrationTests/ImageSnapshotTest.js +1 -1
- package/IntegrationTests/IntegrationTestsApp.js +2 -3
- package/IntegrationTests/SimpleSnapshotTest.js +1 -1
- package/IntegrationTests/SyncMethodTest.js +1 -1
- package/IntegrationTests/TimersTest.js +4 -4
- package/IntegrationTests/WebSocketTest.js +3 -3
- package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +80 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +4 -3
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.d.ts +90 -0
- package/Libraries/Alert/Alert.js +7 -1
- package/Libraries/Alert/Alert.win32.js +1 -0
- package/Libraries/Alert/NativeAlertManager.js +2 -0
- package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
- package/Libraries/Animated/Animated.d.ts +587 -0
- package/Libraries/Animated/Animated.js +13 -11
- package/Libraries/Animated/AnimatedEvent.js +12 -17
- package/Libraries/Animated/AnimatedImplementation.js +21 -23
- package/Libraries/Animated/AnimatedMock.js +11 -13
- package/Libraries/Animated/AnimatedWeb.js +2 -2
- package/Libraries/Animated/Easing.d.ts +37 -0
- package/Libraries/Animated/Easing.js +2 -2
- package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/SpringConfig.js +2 -7
- package/Libraries/Animated/animations/Animation.js +3 -4
- package/Libraries/Animated/animations/DecayAnimation.js +5 -8
- package/Libraries/Animated/animations/SpringAnimation.js +9 -14
- package/Libraries/Animated/animations/TimingAnimation.js +9 -13
- package/Libraries/Animated/bezier.js +2 -2
- package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
- package/Libraries/Animated/components/AnimatedImage.js +5 -6
- package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
- package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
- package/Libraries/Animated/components/AnimatedText.js +5 -6
- package/Libraries/Animated/components/AnimatedView.js +5 -6
- package/Libraries/Animated/createAnimatedComponent.js +13 -20
- package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +2 -2
- package/Libraries/Animated/nodes/AnimatedAddition.js +6 -8
- package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +6 -8
- package/Libraries/Animated/nodes/AnimatedDivision.js +7 -9
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +7 -10
- package/Libraries/Animated/nodes/AnimatedModulo.js +6 -8
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +7 -9
- package/Libraries/Animated/nodes/AnimatedNode.js +10 -8
- package/Libraries/Animated/nodes/AnimatedProps.js +12 -30
- package/Libraries/Animated/nodes/AnimatedStyle.js +12 -22
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +7 -9
- package/Libraries/Animated/nodes/AnimatedTracking.js +8 -12
- package/Libraries/Animated/nodes/AnimatedTransform.js +38 -31
- package/Libraries/Animated/nodes/AnimatedValue.js +9 -10
- package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -7
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +4 -5
- package/Libraries/Animated/useAnimatedProps.js +8 -16
- package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
- package/Libraries/Animated/useAnimatedValue.js +25 -0
- package/Libraries/AppState/AppState.d.ts +58 -0
- package/Libraries/AppState/AppState.js +3 -7
- package/Libraries/AppState/NativeAppState.js +1 -0
- package/Libraries/BatchedBridge/MessageQueue.js +9 -5
- package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
- package/Libraries/BatchedBridge/NativeModules.js +1 -0
- package/Libraries/Blob/BlobManager.js +5 -3
- package/Libraries/Blob/File.js +2 -3
- package/Libraries/Blob/FileReader.js +6 -5
- package/Libraries/Blob/NativeBlobModule.js +1 -0
- package/Libraries/Blob/NativeFileReaderModule.js +1 -0
- package/Libraries/Blob/URL.js +11 -9
- package/Libraries/BugReporting/NativeBugReporting.js +1 -0
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +128 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +208 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +40 -8
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +40 -8
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +5 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
- package/Libraries/Components/Button.d.ts +42 -0
- package/Libraries/Components/Button.flow.js +265 -0
- package/Libraries/Components/Button.js +62 -18
- package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
- package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
- package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
- package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +4 -2
- package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +7 -6
- package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +1 -0
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +9 -8
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +13 -14
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
- package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
- package/Libraries/Components/Keyboard/Keyboard.js +35 -8
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +35 -15
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
- package/Libraries/Components/Pressable/Pressable.js +73 -15
- package/Libraries/Components/Pressable/Pressable.win32.js +77 -19
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +6 -3
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +3 -3
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +1 -1
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +62 -0
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +4 -4
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +1 -1
- package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
- package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
- package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
- package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +5 -4
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +911 -0
- package/Libraries/Components/ScrollView/ScrollView.js +87 -52
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +243 -269
- package/Libraries/Components/Slider/Slider.d.ts +132 -0
- package/Libraries/Components/Slider/Slider.js +9 -9
- package/Libraries/Components/Slider/SliderNativeComponent.js +4 -5
- package/Libraries/Components/Sound/NativeSoundManager.js +1 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -0
- package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
- package/Libraries/Components/StatusBar/StatusBar.js +7 -7
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +10 -10
- package/Libraries/Components/Switch/Switch.d.ts +115 -0
- package/Libraries/Components/Switch/Switch.js +7 -7
- package/Libraries/Components/Switch/SwitchNativeComponent.js +9 -4
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +40 -12
- package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
- package/Libraries/Components/TextInput/InputAccessoryView.js +3 -4
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +3 -2
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -2
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +840 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +1057 -0
- package/Libraries/Components/TextInput/TextInput.js +344 -38
- package/Libraries/Components/TextInput/TextInput.win32.d.ts +1 -1
- package/Libraries/Components/TextInput/TextInput.win32.js +1 -1
- package/Libraries/Components/TextInput/TextInput.win32.js.map +1 -1
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
- package/Libraries/Components/TextInput/TextInputState.js +22 -5
- package/Libraries/Components/TextInput/TextInputState.win32.js +24 -5
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
- package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
- package/Libraries/Components/Touchable/Touchable.flow.js +258 -0
- package/Libraries/Components/Touchable/Touchable.js +12 -12
- package/Libraries/Components/Touchable/Touchable.win32.js +12 -12
- package/Libraries/Components/Touchable/TouchableBounce.js +44 -10
- package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
- package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
- package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
- package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +2 -1
- package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.js +0 -1
- package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -0
- package/Libraries/Components/View/View.d.ts +29 -0
- package/Libraries/Components/View/View.js +91 -8
- package/Libraries/Components/View/View.win32.js +176 -89
- package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
- package/Libraries/Components/View/ViewAccessibility.js +70 -1
- package/Libraries/Components/View/ViewNativeComponent.js +3 -3
- package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
- package/Libraries/Components/View/ViewPropTypes.js +105 -13
- package/Libraries/Components/View/ViewPropTypes.win32.js +105 -13
- package/Libraries/Components/View/ViewWin32.Props.d.ts +6 -1
- package/Libraries/Components/View/ViewWin32.Props.js.map +1 -1
- package/Libraries/Core/Devtools/openFileInEditor.js +3 -0
- package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
- package/Libraries/Core/ExceptionsManager.js +8 -0
- package/Libraries/Core/ExtendedError.js +11 -8
- package/Libraries/Core/InitializeCore.js +2 -1
- package/Libraries/Core/NativeExceptionsManager.js +3 -4
- package/Libraries/Core/RawEventEmitter.js +2 -1
- package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/ReactNativeVersionCheck.js +1 -0
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +1 -0
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
- package/Libraries/Core/Timers/JSTimers.js +13 -11
- package/Libraries/Core/Timers/NativeTiming.js +1 -0
- package/Libraries/Core/setUpBatchedBridge.js +1 -5
- package/Libraries/Core/setUpDeveloperTools.js +4 -6
- package/Libraries/Core/setUpReactDevTools.js +4 -1
- package/Libraries/Core/setUpRegeneratorRuntime.js +1 -1
- package/Libraries/Core/setUpTimers.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.d.ts +70 -0
- package/Libraries/EventEmitter/NativeEventEmitter.js +1 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +30 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +1 -0
- package/Libraries/Events/EventPolyfill.js +1 -1
- package/Libraries/HeapCapture/NativeJSCHeapCapture.js +1 -0
- package/Libraries/Image/AssetSourceResolver.js +4 -6
- package/Libraries/Image/Image.android.js +63 -45
- package/Libraries/Image/Image.d.ts +322 -0
- package/Libraries/Image/Image.flow.js +64 -0
- package/Libraries/Image/Image.ios.js +55 -28
- package/Libraries/Image/Image.win32.js +54 -25
- package/Libraries/Image/ImageBackground.js +18 -7
- package/Libraries/Image/ImageInjection.js +2 -1
- package/Libraries/Image/ImageProps.js +88 -5
- package/Libraries/Image/ImageResizeMode.d.ts +49 -0
- package/Libraries/Image/ImageSource.d.ts +76 -0
- package/Libraries/Image/ImageSourceUtils.js +80 -0
- package/Libraries/Image/ImageUtils.js +21 -0
- package/Libraries/Image/ImageViewNativeComponent.js +8 -5
- 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/TextInlineImageNativeComponent.js +4 -3
- package/Libraries/Image/nativeImageSource.js +2 -2
- package/Libraries/Image/resolveAssetSource.js +5 -5
- package/Libraries/Inspector/BorderBox.js +1 -1
- package/Libraries/Inspector/BoxInspector.js +3 -4
- package/Libraries/Inspector/DevtoolsOverlay.js +213 -0
- package/Libraries/Inspector/ElementBox.js +4 -5
- package/Libraries/Inspector/ElementProperties.js +10 -11
- package/Libraries/Inspector/Inspector.js +22 -108
- package/Libraries/Inspector/Inspector.win32.js +23 -109
- package/Libraries/Inspector/InspectorOverlay.js +5 -5
- package/Libraries/Inspector/InspectorOverlay.win32.js +5 -5
- package/Libraries/Inspector/InspectorPanel.js +12 -10
- package/Libraries/Inspector/NetworkOverlay.js +7 -3
- package/Libraries/Inspector/PerformanceOverlay.js +3 -3
- package/Libraries/Inspector/StyleInspector.js +2 -2
- package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +71 -0
- package/Libraries/Interaction/BridgeSpyStallHandler.js +1 -1
- package/Libraries/Interaction/InteractionManager.d.ts +74 -0
- package/Libraries/Interaction/InteractionManager.js +8 -8
- package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
- package/Libraries/Interaction/PanResponder.d.ts +202 -0
- package/Libraries/Interaction/PanResponder.flow.js +257 -0
- package/Libraries/Interaction/PanResponder.js +4 -3
- package/Libraries/JSInspector/JSInspector.js +0 -3
- package/Libraries/JSInspector/NetworkAgent.js +3 -3
- package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
- package/Libraries/LayoutAnimation/LayoutAnimation.js +4 -3
- package/Libraries/Linking/Linking.d.ts +61 -0
- package/Libraries/Linking/Linking.js +3 -2
- package/Libraries/Linking/NativeIntentAndroid.js +1 -0
- package/Libraries/Linking/NativeLinkingManager.js +1 -0
- package/Libraries/Lists/CellRenderMask.js +13 -3
- package/Libraries/Lists/ChildListCollection.js +72 -0
- package/Libraries/Lists/FillRateHelper.js +28 -17
- package/Libraries/Lists/FlatList.d.ts +292 -0
- package/Libraries/Lists/FlatList.js +70 -70
- package/Libraries/Lists/SectionList.d.ts +300 -0
- package/Libraries/Lists/SectionList.js +5 -5
- package/Libraries/Lists/SectionListModern.js +6 -6
- package/Libraries/Lists/StateSafePureComponent.js +85 -0
- package/Libraries/Lists/ViewabilityHelper.js +33 -12
- package/Libraries/Lists/VirtualizeUtils.js +17 -13
- package/Libraries/Lists/VirtualizedList.d.ts +317 -0
- package/Libraries/Lists/VirtualizedList.js +548 -890
- package/Libraries/Lists/VirtualizedListCellRenderer.js +259 -0
- package/Libraries/Lists/VirtualizedListContext.js +7 -48
- package/Libraries/Lists/VirtualizedListProps.js +279 -0
- package/Libraries/Lists/VirtualizedSectionList.js +6 -3
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +9 -8
- package/Libraries/LogBox/Data/LogBoxLog.js +5 -5
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +4 -4
- package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -3
- package/Libraries/LogBox/LogBox.d.ts +28 -0
- package/Libraries/LogBox/LogBox.js +11 -11
- package/Libraries/LogBox/LogBoxInspectorContainer.js +5 -3
- package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
- package/Libraries/LogBox/UI/AnsiHighlight.js +5 -3
- package/Libraries/LogBox/UI/LogBoxButton.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspector.js +6 -6
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +9 -8
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +3 -3
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +7 -6
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +7 -6
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +5 -5
- package/Libraries/LogBox/UI/LogBoxMessage.js +3 -3
- package/Libraries/LogBox/UI/LogBoxNotification.js +6 -5
- package/Libraries/Modal/Modal.d.ts +104 -0
- package/Libraries/Modal/Modal.js +14 -14
- package/Libraries/Modal/NativeModalManager.js +1 -0
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -3
- package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -3
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +8 -3
- package/Libraries/NativeComponent/NativeComponentRegistry.js +5 -4
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +1 -1
- package/Libraries/NativeComponent/ViewConfig.js +1 -0
- package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +1 -0
- 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 +3 -2
- package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
- package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
- package/Libraries/Network/NativeNetworkingIOS.js +1 -0
- package/Libraries/Network/RCTNetworking.android.js +4 -3
- package/Libraries/Network/RCTNetworking.ios.js +3 -2
- package/Libraries/Network/RCTNetworking.win32.js +1 -0
- package/Libraries/Network/convertRequestBody.js +1 -2
- package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -1
- package/Libraries/NewAppScreen/components/Header.js +6 -2
- package/Libraries/NewAppScreen/components/HermesBadge.js +6 -2
- package/Libraries/NewAppScreen/components/LearnMoreLinks.js +8 -9
- package/Libraries/NewAppScreen/components/ReloadInstructions.js +4 -1
- package/Libraries/NewAppScreen/index.js +1 -1
- package/Libraries/Performance/NativeJSCSamplingProfiler.js +1 -0
- package/Libraries/Performance/QuickPerformanceLogger.js +34 -10
- package/Libraries/Performance/Systrace.d.ts +66 -0
- package/Libraries/Performance/Systrace.js +110 -195
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +115 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +5 -4
- package/Libraries/Pressability/Pressability.js +12 -10
- package/Libraries/Pressability/Pressability.win32.js +9 -7
- package/Libraries/Pressability/PressabilityDebug.js +2 -2
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +275 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +19 -14
- package/Libraries/ReactNative/AppContainer.js +17 -7
- package/Libraries/ReactNative/AppRegistry.d.ts +68 -0
- package/Libraries/ReactNative/AppRegistry.js +11 -14
- package/Libraries/ReactNative/BridgelessUIManager.js +4 -3
- package/Libraries/ReactNative/FabricUIManager.js +3 -3
- package/Libraries/ReactNative/I18nManager.d.ts +25 -0
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
- package/Libraries/ReactNative/NativeI18nManager.js +1 -0
- package/Libraries/ReactNative/NativeUIManager.js +1 -0
- package/Libraries/ReactNative/PaperUIManager.js +2 -2
- package/Libraries/ReactNative/PaperUIManager.win32.js +1 -1
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +9 -0
- package/Libraries/ReactNative/RendererImplementation.js +112 -0
- package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
- package/Libraries/ReactNative/RendererProxy.js +26 -0
- package/Libraries/ReactNative/RootTag.js +0 -1
- package/Libraries/ReactNative/UIManager.d.ts +157 -0
- package/Libraries/ReactNative/UIManager.js +1 -1
- package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -0
- package/Libraries/ReactNative/renderApplication.js +38 -20
- package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
- package/Libraries/ReactNative/requireNativeComponent.js +2 -2
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +10 -9
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +312 -217
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +212 -177
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +248 -213
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +311 -218
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +226 -196
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +262 -232
- package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +149 -0
- package/Libraries/Renderer/shims/ReactFabric.js +2 -2
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
- package/Libraries/Renderer/shims/ReactNative.js +2 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +141 -0
- package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -22
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -8
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
- package/Libraries/Settings/NativeSettingsManager.js +1 -0
- package/Libraries/Settings/Settings.d.ts +18 -0
- package/Libraries/Share/NativeShareModule.js +1 -0
- package/Libraries/Share/Share.d.ts +80 -0
- package/Libraries/Share/Share.js +7 -5
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -0
- package/Libraries/StyleSheet/StyleSheet.d.ts +156 -0
- package/Libraries/StyleSheet/StyleSheet.js +15 -11
- package/Libraries/StyleSheet/StyleSheet.win32.js +16 -12
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +332 -0
- package/Libraries/StyleSheet/StyleSheetTypes.js +101 -24
- package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +2 -2
- package/Libraries/StyleSheet/normalizeColor.js +3 -3
- package/Libraries/StyleSheet/private/_TransformStyle.js +26 -24
- package/Libraries/StyleSheet/processAspectRatio.js +53 -0
- package/Libraries/StyleSheet/processColor.d.ts +16 -0
- package/Libraries/StyleSheet/processColor.js +3 -4
- package/Libraries/StyleSheet/processColorArray.js +1 -0
- package/Libraries/StyleSheet/processFontVariant.js +30 -0
- package/Libraries/StyleSheet/processTransform.js +114 -105
- package/Libraries/StyleSheet/splitLayoutProps.js +5 -0
- package/Libraries/Text/Text.d.ts +209 -0
- package/Libraries/Text/Text.js +94 -12
- package/Libraries/Text/TextNativeComponent.js +49 -41
- package/Libraries/Text/TextNativeComponent.win32.js +67 -48
- package/Libraries/Text/TextProps.js +64 -7
- package/Libraries/{Components/MaskedView/MaskedViewIOS.win32.js → TurboModule/RCTExport.d.ts} +3 -4
- package/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
- package/Libraries/TurboModule/TurboModuleRegistry.js +3 -1
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
- package/Libraries/Types/CoreEventTypes.d.ts +263 -0
- package/Libraries/Types/CoreEventTypes.js +2 -1
- package/Libraries/Types/CoreEventTypes.win32.js +2 -1
- package/Libraries/Utilities/AcessibilityMapping.js +154 -0
- package/Libraries/Utilities/Appearance.d.ts +43 -0
- package/Libraries/Utilities/Appearance.js +3 -3
- package/Libraries/Utilities/BackHandler.android.js +3 -5
- package/Libraries/Utilities/BackHandler.d.ts +38 -0
- package/Libraries/Utilities/BackHandler.win32.js +3 -5
- package/Libraries/Utilities/DevSettings.d.ts +32 -0
- package/Libraries/Utilities/DevSettings.js +4 -2
- package/Libraries/Utilities/Dimensions.d.ts +79 -0
- package/Libraries/Utilities/Dimensions.js +2 -2
- package/Libraries/Utilities/Dimensions.win32.js +2 -2
- package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -1
- package/Libraries/Utilities/HMRClient.js +23 -8
- package/Libraries/Utilities/LoadingView.ios.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +1 -0
- package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
- package/Libraries/Utilities/NativeDevSplitBundleLoader.js +1 -0
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -0
- 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 +3 -2
- package/Libraries/Utilities/PixelRatio.d.ts +64 -0
- package/Libraries/Utilities/Platform.android.js +11 -5
- package/Libraries/Utilities/Platform.d.ts +102 -0
- package/Libraries/Utilities/Platform.ios.js +12 -5
- package/Libraries/Utilities/Platform.win32.js +11 -5
- package/Libraries/Utilities/PolyfillFunctions.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +9 -15
- package/Libraries/Utilities/codegenNativeCommands.js +1 -10
- package/Libraries/Utilities/codegenNativeComponent.js +4 -1
- package/Libraries/Utilities/createPerformanceLogger.js +7 -8
- package/Libraries/Utilities/differ/deepDiffer.js +1 -1
- package/Libraries/Utilities/groupByEveryN.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +3 -1
- package/Libraries/Utilities/useColorScheme.js +3 -2
- package/Libraries/Utilities/useRefEffect.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +1 -0
- package/Libraries/Vibration/Vibration.d.ts +43 -0
- package/Libraries/Vibration/Vibration.js +1 -0
- package/Libraries/WebPerformance/NativePerformanceObserver.js +41 -0
- package/Libraries/WebPerformance/PerformanceObserver.js +223 -0
- package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
- package/Libraries/WebSocket/WebSocket.js +11 -3
- package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
- package/Libraries/YellowBox/YellowBoxDeprecated.js +2 -3
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -1
- package/Libraries/__tests__/ButtonWin32-test.js +16 -0
- package/Libraries/platform-types.d.ts +25 -0
- package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
- package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
- package/babel.config.js +3 -0
- package/flow/jest.js +2 -2
- package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
- package/flow-typed/npm/yargs_v17.x.x.js +341 -0
- package/index.js +89 -55
- package/index.win32.js +89 -55
- package/interface.js +8 -0
- package/jest/react-native-env.js +18 -0
- package/jest/renderer.js +2 -2
- package/jest/setup.js +7 -9
- package/jest.config.js +9 -2
- package/overrides.json +40 -101
- package/package.json +34 -33
- package/src/Libraries/Components/TextInput/TextInput.win32.tsx +2 -1
- package/src/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +2 -2
- package/src/Libraries/Components/Touchable/TouchableWin32.Props.tsx +2 -1
- package/src/Libraries/Components/Touchable/TouchableWin32.tsx +1 -1
- package/src/Libraries/Components/View/ViewWin32.Props.ts +10 -1
- package/src/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +22 -0
- package/src/Libraries/platform-types.d.ts +25 -0
- package/types/index.d.ts +215 -0
- package/IntegrationTests/AsyncStorageTest.js +0 -261
- package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
- package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
- package/Libraries/Core/setUpSystrace.js +0 -21
- package/Libraries/Image/ImagePickerIOS.js +0 -103
- package/Libraries/Image/NativeImagePickerIOS.js +0 -38
- package/Libraries/Lists/VirtualizedList.win32.js +0 -9
- package/Libraries/Lists/__tests__/CellRenderMask-test.js +0 -179
- package/Libraries/Lists/__tests__/FillRateHelper-test.js +0 -120
- package/Libraries/Lists/__tests__/FlatList-test.js +0 -155
- package/Libraries/Lists/__tests__/SectionList-test.js +0 -109
- package/Libraries/Lists/__tests__/ViewabilityHelper-test.js +0 -440
- package/Libraries/Lists/__tests__/VirtualizeUtils-test.js +0 -91
- package/Libraries/Lists/__tests__/VirtualizedList-test.js +0 -1587
- package/Libraries/Lists/__tests__/VirtualizedSectionList-test.js +0 -269
- package/Libraries/Storage/AsyncStorage.js +0 -385
- package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
- package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
- package/Libraries/Utilities/JSDevSupportModule.js +0 -37
- package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
- package/rntypes/BatchedBridge.d.ts +0 -23
- package/rntypes/Devtools.d.ts +0 -20
- package/rntypes/LaunchScreen.d.ts +0 -9
- package/rntypes/globals.d.ts +0 -497
- package/rntypes/index.d.ts +0 -9754
- package/rntypes/legacy-properties.d.ts +0 -238
- package/src/Libraries/Lists/__tests__/__snapshots__/FlatList-test.js.snap +0 -427
- package/src/Libraries/Lists/__tests__/__snapshots__/SectionList-test.js.snap +0 -391
- package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedList-test.js.snap +0 -4565
- package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedSectionList-test.js.snap +0 -1153
- package/src/rntypes/BatchedBridge.d.ts +0 -23
- package/src/rntypes/Devtools.d.ts +0 -20
- package/src/rntypes/LaunchScreen.d.ts +0 -9
- package/src/rntypes/globals.d.ts +0 -497
- package/src/rntypes/index.d.ts +0 -9754
- package/src/rntypes/legacy-properties.d.ts +0 -238
- package/src/typings-index.ts +0 -37
- package/typings-index.d.ts +0 -23
- package/typings-index.js +0 -47
- package/typings-index.js.map +0 -1
|
@@ -10,34 +10,30 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
+
import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
14
|
+
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
13
15
|
import type {
|
|
14
16
|
BlurEvent,
|
|
15
17
|
FocusEvent,
|
|
18
|
+
Layout,
|
|
19
|
+
LayoutEvent,
|
|
16
20
|
MouseEvent,
|
|
17
21
|
PointerEvent,
|
|
18
22
|
PressEvent,
|
|
19
|
-
Layout,
|
|
20
|
-
LayoutEvent,
|
|
21
23
|
} from '../../Types/CoreEventTypes';
|
|
22
|
-
import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
23
|
-
import type {Node} from 'react';
|
|
24
|
-
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
25
24
|
import type {
|
|
25
|
+
AccessibilityActionEvent,
|
|
26
|
+
AccessibilityActionInfo,
|
|
26
27
|
AccessibilityRole,
|
|
27
28
|
AccessibilityState,
|
|
28
29
|
AccessibilityValue,
|
|
29
|
-
|
|
30
|
-
AccessibilityActionInfo,
|
|
30
|
+
Role,
|
|
31
31
|
} from './ViewAccessibility';
|
|
32
|
+
import type {Node} from 'react';
|
|
32
33
|
|
|
33
34
|
export type ViewLayout = Layout;
|
|
34
35
|
export type ViewLayoutEvent = LayoutEvent;
|
|
35
36
|
|
|
36
|
-
type BubblingEventProps = $ReadOnly<{|
|
|
37
|
-
onBlur?: ?(event: BlurEvent) => mixed,
|
|
38
|
-
onFocus?: ?(event: FocusEvent) => mixed,
|
|
39
|
-
|}>;
|
|
40
|
-
|
|
41
37
|
type DirectEventProps = $ReadOnly<{|
|
|
42
38
|
/**
|
|
43
39
|
* When `accessible` is true, the system will try to invoke this function
|
|
@@ -103,6 +99,17 @@ type PointerEventProps = $ReadOnly<{|
|
|
|
103
99
|
onPointerDownCapture?: ?(e: PointerEvent) => void,
|
|
104
100
|
onPointerUp?: ?(e: PointerEvent) => void,
|
|
105
101
|
onPointerUpCapture?: ?(e: PointerEvent) => void,
|
|
102
|
+
onPointerOver?: ?(e: PointerEvent) => void,
|
|
103
|
+
onPointerOverCapture?: ?(e: PointerEvent) => void,
|
|
104
|
+
onPointerOut?: ?(e: PointerEvent) => void,
|
|
105
|
+
onPointerOutCapture?: ?(e: PointerEvent) => void,
|
|
106
|
+
|}>;
|
|
107
|
+
|
|
108
|
+
type FocusEventProps = $ReadOnly<{|
|
|
109
|
+
onBlur?: ?(event: BlurEvent) => void,
|
|
110
|
+
onBlurCapture?: ?(event: BlurEvent) => void,
|
|
111
|
+
onFocus?: ?(event: FocusEvent) => void,
|
|
112
|
+
onFocusCapture?: ?(event: FocusEvent) => void,
|
|
106
113
|
|}>;
|
|
107
114
|
|
|
108
115
|
type TouchEventProps = $ReadOnly<{|
|
|
@@ -286,6 +293,16 @@ type AndroidViewProps = $ReadOnly<{|
|
|
|
286
293
|
*/
|
|
287
294
|
accessibilityLiveRegion?: ?('none' | 'polite' | 'assertive'),
|
|
288
295
|
|
|
296
|
+
/**
|
|
297
|
+
* Indicates to accessibility services whether the user should be notified
|
|
298
|
+
* when this view changes. Works for Android API >= 19 only.
|
|
299
|
+
*
|
|
300
|
+
* @platform android
|
|
301
|
+
*
|
|
302
|
+
* See https://reactnative.dev/docs/view#accessibilityliveregion
|
|
303
|
+
*/
|
|
304
|
+
'aria-live'?: ?('polite' | 'assertive' | 'off'),
|
|
305
|
+
|
|
289
306
|
/**
|
|
290
307
|
* Controls how view is important for accessibility which is if it
|
|
291
308
|
* fires accessibility events and if it is reported to accessibility services
|
|
@@ -346,6 +363,19 @@ type AndroidViewProps = $ReadOnly<{|
|
|
|
346
363
|
*/
|
|
347
364
|
focusable?: boolean,
|
|
348
365
|
|
|
366
|
+
/**
|
|
367
|
+
* Indicates whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
|
|
368
|
+
* See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
|
|
369
|
+
* for more details.
|
|
370
|
+
*
|
|
371
|
+
* Supports the following values:
|
|
372
|
+
* - 0 (View is focusable)
|
|
373
|
+
* - -1 (View is not focusable)
|
|
374
|
+
*
|
|
375
|
+
* @platform android
|
|
376
|
+
*/
|
|
377
|
+
tabIndex?: 0 | -1,
|
|
378
|
+
|
|
349
379
|
/**
|
|
350
380
|
* The action to perform when this `View` is clicked on by a non-touch click, eg. enter key on a hardware keyboard.
|
|
351
381
|
*
|
|
@@ -373,6 +403,15 @@ type IOSViewProps = $ReadOnly<{|
|
|
|
373
403
|
*/
|
|
374
404
|
accessibilityViewIsModal?: ?boolean,
|
|
375
405
|
|
|
406
|
+
/**
|
|
407
|
+
* The aria-modal attribute indicates content contained within a modal with aria-modal="true"
|
|
408
|
+
* should be accessible to the user.
|
|
409
|
+
* Default is `false`.
|
|
410
|
+
*
|
|
411
|
+
* @platform ios
|
|
412
|
+
*/
|
|
413
|
+
'aria-modal'?: ?boolean,
|
|
414
|
+
|
|
376
415
|
/**
|
|
377
416
|
* A value indicating whether the accessibility elements contained within
|
|
378
417
|
* this accessibility element are hidden.
|
|
@@ -394,11 +433,11 @@ type IOSViewProps = $ReadOnly<{|
|
|
|
394
433
|
|}>;
|
|
395
434
|
|
|
396
435
|
export type ViewProps = $ReadOnly<{|
|
|
397
|
-
...BubblingEventProps,
|
|
398
436
|
...DirectEventProps,
|
|
399
437
|
...GestureResponderEventProps,
|
|
400
438
|
...MouseEventProps,
|
|
401
439
|
...PointerEventProps,
|
|
440
|
+
...FocusEventProps,
|
|
402
441
|
...TouchEventProps,
|
|
403
442
|
...AndroidViewProps,
|
|
404
443
|
...IOSViewProps,
|
|
@@ -433,6 +472,12 @@ export type ViewProps = $ReadOnly<{|
|
|
|
433
472
|
*/
|
|
434
473
|
accessibilityHint?: ?Stringish,
|
|
435
474
|
|
|
475
|
+
/**
|
|
476
|
+
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
477
|
+
* https://github.com/facebook/react-native/issues/34424
|
|
478
|
+
*/
|
|
479
|
+
'aria-label'?: ?Stringish,
|
|
480
|
+
|
|
436
481
|
/**
|
|
437
482
|
* Indicates to the accessibility services that the UI component is in
|
|
438
483
|
* a specific language. The provided string should be formatted following
|
|
@@ -447,12 +492,26 @@ export type ViewProps = $ReadOnly<{|
|
|
|
447
492
|
*/
|
|
448
493
|
accessibilityRole?: ?AccessibilityRole,
|
|
449
494
|
|
|
495
|
+
/**
|
|
496
|
+
* Alias for accessibilityRole
|
|
497
|
+
*/
|
|
498
|
+
role?: ?Role,
|
|
499
|
+
|
|
450
500
|
/**
|
|
451
501
|
* Indicates to accessibility services that UI Component is in a specific State.
|
|
452
502
|
*/
|
|
453
503
|
accessibilityState?: ?AccessibilityState,
|
|
454
504
|
accessibilityValue?: ?AccessibilityValue,
|
|
455
505
|
|
|
506
|
+
/**
|
|
507
|
+
* alias for accessibilityState
|
|
508
|
+
* It represents textual description of a component's value, or for range-based components, such as sliders and progress bars.
|
|
509
|
+
*/
|
|
510
|
+
'aria-valuemax'?: ?AccessibilityValue['max'],
|
|
511
|
+
'aria-valuemin'?: ?AccessibilityValue['min'],
|
|
512
|
+
'aria-valuenow'?: ?AccessibilityValue['now'],
|
|
513
|
+
'aria-valuetext'?: ?AccessibilityValue['text'],
|
|
514
|
+
|
|
456
515
|
/**
|
|
457
516
|
* Provides an array of custom actions available for accessibility.
|
|
458
517
|
*
|
|
@@ -466,6 +525,30 @@ export type ViewProps = $ReadOnly<{|
|
|
|
466
525
|
*/
|
|
467
526
|
accessibilityLabelledBy?: ?string | ?Array<string>,
|
|
468
527
|
|
|
528
|
+
/**
|
|
529
|
+
* alias for accessibilityState
|
|
530
|
+
*
|
|
531
|
+
* see https://reactnative.dev/docs/accessibility#accessibilitystate
|
|
532
|
+
*/
|
|
533
|
+
'aria-busy'?: ?boolean,
|
|
534
|
+
'aria-checked'?: ?boolean | 'mixed',
|
|
535
|
+
'aria-disabled'?: ?boolean,
|
|
536
|
+
'aria-expanded'?: ?boolean,
|
|
537
|
+
'aria-selected'?: ?boolean,
|
|
538
|
+
/** A value indicating whether the accessibility elements contained within
|
|
539
|
+
* this accessibility element are hidden.
|
|
540
|
+
*
|
|
541
|
+
* See https://reactnative.dev/docs/view#aria-hidden
|
|
542
|
+
*/
|
|
543
|
+
'aria-hidden'?: ?boolean,
|
|
544
|
+
|
|
545
|
+
/**
|
|
546
|
+
* It reperesents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
|
|
547
|
+
*
|
|
548
|
+
* @platform android
|
|
549
|
+
*/
|
|
550
|
+
'aria-labelledby'?: ?string,
|
|
551
|
+
|
|
469
552
|
/**
|
|
470
553
|
* Views that are only used to layout their children or otherwise don't draw
|
|
471
554
|
* anything may be automatically removed from the native hierarchy as an
|
|
@@ -479,6 +562,15 @@ export type ViewProps = $ReadOnly<{|
|
|
|
479
562
|
*/
|
|
480
563
|
collapsable?: ?boolean,
|
|
481
564
|
|
|
565
|
+
/**
|
|
566
|
+
* Used to locate this view from native classes.
|
|
567
|
+
*
|
|
568
|
+
* > This disables the 'layout-only view removal' optimization for this view!
|
|
569
|
+
*
|
|
570
|
+
* See https://reactnative.dev/docs/view#id
|
|
571
|
+
*/
|
|
572
|
+
id?: string,
|
|
573
|
+
|
|
482
574
|
/**
|
|
483
575
|
* Used to locate this view in end-to-end tests.
|
|
484
576
|
*
|
|
@@ -10,35 +10,31 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
+
import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
14
|
+
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
13
15
|
import type {
|
|
14
16
|
BlurEvent,
|
|
15
17
|
FocusEvent,
|
|
18
|
+
Layout,
|
|
19
|
+
LayoutEvent,
|
|
16
20
|
MouseEvent,
|
|
17
21
|
PointerEvent,
|
|
18
22
|
PressEvent,
|
|
19
|
-
Layout,
|
|
20
|
-
LayoutEvent,
|
|
21
23
|
KeyEvent, // [Windows]
|
|
22
24
|
} from '../../Types/CoreEventTypes';
|
|
23
|
-
import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
24
|
-
import type {Node} from 'react';
|
|
25
|
-
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
26
25
|
import type {
|
|
26
|
+
AccessibilityActionEvent,
|
|
27
|
+
AccessibilityActionInfo,
|
|
27
28
|
AccessibilityRole,
|
|
28
29
|
AccessibilityState,
|
|
29
30
|
AccessibilityValue,
|
|
30
|
-
|
|
31
|
-
AccessibilityActionInfo,
|
|
31
|
+
Role,
|
|
32
32
|
} from './ViewAccessibility';
|
|
33
|
+
import type {Node} from 'react';
|
|
33
34
|
|
|
34
35
|
export type ViewLayout = Layout;
|
|
35
36
|
export type ViewLayoutEvent = LayoutEvent;
|
|
36
37
|
|
|
37
|
-
type BubblingEventProps = $ReadOnly<{|
|
|
38
|
-
onBlur?: ?(event: BlurEvent) => mixed,
|
|
39
|
-
onFocus?: ?(event: FocusEvent) => mixed,
|
|
40
|
-
|}>;
|
|
41
|
-
|
|
42
38
|
type DirectEventProps = $ReadOnly<{|
|
|
43
39
|
/**
|
|
44
40
|
* When `accessible` is true, the system will try to invoke this function
|
|
@@ -104,6 +100,17 @@ type PointerEventProps = $ReadOnly<{|
|
|
|
104
100
|
onPointerDownCapture?: ?(e: PointerEvent) => void,
|
|
105
101
|
onPointerUp?: ?(e: PointerEvent) => void,
|
|
106
102
|
onPointerUpCapture?: ?(e: PointerEvent) => void,
|
|
103
|
+
onPointerOver?: ?(e: PointerEvent) => void,
|
|
104
|
+
onPointerOverCapture?: ?(e: PointerEvent) => void,
|
|
105
|
+
onPointerOut?: ?(e: PointerEvent) => void,
|
|
106
|
+
onPointerOutCapture?: ?(e: PointerEvent) => void,
|
|
107
|
+
|}>;
|
|
108
|
+
|
|
109
|
+
type FocusEventProps = $ReadOnly<{|
|
|
110
|
+
onBlur?: ?(event: BlurEvent) => void,
|
|
111
|
+
onBlurCapture?: ?(event: BlurEvent) => void,
|
|
112
|
+
onFocus?: ?(event: FocusEvent) => void,
|
|
113
|
+
onFocusCapture?: ?(event: FocusEvent) => void,
|
|
107
114
|
|}>;
|
|
108
115
|
|
|
109
116
|
type TouchEventProps = $ReadOnly<{|
|
|
@@ -287,6 +294,16 @@ type AndroidViewProps = $ReadOnly<{|
|
|
|
287
294
|
*/
|
|
288
295
|
accessibilityLiveRegion?: ?('none' | 'polite' | 'assertive'),
|
|
289
296
|
|
|
297
|
+
/**
|
|
298
|
+
* Indicates to accessibility services whether the user should be notified
|
|
299
|
+
* when this view changes. Works for Android API >= 19 only.
|
|
300
|
+
*
|
|
301
|
+
* @platform android
|
|
302
|
+
*
|
|
303
|
+
* See https://reactnative.dev/docs/view#accessibilityliveregion
|
|
304
|
+
*/
|
|
305
|
+
'aria-live'?: ?('polite' | 'assertive' | 'off'),
|
|
306
|
+
|
|
290
307
|
/**
|
|
291
308
|
* Controls how view is important for accessibility which is if it
|
|
292
309
|
* fires accessibility events and if it is reported to accessibility services
|
|
@@ -347,6 +364,19 @@ type AndroidViewProps = $ReadOnly<{|
|
|
|
347
364
|
*/
|
|
348
365
|
focusable?: boolean,
|
|
349
366
|
|
|
367
|
+
/**
|
|
368
|
+
* Indicates whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
|
|
369
|
+
* See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
|
|
370
|
+
* for more details.
|
|
371
|
+
*
|
|
372
|
+
* Supports the following values:
|
|
373
|
+
* - 0 (View is focusable)
|
|
374
|
+
* - -1 (View is not focusable)
|
|
375
|
+
*
|
|
376
|
+
* @platform android
|
|
377
|
+
*/
|
|
378
|
+
tabIndex?: 0 | -1,
|
|
379
|
+
|
|
350
380
|
/**
|
|
351
381
|
* The action to perform when this `View` is clicked on by a non-touch click, eg. enter key on a hardware keyboard.
|
|
352
382
|
*
|
|
@@ -374,6 +404,15 @@ type IOSViewProps = $ReadOnly<{|
|
|
|
374
404
|
*/
|
|
375
405
|
accessibilityViewIsModal?: ?boolean,
|
|
376
406
|
|
|
407
|
+
/**
|
|
408
|
+
* The aria-modal attribute indicates content contained within a modal with aria-modal="true"
|
|
409
|
+
* should be accessible to the user.
|
|
410
|
+
* Default is `false`.
|
|
411
|
+
*
|
|
412
|
+
* @platform ios
|
|
413
|
+
*/
|
|
414
|
+
'aria-modal'?: ?boolean,
|
|
415
|
+
|
|
377
416
|
/**
|
|
378
417
|
* A value indicating whether the accessibility elements contained within
|
|
379
418
|
* this accessibility element are hidden.
|
|
@@ -442,11 +481,11 @@ type WindowsViewProps = $ReadOnly<{|
|
|
|
442
481
|
// Windows]
|
|
443
482
|
|
|
444
483
|
export type ViewProps = $ReadOnly<{|
|
|
445
|
-
...BubblingEventProps,
|
|
446
484
|
...DirectEventProps,
|
|
447
485
|
...GestureResponderEventProps,
|
|
448
486
|
...MouseEventProps,
|
|
449
487
|
...PointerEventProps,
|
|
488
|
+
...FocusEventProps,
|
|
450
489
|
...TouchEventProps,
|
|
451
490
|
...AndroidViewProps,
|
|
452
491
|
...IOSViewProps,
|
|
@@ -482,6 +521,12 @@ export type ViewProps = $ReadOnly<{|
|
|
|
482
521
|
*/
|
|
483
522
|
accessibilityHint?: ?Stringish,
|
|
484
523
|
|
|
524
|
+
/**
|
|
525
|
+
* Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
|
|
526
|
+
* https://github.com/facebook/react-native/issues/34424
|
|
527
|
+
*/
|
|
528
|
+
'aria-label'?: ?Stringish,
|
|
529
|
+
|
|
485
530
|
/**
|
|
486
531
|
* Indicates to the accessibility services that the UI component is in
|
|
487
532
|
* a specific language. The provided string should be formatted following
|
|
@@ -496,12 +541,26 @@ export type ViewProps = $ReadOnly<{|
|
|
|
496
541
|
*/
|
|
497
542
|
accessibilityRole?: ?AccessibilityRole,
|
|
498
543
|
|
|
544
|
+
/**
|
|
545
|
+
* Alias for accessibilityRole
|
|
546
|
+
*/
|
|
547
|
+
role?: ?Role,
|
|
548
|
+
|
|
499
549
|
/**
|
|
500
550
|
* Indicates to accessibility services that UI Component is in a specific State.
|
|
501
551
|
*/
|
|
502
552
|
accessibilityState?: ?AccessibilityState,
|
|
503
553
|
accessibilityValue?: ?AccessibilityValue,
|
|
504
554
|
|
|
555
|
+
/**
|
|
556
|
+
* alias for accessibilityState
|
|
557
|
+
* It represents textual description of a component's value, or for range-based components, such as sliders and progress bars.
|
|
558
|
+
*/
|
|
559
|
+
'aria-valuemax'?: ?AccessibilityValue['max'],
|
|
560
|
+
'aria-valuemin'?: ?AccessibilityValue['min'],
|
|
561
|
+
'aria-valuenow'?: ?AccessibilityValue['now'],
|
|
562
|
+
'aria-valuetext'?: ?AccessibilityValue['text'],
|
|
563
|
+
|
|
505
564
|
/**
|
|
506
565
|
* Provides an array of custom actions available for accessibility.
|
|
507
566
|
*
|
|
@@ -515,6 +574,30 @@ export type ViewProps = $ReadOnly<{|
|
|
|
515
574
|
*/
|
|
516
575
|
accessibilityLabelledBy?: ?string | ?Array<string>,
|
|
517
576
|
|
|
577
|
+
/**
|
|
578
|
+
* alias for accessibilityState
|
|
579
|
+
*
|
|
580
|
+
* see https://reactnative.dev/docs/accessibility#accessibilitystate
|
|
581
|
+
*/
|
|
582
|
+
'aria-busy'?: ?boolean,
|
|
583
|
+
'aria-checked'?: ?boolean | 'mixed',
|
|
584
|
+
'aria-disabled'?: ?boolean,
|
|
585
|
+
'aria-expanded'?: ?boolean,
|
|
586
|
+
'aria-selected'?: ?boolean,
|
|
587
|
+
/** A value indicating whether the accessibility elements contained within
|
|
588
|
+
* this accessibility element are hidden.
|
|
589
|
+
*
|
|
590
|
+
* See https://reactnative.dev/docs/view#aria-hidden
|
|
591
|
+
*/
|
|
592
|
+
'aria-hidden'?: ?boolean,
|
|
593
|
+
|
|
594
|
+
/**
|
|
595
|
+
* It reperesents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
|
|
596
|
+
*
|
|
597
|
+
* @platform android
|
|
598
|
+
*/
|
|
599
|
+
'aria-labelledby'?: ?string,
|
|
600
|
+
|
|
518
601
|
/**
|
|
519
602
|
* Views that are only used to layout their children or otherwise don't draw
|
|
520
603
|
* anything may be automatically removed from the native hierarchy as an
|
|
@@ -528,6 +611,15 @@ export type ViewProps = $ReadOnly<{|
|
|
|
528
611
|
*/
|
|
529
612
|
collapsable?: ?boolean,
|
|
530
613
|
|
|
614
|
+
/**
|
|
615
|
+
* Used to locate this view from native classes.
|
|
616
|
+
*
|
|
617
|
+
* > This disables the 'layout-only view removal' optimization for this view!
|
|
618
|
+
*
|
|
619
|
+
* See https://reactnative.dev/docs/view#id
|
|
620
|
+
*/
|
|
621
|
+
id?: string,
|
|
622
|
+
|
|
531
623
|
/**
|
|
532
624
|
* Used to locate this view in end-to-end tests.
|
|
533
625
|
*
|
|
@@ -86,6 +86,11 @@ export declare type BasePropsWin32 = {
|
|
|
86
86
|
* ItemType is used to obtain information about items in a list, tree view, or data grid. For example, an item in a file directory view might be a "Document File" or a "Folder".
|
|
87
87
|
*/
|
|
88
88
|
accessibilityItemType?: string;
|
|
89
|
+
/**
|
|
90
|
+
* Defines the level of an element in a hierarchical structure or the heading level of a text element.
|
|
91
|
+
* Note: accessibilityRole="header" must be used if using this property to define a heading level.
|
|
92
|
+
*/
|
|
93
|
+
accessibilityLevel?: number;
|
|
89
94
|
};
|
|
90
95
|
export declare type ViewWin32OmitTypes = RN.ViewPropsAndroid & RN.ViewPropsIOS & RN.AccessibilityPropsAndroid & Omit<RN.AccessibilityPropsIOS, SharedAccessibilityPropsIOSandWin32> & OmittedAccessibilityPropsWin32;
|
|
91
96
|
/**
|
|
@@ -114,12 +119,12 @@ export interface IViewWin32Props extends Omit<RN.ViewProps, ViewWin32OmitTypes>,
|
|
|
114
119
|
*
|
|
115
120
|
*/
|
|
116
121
|
accessibilityDescription?: string;
|
|
117
|
-
accessibilityLevel?: number;
|
|
118
122
|
accessibilityPositionInSet?: number;
|
|
119
123
|
accessibilitySetSize?: number;
|
|
120
124
|
animationClass?: string;
|
|
121
125
|
focusable?: boolean;
|
|
122
126
|
enableFocusRing?: boolean;
|
|
127
|
+
alwaysShowToolTip?: boolean;
|
|
123
128
|
/**
|
|
124
129
|
* The onBlur event occurs when an element loses focus. The opposite of onBlur is onFocus. Note that in React
|
|
125
130
|
* Native, unlike in the web, the onBlur event bubbles (similar to onFocusOut in the web).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewWin32.Props.js","sourceRoot":"","sources":["../../../src/Libraries/Components/View/ViewWin32.Props.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAeb,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,qDAAS,CAAA;IACT,mDAAQ,CAAA;IACR,mDAAQ,CAAA;AACV,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB","sourcesContent":["'use strict';\nimport React from 'react'\nimport RN = require('react-native');\n\n// removes from interface T the members of interface K\ntype Omit<T, K> = Pick<T, Exclude<keyof T, keyof K>>;\n\n// All of T becomes optional except for Keys\ntype PartiallyRequired<T, Keys extends keyof T = keyof T> = Pick<Partial<T>, Exclude<keyof T, Keys>> & Pick<T, Keys>;\n\n/**\n * All of TOrigin except Key from TUse\n */\nexport type UseFrom<TOrigin, TUse, Key extends keyof TUse> = Pick<TOrigin, Exclude<keyof TOrigin, Key>> & Pick<TUse, Key>;\n\nexport enum EventPhase {\n None,\n Capturing,\n AtTarget,\n Bubbling\n}\n\nexport interface INativeKeyboardEvent {\n altKey: boolean;\n ctrlKey: boolean;\n metaKey: boolean;\n shiftKey: boolean;\n key: string;\n eventPhase: EventPhase;\n}\nexport type IKeyboardEvent = RN.NativeSyntheticEvent<INativeKeyboardEvent>;\nexport type IHandledKeyboardEvent = PartiallyRequired<INativeKeyboardEvent, 'key'>;\n\nexport interface IViewWin32 {\n focus: () => void;\n}\n\nexport type ARIARole =\n | 'alert'\n | 'alertdialog'\n | 'application'\n | 'button'\n | 'checkbox'\n | 'combobox'\n | 'dialog'\n | 'group'\n | 'link'\n | 'listitem'\n | 'menu'\n | 'menubar'\n | 'menuitem'\n | 'none'\n | 'presentation'\n | 'progressbar'\n | 'radio'\n | 'radiogroup'\n | 'scrollbar'\n | 'search'\n | 'spinbutton'\n | 'switch'\n | 'tab'\n | 'tablist'\n | 'tabpanel'\n | 'textbox'\n | 'timer'\n | 'toolbar'\n | 'tree'\n | 'treeitem';\n\nexport type AnnotationType =\n | 'AdvanceProofingIssue'\n | 'Author'\n | 'CircularReferenceError'\n | 'Comment'\n | 'ConflictingChange'\n | 'DataValidationError'\n | 'DeletionChange'\n | 'EditingLockedChange'\n | 'Endnote'\n | 'ExternalChange'\n | 'Footer'\n | 'Footnote'\n | 'FormatChange'\n | 'FormulaError'\n | 'GrammarError'\n | 'Header'\n | 'Highlighted'\n | 'InsertionChange'\n | 'Mathematics'\n | 'MoveChange'\n | 'SpellingError'\n | 'TrackChanges'\n | 'Unknown'\n | 'UnsyncedChange';\n\nexport type AccessibilityAnnotationInfo = Readonly<{\n typeID: AnnotationType;\n typeName?: string;\n author?: string;\n dateTime?: string;\n target?: string;\n}>;\n\nexport type AccessibilityActionName =\n | RN.AccessibilityActionName\n | 'AddToSelection'\n | 'RemoveFromSelection'\n | 'Select'\n | 'Expand'\n | 'Collapse'\n | 'Toggle';\n\nexport type Cursor =\n | 'auto'\n | 'default'\n | 'pointer'\n | 'help'\n | 'not-allowed'\n | 'wait'\n | 'move'\n | 'nesw-resize'\n | 'ns-resize'\n | 'nwse-resize'\n | 'we-resize'\n | 'text'\n\nexport type AccessibilityActionInfo = Readonly<{\n name: AccessibilityActionName;\n label?: string;\n}>;\n\nexport type AccessibilityState = RN.AccessibilityState & { multiselectable?: boolean, required?: boolean };\n\nexport type SharedAccessibilityPropsIOSandWin32 = {\n onAccessibilityTap?: () => void;\n};\n\nexport type OmittedAccessibilityPropsWin32 = {\n accessibilityActions?: ReadonlyArray<RN.AccessibilityActionInfo>;\n accessibilityRole?: RN.AccessibilityRole;\n accessibilityState?: RN.AccessibilityState;\n};\n\nexport type BasePropsWin32 = {\n /**\n * Tells a person using a screen reader the type of element they are focused on.\n *\n * Overrides the `accessibilityRole` prop on React Native to accept a subset of ARIA roles.\n *\n * Possible values for ARIARole are: alert, alertdialog, application, button, checkbox,\n * comobox, dialog, group, link, menu, menubar, menuitem, none, presentation, progressbar,\n * radio, radiogroup, scrollbar, search, spinbutton, switch, tab, tablist, tabpanel, textbox,\n * timer, toolbar, tree, and treeitem.\n */\n accessibilityRole?: RN.AccessibilityRole | ARIARole;\n accessibilityState?: AccessibilityState;\n accessibilityActions?: ReadonlyArray<AccessibilityActionInfo>;\n\n /**\n * Windows Accessibility extensions for allowing other DOM elements to label or describe a given element.\n *\n * Defined as a reference to another DOM element inheriting from the primary base classes of React-Native elements.\n * The reference will be converted to a native reference (tag) before passing to the native platform.\n */\n accessibilityDescribedBy?: React.RefObject<any>;\n accessibilityLabeledBy?: React.RefObject<any>;\n\n /**\n * Identifies the element whose contents or presence are controlled by another element. \n * \n * This is mainly used for a Textbox with a Dropdown PeoplePicker-type list. This allows an \n * accessibility tool to query those other providers for properties and listen to their events.\n */\n accessibilityControls?: React.RefObject<any>; \n\n /**\n * Identifies the ItemType property, which is a text string describing the type of the automation element.\n * ItemType is used to obtain information about items in a list, tree view, or data grid. For example, an item in a file directory view might be a \"Document File\" or a \"Folder\".\n */\n accessibilityItemType?: string;\n};\n\nexport type ViewWin32OmitTypes = RN.ViewPropsAndroid &\n RN.ViewPropsIOS &\n RN.AccessibilityPropsAndroid &\n Omit<RN.AccessibilityPropsIOS, SharedAccessibilityPropsIOSandWin32> &\n OmittedAccessibilityPropsWin32;\n\n/**\n * Properties for ViewWin32 component\n */\nexport interface IViewWin32Props extends Omit<RN.ViewProps, ViewWin32OmitTypes>, BasePropsWin32 {\n type?: React.ElementType;\n children?: React.ReactNode;\n /**\n * An access key to hook up to the UIA_AccessKey_Property.\n * Access keys are used in keyboard navigation to allow quick navigation to UI in an application.\n */\n accessibilityAccessKey?: string;\n accessibilityActions?: ReadonlyArray<AccessibilityActionInfo>;\n /**\n * Tells a person using a screen reader what kind of annotation they\n * have selected. If available, it will also tell a person the author of the annotation and\n * the date and time the annotation was posted.\n *\n * Note: If typeID is 'Unknown', a typeName must be provided.\n */\n accessibilityAnnotation?: AccessibilityAnnotationInfo;\n /**\n * accessibilityDescription provides more detailed information specific to the element (i.e. last edit date, full location for a file)\n * while accessibilityHint provides infomation on what will happen when they perform an action.\n *\n */\n accessibilityDescription?: string;\n
|
|
1
|
+
{"version":3,"file":"ViewWin32.Props.js","sourceRoot":"","sources":["../../../src/Libraries/Components/View/ViewWin32.Props.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAeb,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,qDAAS,CAAA;IACT,mDAAQ,CAAA;IACR,mDAAQ,CAAA;AACV,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB","sourcesContent":["'use strict';\nimport React from 'react'\nimport RN = require('react-native');\n\n// removes from interface T the members of interface K\ntype Omit<T, K> = Pick<T, Exclude<keyof T, keyof K>>;\n\n// All of T becomes optional except for Keys\ntype PartiallyRequired<T, Keys extends keyof T = keyof T> = Pick<Partial<T>, Exclude<keyof T, Keys>> & Pick<T, Keys>;\n\n/**\n * All of TOrigin except Key from TUse\n */\nexport type UseFrom<TOrigin, TUse, Key extends keyof TUse> = Pick<TOrigin, Exclude<keyof TOrigin, Key>> & Pick<TUse, Key>;\n\nexport enum EventPhase {\n None,\n Capturing,\n AtTarget,\n Bubbling\n}\n\nexport interface INativeKeyboardEvent {\n altKey: boolean;\n ctrlKey: boolean;\n metaKey: boolean;\n shiftKey: boolean;\n key: string;\n eventPhase: EventPhase;\n}\nexport type IKeyboardEvent = RN.NativeSyntheticEvent<INativeKeyboardEvent>;\nexport type IHandledKeyboardEvent = PartiallyRequired<INativeKeyboardEvent, 'key'>;\n\nexport interface IViewWin32 {\n focus: () => void;\n}\n\nexport type ARIARole =\n | 'alert'\n | 'alertdialog'\n | 'application'\n | 'button'\n | 'checkbox'\n | 'combobox'\n | 'dialog'\n | 'group'\n | 'link'\n | 'listitem'\n | 'menu'\n | 'menubar'\n | 'menuitem'\n | 'none'\n | 'presentation'\n | 'progressbar'\n | 'radio'\n | 'radiogroup'\n | 'scrollbar'\n | 'search'\n | 'spinbutton'\n | 'switch'\n | 'tab'\n | 'tablist'\n | 'tabpanel'\n | 'textbox'\n | 'timer'\n | 'toolbar'\n | 'tree'\n | 'treeitem';\n\nexport type AnnotationType =\n | 'AdvanceProofingIssue'\n | 'Author'\n | 'CircularReferenceError'\n | 'Comment'\n | 'ConflictingChange'\n | 'DataValidationError'\n | 'DeletionChange'\n | 'EditingLockedChange'\n | 'Endnote'\n | 'ExternalChange'\n | 'Footer'\n | 'Footnote'\n | 'FormatChange'\n | 'FormulaError'\n | 'GrammarError'\n | 'Header'\n | 'Highlighted'\n | 'InsertionChange'\n | 'Mathematics'\n | 'MoveChange'\n | 'SpellingError'\n | 'TrackChanges'\n | 'Unknown'\n | 'UnsyncedChange';\n\nexport type AccessibilityAnnotationInfo = Readonly<{\n typeID: AnnotationType;\n typeName?: string;\n author?: string;\n dateTime?: string;\n target?: string;\n}>;\n\nexport type AccessibilityActionName =\n | RN.AccessibilityActionName\n | 'AddToSelection'\n | 'RemoveFromSelection'\n | 'Select'\n | 'Expand'\n | 'Collapse'\n | 'Toggle';\n\nexport type Cursor =\n | 'auto'\n | 'default'\n | 'pointer'\n | 'help'\n | 'not-allowed'\n | 'wait'\n | 'move'\n | 'nesw-resize'\n | 'ns-resize'\n | 'nwse-resize'\n | 'we-resize'\n | 'text'\n\nexport type AccessibilityActionInfo = Readonly<{\n name: AccessibilityActionName;\n label?: string;\n}>;\n\nexport type AccessibilityState = RN.AccessibilityState & { multiselectable?: boolean, required?: boolean };\n\nexport type SharedAccessibilityPropsIOSandWin32 = {\n onAccessibilityTap?: () => void;\n};\n\nexport type OmittedAccessibilityPropsWin32 = {\n accessibilityActions?: ReadonlyArray<RN.AccessibilityActionInfo>;\n accessibilityRole?: RN.AccessibilityRole;\n accessibilityState?: RN.AccessibilityState;\n};\n\nexport type BasePropsWin32 = {\n /**\n * Tells a person using a screen reader the type of element they are focused on.\n *\n * Overrides the `accessibilityRole` prop on React Native to accept a subset of ARIA roles.\n *\n * Possible values for ARIARole are: alert, alertdialog, application, button, checkbox,\n * comobox, dialog, group, link, menu, menubar, menuitem, none, presentation, progressbar,\n * radio, radiogroup, scrollbar, search, spinbutton, switch, tab, tablist, tabpanel, textbox,\n * timer, toolbar, tree, and treeitem.\n */\n accessibilityRole?: RN.AccessibilityRole | ARIARole;\n accessibilityState?: AccessibilityState;\n accessibilityActions?: ReadonlyArray<AccessibilityActionInfo>;\n\n /**\n * Windows Accessibility extensions for allowing other DOM elements to label or describe a given element.\n *\n * Defined as a reference to another DOM element inheriting from the primary base classes of React-Native elements.\n * The reference will be converted to a native reference (tag) before passing to the native platform.\n */\n accessibilityDescribedBy?: React.RefObject<any>;\n accessibilityLabeledBy?: React.RefObject<any>;\n\n /**\n * Identifies the element whose contents or presence are controlled by another element. \n * \n * This is mainly used for a Textbox with a Dropdown PeoplePicker-type list. This allows an \n * accessibility tool to query those other providers for properties and listen to their events.\n */\n accessibilityControls?: React.RefObject<any>; \n\n /**\n * Identifies the ItemType property, which is a text string describing the type of the automation element.\n * ItemType is used to obtain information about items in a list, tree view, or data grid. For example, an item in a file directory view might be a \"Document File\" or a \"Folder\".\n */\n accessibilityItemType?: string;\n\n /**\n * Defines the level of an element in a hierarchical structure or the heading level of a text element.\n * Note: accessibilityRole=\"header\" must be used if using this property to define a heading level.\n */\n accessibilityLevel?: number;\n};\n\nexport type ViewWin32OmitTypes = RN.ViewPropsAndroid &\n RN.ViewPropsIOS &\n RN.AccessibilityPropsAndroid &\n Omit<RN.AccessibilityPropsIOS, SharedAccessibilityPropsIOSandWin32> &\n OmittedAccessibilityPropsWin32;\n\n/**\n * Properties for ViewWin32 component\n */\nexport interface IViewWin32Props extends Omit<RN.ViewProps, ViewWin32OmitTypes>, BasePropsWin32 {\n type?: React.ElementType;\n children?: React.ReactNode;\n /**\n * An access key to hook up to the UIA_AccessKey_Property.\n * Access keys are used in keyboard navigation to allow quick navigation to UI in an application.\n */\n accessibilityAccessKey?: string;\n accessibilityActions?: ReadonlyArray<AccessibilityActionInfo>;\n /**\n * Tells a person using a screen reader what kind of annotation they\n * have selected. If available, it will also tell a person the author of the annotation and\n * the date and time the annotation was posted.\n *\n * Note: If typeID is 'Unknown', a typeName must be provided.\n */\n accessibilityAnnotation?: AccessibilityAnnotationInfo;\n /**\n * accessibilityDescription provides more detailed information specific to the element (i.e. last edit date, full location for a file)\n * while accessibilityHint provides infomation on what will happen when they perform an action.\n *\n */\n accessibilityDescription?: string;\n accessibilityPositionInSet?: number;\n\n accessibilitySetSize?: number;\n animationClass?: string;\n focusable?: boolean;\n enableFocusRing?: boolean;\n /*\n * overrides the default behavior of some components that do not show a tooltip. i.e. components in a menu\n */\n alwaysShowToolTip?: boolean;\n\n /**\n * The onBlur event occurs when an element loses focus. The opposite of onBlur is onFocus. Note that in React\n * Native, unlike in the web, the onBlur event bubbles (similar to onFocusOut in the web).\n *\n * `ev.target === ev.currentTarget` when the focus is being lost from this component.\n * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.\n */\n onBlur?: (ev: RN.NativeSyntheticEvent<{}>) => void;\n /**\n * The onBlur event occurs when an element loses focus. The opposite of onBlur is onFocus. Note that in React\n * Native, unlike in the web, the onBlur event bubbles (similar to onFocusOut in the web).\n *\n * `ev.target === ev.currentTarget` when the focus is being lost from this component.\n * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.\n */\n onBlurCapture?: (ev: RN.NativeSyntheticEvent<{}>) => void;\n /**\n * The onFocus event occurs when an element gets focus. The opposite of onFocus is onBlur. Note that in React\n * Native, unlike in the web, the onFocus event bubbles (similar to onFocusIn in the web).\n *\n * `ev.target === ev.currentTarget` when the focus is being lost from this component.\n * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.\n */\n onFocus?: (ev: RN.NativeSyntheticEvent<{}>) => void;\n /**\n * The onFocus event occurs when an element gets focus. The opposite of onFocus is onBlur. Note that in React\n * Native, unlike in the web, the onFocus event bubbles (similar to onFocusIn in the web).\n *\n * `ev.target === ev.currentTarget` when the focus is being lost from this component.\n * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.\n */\n onFocusCapture?: (ev: RN.NativeSyntheticEvent<{}>) => void;\n\n onKeyDown?: (args: IKeyboardEvent) => void;\n onKeyDownCapture?: (args: IKeyboardEvent) => void;\n onKeyUp?: (args: IKeyboardEvent) => void;\n onKeyUpCapture?: (args: IKeyboardEvent) => void;\n\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n\n keyDownEvents?: IHandledKeyboardEvent[];\n keyUpEvents?: IHandledKeyboardEvent[];\n\n /**\n * Provides a screentip to be used on hover of the view\n */\n tooltip?: string;\n cursor?: Cursor;\n}\n"]}
|
|
@@ -15,6 +15,9 @@ const getDevServer = require('./getDevServer');
|
|
|
15
15
|
function openFileInEditor(file: string, lineNumber: number) {
|
|
16
16
|
fetch(getDevServer().url + 'open-stack-frame', {
|
|
17
17
|
method: 'POST',
|
|
18
|
+
headers: {
|
|
19
|
+
'Content-Type': 'application/json',
|
|
20
|
+
},
|
|
18
21
|
body: JSON.stringify({file, lineNumber}),
|
|
19
22
|
});
|
|
20
23
|
}
|
|
@@ -16,7 +16,7 @@ import type {HermesParsedStack} from './parseHermesStack';
|
|
|
16
16
|
const parseHermesStack = require('./parseHermesStack');
|
|
17
17
|
|
|
18
18
|
function convertHermesStack(stack: HermesParsedStack): Array<StackFrame> {
|
|
19
|
-
const frames = [];
|
|
19
|
+
const frames: Array<StackFrame> = [];
|
|
20
20
|
for (const entry of stack.entries) {
|
|
21
21
|
if (entry.type !== 'FRAME') {
|
|
22
22
|
continue;
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const getDevServer = require('./getDevServer');
|
|
14
|
-
|
|
15
13
|
import type {StackFrame} from '../NativeExceptionsManager';
|
|
16
14
|
|
|
15
|
+
const getDevServer = require('./getDevServer');
|
|
16
|
+
|
|
17
17
|
export type CodeFrame = $ReadOnly<{
|
|
18
18
|
content: string,
|
|
19
19
|
location: ?{
|
|
@@ -22,6 +22,11 @@ type ExceptionDecorator = ExceptionData => ExceptionData;
|
|
|
22
22
|
let userExceptionDecorator: ?ExceptionDecorator;
|
|
23
23
|
let inUserExceptionDecorator = false;
|
|
24
24
|
|
|
25
|
+
// This Symbol is used to decorate an ExtendedError with extra data in select usecases.
|
|
26
|
+
// Note that data passed using this method should be strictly contained,
|
|
27
|
+
// as data that's not serializable/too large may cause issues with passing the error to the native code.
|
|
28
|
+
const decoratedExtraDataKey: symbol = Symbol('decoratedExtraDataKey');
|
|
29
|
+
|
|
25
30
|
/**
|
|
26
31
|
* Allows the app to add information to the exception report before it is sent
|
|
27
32
|
* to native. This API is not final.
|
|
@@ -83,6 +88,8 @@ function reportException(
|
|
|
83
88
|
id: currentExceptionID,
|
|
84
89
|
isFatal,
|
|
85
90
|
extraData: {
|
|
91
|
+
// $FlowFixMe[incompatible-use] we can't define a type with a Symbol-keyed field in flow
|
|
92
|
+
...e[decoratedExtraDataKey],
|
|
86
93
|
jsEngine: e.jsEngine,
|
|
87
94
|
rawStack: e.stack,
|
|
88
95
|
},
|
|
@@ -235,6 +242,7 @@ function installConsoleErrorReporter() {
|
|
|
235
242
|
}
|
|
236
243
|
|
|
237
244
|
module.exports = {
|
|
245
|
+
decoratedExtraDataKey,
|
|
238
246
|
handleException,
|
|
239
247
|
installConsoleErrorReporter,
|
|
240
248
|
SyntheticError,
|
|
@@ -8,11 +8,14 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
export type ExtendedError = Error &
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
11
|
+
export type ExtendedError = Error &
|
|
12
|
+
interface {
|
|
13
|
+
jsEngine?: string,
|
|
14
|
+
preventSymbolication?: boolean,
|
|
15
|
+
componentStack?: string,
|
|
16
|
+
isComponentError?: boolean,
|
|
17
|
+
type?: string,
|
|
18
|
+
// Note: A field keyed by the Symbol ExceptionsManager.decoratedExtraDataKey is also read from ExtendedErrors.
|
|
19
|
+
// This field isn't documented in the types as Flow does not support this usecase, but it's effectively:
|
|
20
|
+
// [decoratedExtraDataKey]?: {[string]: mixed},
|
|
21
|
+
};
|
|
@@ -28,7 +28,6 @@ const start = Date.now();
|
|
|
28
28
|
|
|
29
29
|
require('./setUpGlobals');
|
|
30
30
|
require('./setUpPerformance');
|
|
31
|
-
require('./setUpSystrace');
|
|
32
31
|
require('./setUpErrorHandling');
|
|
33
32
|
require('./polyfillPromise');
|
|
34
33
|
require('./setUpRegeneratorRuntime');
|
|
@@ -44,6 +43,8 @@ if (__DEV__) {
|
|
|
44
43
|
require('../LogBox/LogBox').install();
|
|
45
44
|
}
|
|
46
45
|
|
|
46
|
+
require('../ReactNative/AppRegistry');
|
|
47
|
+
|
|
47
48
|
const GlobalPerformanceLogger = require('../Utilities/GlobalPerformanceLogger');
|
|
48
49
|
// We could just call GlobalPerformanceLogger.markPoint at the top of the file,
|
|
49
50
|
// but then we'd be excluding the time it took to require the logger.
|
|
@@ -9,8 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {TurboModule} from '../TurboModule/RCTExport';
|
|
12
|
+
|
|
12
13
|
import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
|
|
13
14
|
|
|
15
|
+
const Platform = require('../Utilities/Platform');
|
|
16
|
+
|
|
14
17
|
export type StackFrame = {|
|
|
15
18
|
column: ?number,
|
|
16
19
|
file: ?string,
|
|
@@ -18,7 +21,6 @@ export type StackFrame = {|
|
|
|
18
21
|
methodName: string,
|
|
19
22
|
collapse?: boolean,
|
|
20
23
|
|};
|
|
21
|
-
|
|
22
24
|
export type ExceptionData = {
|
|
23
25
|
message: string,
|
|
24
26
|
originalMessage: ?string,
|
|
@@ -31,7 +33,6 @@ export type ExceptionData = {
|
|
|
31
33
|
extraData?: Object,
|
|
32
34
|
...
|
|
33
35
|
};
|
|
34
|
-
|
|
35
36
|
export interface Spec extends TurboModule {
|
|
36
37
|
// Deprecated: Use `reportException`
|
|
37
38
|
+reportFatalException: (
|
|
@@ -55,8 +56,6 @@ export interface Spec extends TurboModule {
|
|
|
55
56
|
+dismissRedbox?: () => void;
|
|
56
57
|
}
|
|
57
58
|
|
|
58
|
-
const Platform = require('../Utilities/Platform');
|
|
59
|
-
|
|
60
59
|
const NativeModule =
|
|
61
60
|
TurboModuleRegistry.getEnforcing<Spec>('ExceptionsManager');
|
|
62
61
|
|
|
@@ -8,9 +8,10 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import EventEmitter from '../vendor/emitter/EventEmitter';
|
|
12
11
|
import type {IEventEmitter} from '../vendor/emitter/EventEmitter';
|
|
13
12
|
|
|
13
|
+
import EventEmitter from '../vendor/emitter/EventEmitter';
|
|
14
|
+
|
|
14
15
|
export type RawEventEmitterEvent = $ReadOnly<{|
|
|
15
16
|
eventName: string,
|
|
16
17
|
// We expect, but do not/cannot require, that nativeEvent is an object
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
* @flow strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import {handleException, SyntheticError} from './ExceptionsManager';
|
|
12
|
-
|
|
13
11
|
import type {ExtendedError} from './ExtendedError';
|
|
14
12
|
|
|
13
|
+
import {SyntheticError, handleException} from './ExceptionsManager';
|
|
14
|
+
|
|
15
15
|
export type CapturedError = {
|
|
16
16
|
+componentStack: string,
|
|
17
17
|
+error: mixed,
|