react-native-windows 0.70.8 → 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/.flowconfig +3 -6
- package/Directory.Build.props +2 -2
- package/Folly/Folly.vcxproj +4 -2
- package/Folly/Folly.vcxproj.filters +7 -3
- package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +59 -43
- package/Folly/TEMP_UntilFollyUpdate/lang/SafeAssert.h +192 -0
- package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.cpp +7 -5
- package/Folly/cgmanifest.json +2 -1
- 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.windows.js +2 -1
- 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.windows.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/Button.windows.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.windows.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/Popup/PopupProps.d.ts +1 -0
- package/Libraries/Components/Popup/PopupProps.js.map +1 -1
- package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
- package/Libraries/Components/Pressable/Pressable.js +73 -15
- package/Libraries/Components/Pressable/Pressable.windows.js +78 -20
- 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.windows.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/RefreshControl.windows.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.windows.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.windows.js +348 -38
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
- package/Libraries/Components/TextInput/TextInputState.js +22 -5
- package/Libraries/Components/TextInput/TextInputState.windows.js +22 -5
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
- 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.windows.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/TouchableHighlight.windows.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/TouchableOpacity.windows.js +54 -16
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.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/View.d.ts +29 -0
- package/Libraries/Components/View/View.js +91 -8
- package/Libraries/Components/View/View.windows.js +181 -94
- package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
- package/Libraries/Components/View/ViewAccessibility.js +70 -1
- package/Libraries/Components/View/ViewAccessibility.windows.js +69 -0
- 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.windows.js +105 -13
- 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/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.windows.js +56 -30
- 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/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/InspectorOverlay.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/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/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.windows.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.windows.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.windows.js +21 -12
- 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.windows.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/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/Text.windows.js +87 -11
- package/Libraries/Text/TextNativeComponent.js +49 -41
- package/Libraries/Text/TextProps.js +64 -7
- package/Libraries/TurboModule/RCTExport.d.ts +12 -0
- 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.windows.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.windows.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/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.windows.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__/ViewWindows-test.js +16 -0
- package/Libraries/platform-types.d.ts +17 -0
- package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
- package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
- package/Microsoft.ReactNative/ABIViewManager.cpp +19 -1
- package/Microsoft.ReactNative/ABIViewManager.h +9 -0
- package/Microsoft.ReactNative/Base/CoreNativeModules.cpp +0 -22
- package/Microsoft.ReactNative/Base/CoreNativeModules.h +0 -2
- package/Microsoft.ReactNative/CompositionContext.idl +31 -0
- package/Microsoft.ReactNative/CompositionHwndHost.idl +33 -0
- package/Microsoft.ReactNative/CompositionRootView.idl +45 -0
- package/Microsoft.ReactNative/CompositionSwitcher.idl +123 -0
- package/Microsoft.ReactNative/CompositionUIService.idl +24 -0
- package/Microsoft.ReactNative/Fabric/ComponentView.h +10 -0
- package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.cpp +83 -0
- package/Microsoft.ReactNative/Fabric/{ComponentViewRegistry.h → Composition/ComponentViewRegistry.h} +9 -12
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +816 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +33 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +833 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +116 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.cpp +137 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +44 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +145 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +49 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.cpp +359 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.h +81 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService.cpp +27 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService.h +23 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +1217 -0
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +113 -0
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +332 -0
- package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +90 -0
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +415 -0
- package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +62 -0
- package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +355 -0
- package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +103 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +177 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +1076 -0
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +99 -0
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputEventEmitter.cpp +0 -0
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputEventEmitter.h +0 -0
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputProps.cpp +1 -31
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputProps.h +15 -28
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputShadowNode.cpp +16 -14
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputShadowNode.h +3 -3
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputState.cpp +27 -10
- package/Microsoft.ReactNative/Fabric/{TextInput → Composition/TextInput}/WindowsTextInputState.h +5 -16
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +65 -157
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +10 -9
- package/Microsoft.ReactNative/Fabric/IComponentViewRegistry.h +34 -0
- package/Microsoft.ReactNative/Fabric/ImageManager.cpp +5 -7
- package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +23 -8
- package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +35 -0
- package/Microsoft.ReactNative/Fabric/WindowsImageManager.cpp +125 -0
- package/Microsoft.ReactNative/Fabric/WindowsImageManager.h +20 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/States.h +5 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rnwcore/States.h +5 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +4 -6
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +17 -0
- package/Microsoft.ReactNative/INativeUIManager.h +1 -1
- package/Microsoft.ReactNative/IReactPackageBuilder.idl +6 -9
- package/Microsoft.ReactNative/IViewManager.idl +14 -0
- package/Microsoft.ReactNative/IViewManagerCore.idl +1 -0
- package/Microsoft.ReactNative/JsiApi.cpp +94 -0
- package/Microsoft.ReactNative/JsiApi.h +13 -0
- package/Microsoft.ReactNative/JsiApi.idl +13 -0
- package/Microsoft.ReactNative/LayoutService.cpp +51 -0
- package/Microsoft.ReactNative/LayoutService.h +32 -0
- package/Microsoft.ReactNative/LayoutService.idl +41 -0
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +32 -20
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +11 -1
- package/Microsoft.ReactNative/Modules/Animated/AdditionAnimatedNode.cpp +33 -16
- package/Microsoft.ReactNative/Modules/Animated/AdditionAnimatedNode.h +3 -2
- package/Microsoft.ReactNative/Modules/Animated/AnimatedNode.cpp +17 -2
- package/Microsoft.ReactNative/Modules/Animated/AnimatedNode.h +19 -1
- package/Microsoft.ReactNative/Modules/Animated/AnimatedPlatformConfig.cpp +23 -0
- package/Microsoft.ReactNative/Modules/Animated/AnimatedPlatformConfig.h +17 -0
- package/Microsoft.ReactNative/Modules/Animated/AnimationDriver.cpp +49 -18
- package/Microsoft.ReactNative/Modules/Animated/AnimationDriver.h +29 -7
- package/Microsoft.ReactNative/Modules/Animated/AnimationUtils.h +45 -0
- package/Microsoft.ReactNative/Modules/Animated/CalculatedAnimationDriver.cpp +6 -5
- package/Microsoft.ReactNative/Modules/Animated/CalculatedAnimationDriver.h +1 -3
- package/Microsoft.ReactNative/Modules/Animated/DecayAnimationDriver.cpp +31 -5
- package/Microsoft.ReactNative/Modules/Animated/DecayAnimationDriver.h +3 -1
- package/Microsoft.ReactNative/Modules/Animated/DiffClampAnimatedNode.cpp +30 -15
- package/Microsoft.ReactNative/Modules/Animated/DiffClampAnimatedNode.h +4 -2
- package/Microsoft.ReactNative/Modules/Animated/DivisionAnimatedNode.cpp +43 -20
- package/Microsoft.ReactNative/Modules/Animated/DivisionAnimatedNode.h +3 -2
- package/Microsoft.ReactNative/Modules/Animated/EventAnimationDriver.cpp +2 -2
- package/Microsoft.ReactNative/Modules/Animated/EventAnimationDriver.h +1 -1
- package/Microsoft.ReactNative/Modules/Animated/FrameAnimationDriver.cpp +45 -8
- package/Microsoft.ReactNative/Modules/Animated/FrameAnimationDriver.h +7 -2
- package/Microsoft.ReactNative/Modules/Animated/InterpolationAnimatedNode.cpp +76 -38
- package/Microsoft.ReactNative/Modules/Animated/InterpolationAnimatedNode.h +6 -5
- package/Microsoft.ReactNative/Modules/Animated/ModulusAnimatedNode.cpp +25 -13
- package/Microsoft.ReactNative/Modules/Animated/ModulusAnimatedNode.h +4 -2
- package/Microsoft.ReactNative/Modules/Animated/MultiplicationAnimatedNode.cpp +33 -16
- package/Microsoft.ReactNative/Modules/Animated/MultiplicationAnimatedNode.h +3 -2
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedModule.cpp +245 -209
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedModule.h +91 -41
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +336 -82
- package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +33 -10
- package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +185 -57
- package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +28 -5
- package/Microsoft.ReactNative/Modules/Animated/SpringAnimationDriver.cpp +72 -20
- package/Microsoft.ReactNative/Modules/Animated/SpringAnimationDriver.h +8 -4
- package/Microsoft.ReactNative/Modules/Animated/StyleAnimatedNode.cpp +20 -5
- package/Microsoft.ReactNative/Modules/Animated/StyleAnimatedNode.h +3 -2
- package/Microsoft.ReactNative/Modules/Animated/SubtractionAnimatedNode.cpp +42 -20
- package/Microsoft.ReactNative/Modules/Animated/SubtractionAnimatedNode.h +3 -1
- package/Microsoft.ReactNative/Modules/Animated/TrackingAnimatedNode.cpp +20 -11
- package/Microsoft.ReactNative/Modules/Animated/TrackingAnimatedNode.h +5 -6
- package/Microsoft.ReactNative/Modules/Animated/TransformAnimatedNode.cpp +36 -9
- package/Microsoft.ReactNative/Modules/Animated/TransformAnimatedNode.h +5 -2
- package/Microsoft.ReactNative/Modules/Animated/ValueAnimatedNode.cpp +60 -32
- package/Microsoft.ReactNative/Modules/Animated/ValueAnimatedNode.h +11 -4
- package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +58 -37
- package/Microsoft.ReactNative/Modules/AppearanceModule.h +25 -32
- package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +3 -1
- package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +42 -10
- package/Microsoft.ReactNative/Modules/LogBoxModule.cpp +157 -39
- package/Microsoft.ReactNative/Modules/LogBoxModule.h +6 -0
- package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +72 -85
- package/Microsoft.ReactNative/Modules/NativeUIManager.h +8 -4
- package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +7 -19
- package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +1 -0
- package/Microsoft.ReactNative/Modules/TimingModule.cpp +48 -87
- package/Microsoft.ReactNative/Modules/TimingModule.h +20 -30
- package/Microsoft.ReactNative/QuirkSettings.cpp +22 -0
- package/Microsoft.ReactNative/QuirkSettings.h +9 -0
- package/Microsoft.ReactNative/QuirkSettings.idl +7 -0
- package/Microsoft.ReactNative/ReactCoreInjection.cpp +7 -2
- package/Microsoft.ReactNative/ReactCoreInjection.h +4 -1
- package/Microsoft.ReactNative/ReactCoreInjection.idl +4 -1
- package/Microsoft.ReactNative/ReactHost/React.h +0 -3
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +28 -23
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +0 -3
- package/Microsoft.ReactNative/ReactNativeHost.cpp +2 -1
- package/Microsoft.ReactNative/ReactPackageBuilder.cpp +8 -3
- package/Microsoft.ReactNative/ReactPackageBuilder.h +4 -3
- package/Microsoft.ReactNative/ReactRootView.cpp +3 -75
- package/Microsoft.ReactNative/ReactRootView.h +0 -6
- package/Microsoft.ReactNative/ReactRootView.idl +1 -9
- package/Microsoft.ReactNative/RedBox.cpp +69 -8
- package/Microsoft.ReactNative/RedBox.h +2 -0
- package/Microsoft.ReactNative/RedBoxHandler.cpp +3 -1
- package/Microsoft.ReactNative/Utils/Helpers.cpp +13 -0
- package/Microsoft.ReactNative/Utils/Helpers.h +1 -0
- package/Microsoft.ReactNative/Utils/ImageUtils.cpp +94 -0
- package/Microsoft.ReactNative/Utils/ImageUtils.h +35 -0
- package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +3 -2
- package/Microsoft.ReactNative/Utils/PropertyUtils.h +31 -9
- package/Microsoft.ReactNative/Views/ControlViewManager.cpp +19 -0
- package/Microsoft.ReactNative/Views/ControlViewManager.h +7 -0
- package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +8 -4
- package/Microsoft.ReactNative/Views/ICompositionRootView.h +19 -0
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +14 -0
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +7 -0
- package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +8 -76
- package/Microsoft.ReactNative/Views/Image/ReactImage.h +1 -23
- package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +16 -3
- package/Microsoft.ReactNative/Views/PopupViewManager.cpp +1 -2
- package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +1 -3
- package/Microsoft.ReactNative/Views/ShadowNodeBase.h +10 -1
- package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +0 -12
- package/Microsoft.ReactNative/Views/ShadowNodeRegistry.h +2 -4
- package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +1 -7
- package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +58 -42
- package/Microsoft.ReactNative/Views/TextViewManager.cpp +47 -31
- package/Microsoft.ReactNative/Views/TextViewManager.h +2 -0
- package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +22 -247
- package/Microsoft.ReactNative/Views/TouchEventHandler.h +1 -6
- package/Microsoft.ReactNative/Views/ViewControl.cpp +2 -2
- package/Microsoft.ReactNative/Views/ViewControl.h +1 -1
- package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +25 -13
- package/Microsoft.ReactNative/Views/ViewManagerBase.h +4 -0
- package/Microsoft.ReactNative/Views/ViewViewManager.cpp +74 -35
- package/Microsoft.ReactNative/Views/ViewViewManager.h +1 -0
- package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +4 -4
- package/Microsoft.ReactNative/XamlHelper.cpp +13 -0
- package/Microsoft.ReactNative/XamlHelper.h +4 -0
- package/Microsoft.ReactNative/XamlHelper.idl +9 -0
- package/Microsoft.ReactNative/XamlUIService.cpp +16 -0
- package/Microsoft.ReactNative/XamlUIService.h +2 -0
- package/Microsoft.ReactNative/XamlUIService.idl +4 -0
- package/Microsoft.ReactNative/XamlView.cpp +10 -0
- package/Microsoft.ReactNative/XamlView.h +7 -2
- package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +76 -0
- package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +13 -0
- package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.cpp +71 -2
- package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.h +3 -3
- package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +1 -2
- package/Microsoft.ReactNative.Cxx/ModuleRegistration.cpp +14 -4
- package/Microsoft.ReactNative.Cxx/ModuleRegistration.h +5 -2
- package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +2 -0
- package/Microsoft.ReactNative.Cxx/TurboModuleProvider.h +1 -2
- package/Microsoft.ReactNative.Managed/IReactPromise.cs +0 -20
- package/Microsoft.ReactNative.Managed/JSValue.cs +1 -1
- package/Microsoft.ReactNative.Managed/JSValueReader.cs +438 -444
- package/Microsoft.ReactNative.Managed/JSValueWriter.cs +8 -7
- package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +22 -7
- package/Microsoft.ReactNative.Managed/ReactAttributes.cs +16 -0
- package/Microsoft.ReactNative.Managed/ReactConstantProvider.cs +5 -0
- package/Microsoft.ReactNative.Managed/ReactContext.cs +19 -2
- package/Microsoft.ReactNative.Managed/ReactDispatcher.cs +34 -0
- package/Microsoft.ReactNative.Managed/ReactError.cs +36 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationArgsOf.cs +23 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationHandlerOf.cs +7 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationIdOf.cs +44 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationService.cs +146 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationSubscription.cs +43 -0
- package/Microsoft.ReactNative.Managed/ReactNotificationSubscriptionRevoker.cs +64 -0
- package/Microsoft.ReactNative.Managed/ReactPromise.cs +123 -81
- package/Microsoft.ReactNative.Managed/ReactPropertyBag.cs +91 -0
- package/Microsoft.ReactNative.Managed/ReactPropertyIdOf.cs +44 -0
- package/Microsoft.ReactNative.Managed/ReactPropertyName.cs +39 -0
- package/Microsoft.ReactNative.Managed/ReactPropertyNamespace.cs +26 -0
- package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +44 -0
- package/Microsoft.ReactNative.Managed/ReactTaskExtensions.cs +15 -4
- package/Microsoft.ReactNative.Managed/packages.lock.json +51 -2
- package/Microsoft.ReactNative.Managed.CodeGen/App.cs +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +793 -731
- package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.Module.cs +81 -44
- package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.Serializers.cs +57 -18
- package/Microsoft.ReactNative.Managed.CodeGen/DiagnosticDescriptors.cs +36 -4
- package/Microsoft.ReactNative.Managed.CodeGen/Microsoft.ReactNative.Managed.CodeGen.csproj +5 -5
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactAssembly.cs +3 -3
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactGetConstants.cs +17 -0
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactMethod.cs +11 -2
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactModule.cs +2 -0
- package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactTypes.cs +10 -4
- package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Debug.pubxml +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Release.pubxml +1 -1
- package/Microsoft.ReactNative.Managed.CodeGen/ReactNativeNames.cs +29 -3
- package/Microsoft.ReactNative.Managed.CodeGen/SyntaxHelpers.cs +6 -0
- package/Mso/smartPtr/cntPtr.h +21 -21
- package/PropertySheets/Codegen.props +15 -0
- package/PropertySheets/Codegen.targets +19 -0
- package/PropertySheets/CppAppConsumeCSharpModule.props +3 -0
- package/PropertySheets/External/Microsoft.ReactNative.CSharp.Dependencies.props +17 -0
- package/PropertySheets/External/Microsoft.ReactNative.Common.props +3 -0
- package/PropertySheets/External/Microsoft.ReactNative.Cpp.ProjectReferences.props +0 -3
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.props +1 -0
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.targets +3 -0
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpLib.targets +1 -0
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.props +1 -0
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.targets +3 -0
- package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppLib.targets +1 -0
- package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharp.PackageReferences.props +11 -0
- package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.props +1 -0
- package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.targets +51 -0
- package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +10 -1
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/PropertySheets/JSEngine.props +10 -3
- package/PropertySheets/ManagedCodeGen/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
- package/PropertySheets/NewAPIDeclarations.props +25 -0
- package/PropertySheets/React.Cpp.props +2 -2
- package/PropertySheets/WinUI.props +1 -1
- package/README.md +2 -2
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ConcreteComponentDescriptor.h +2 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBufferBuilder.cpp +182 -0
- package/ReactCommon/Yoga.cpp +76 -29
- package/Scripts/IntegrationTests.ps1 +1 -1
- package/Scripts/JustMyXaml.ps1 +8 -8
- package/Scripts/Microsoft.ReactNative.Managed.nuspec +1 -1
- package/Scripts/Microsoft.ReactNative.WindowsAppSDK.nuspec +3 -3
- package/Scripts/OfficeReact.Win32.nuspec +2 -0
- package/Scripts/Tfs/Layout-Desktop-Headers.ps1 +31 -1
- package/Scripts/UnitTest.ps1 +1 -1
- package/Scripts/rnw-dependencies.ps1 +317 -162
- package/Shared/Composition/CompositionSwitcher.interop.h +39 -0
- package/Shared/HermesShim.h +1 -1
- package/Shared/JSI/ChakraRuntime.cpp +42 -0
- package/Shared/JSI/ChakraRuntime.h +13 -0
- package/Shared/JSI/NapiJsiV8RuntimeHolder.h +0 -2
- package/Shared/Networking/IWebSocketResource.h +1 -0
- package/Shared/Networking/OriginPolicyHttpFilter.cpp +6 -6
- package/Shared/OInstance.cpp +2 -0
- package/Shared/Shared.vcxitems +34 -4
- package/Shared/Shared.vcxitems.filters +1 -12
- package/Shared/V8JSIRuntimeHolder.h +0 -2
- package/codegen/NativeAccessibilityInfoSpec.g.h +12 -12
- package/codegen/NativeAccessibilityManagerSpec.g.h +37 -31
- package/codegen/NativeActionSheetManagerSpec.g.h +6 -6
- package/codegen/NativeAlertManagerSpec.g.h +4 -2
- package/codegen/NativeAnimatedModuleSpec.g.h +48 -48
- package/codegen/NativeAnimatedTurboModuleSpec.g.h +48 -48
- package/codegen/NativeAnimationsDebugModuleSpec.g.h +4 -4
- package/codegen/NativeAppStateSpec.g.h +6 -6
- package/codegen/NativeAppearanceSpec.g.h +6 -6
- package/codegen/NativeBlobModuleSpec.g.h +12 -12
- package/codegen/NativeBugReportingSpec.g.h +6 -6
- package/codegen/NativeClipboardSpec.g.h +4 -4
- package/codegen/NativeDatePickerAndroidSpec.g.h +2 -2
- package/codegen/NativeDevLoadingViewSpec.g.h +4 -4
- package/codegen/NativeDevMenuSpec.g.h +10 -10
- package/codegen/NativeDevSettingsSpec.g.h +22 -22
- package/codegen/NativeDevSplitBundleLoaderSpec.g.h +2 -2
- package/codegen/NativeDeviceEventManagerSpec.g.h +2 -2
- package/codegen/NativeDialogManagerAndroidSpec.g.h +2 -2
- package/codegen/NativeDialogManagerWindowsSpec.g.h +2 -2
- package/codegen/NativeExceptionsManagerSpec.g.h +10 -10
- package/codegen/NativeFileReaderModuleSpec.g.h +4 -4
- package/codegen/NativeFrameRateLoggerSpec.g.h +8 -8
- package/codegen/NativeHeadlessJsTaskSupportSpec.g.h +4 -4
- package/codegen/NativeI18nManagerSpec.g.h +6 -6
- package/codegen/NativeImageEditorSpec.g.h +2 -2
- package/codegen/NativeImageLoaderAndroidSpec.g.h +10 -10
- package/codegen/NativeImageLoaderIOSSpec.g.h +10 -10
- package/codegen/NativeImageStoreAndroidSpec.g.h +2 -2
- package/codegen/NativeImageStoreIOSSpec.g.h +8 -8
- package/codegen/NativeIntentAndroidSpec.g.h +10 -10
- package/codegen/NativeJSCHeapCaptureSpec.g.h +2 -2
- package/codegen/NativeJSCSamplingProfilerSpec.g.h +2 -2
- package/codegen/NativeKeyboardObserverSpec.g.h +4 -4
- package/codegen/NativeLinkingManagerSpec.g.h +12 -12
- package/codegen/NativeLogBoxSpec.g.h +4 -4
- package/codegen/NativeModalManagerSpec.g.h +4 -4
- package/codegen/NativeNetworkingAndroidSpec.g.h +10 -10
- package/codegen/NativeNetworkingIOSSpec.g.h +10 -10
- package/codegen/NativePerformanceObserverSpec.g.h +69 -0
- package/codegen/NativePermissionsAndroidSpec.g.h +8 -8
- package/codegen/NativePlatformConstantsAndroidSpec.g.h +2 -2
- package/codegen/NativePushNotificationManagerIOSSpec.g.h +36 -36
- package/codegen/NativeRedBoxSpec.g.h +4 -4
- package/codegen/NativeSampleTurboModuleSpec.g.h +22 -22
- package/codegen/NativeSegmentFetcherSpec.g.h +4 -4
- package/codegen/NativeSettingsManagerSpec.g.h +4 -4
- package/codegen/NativeShareModuleSpec.g.h +2 -2
- package/codegen/NativeSoundManagerSpec.g.h +2 -2
- package/codegen/NativeStatusBarManagerAndroidSpec.g.h +8 -8
- package/codegen/NativeStatusBarManagerIOSSpec.g.h +12 -12
- package/codegen/NativeTimingSpec.g.h +6 -6
- package/codegen/NativeToastAndroidSpec.g.h +6 -6
- package/codegen/NativeUIManagerSpec.g.h +50 -50
- package/codegen/NativeVibrationSpec.g.h +6 -6
- package/codegen/NativeWebSocketModuleSpec.g.h +14 -14
- package/codegen/react/components/rnwcore/ComponentDescriptors.h +3 -4
- package/codegen/react/components/rnwcore/EventEmitters.cpp +5 -4
- package/codegen/react/components/rnwcore/EventEmitters.h +21 -26
- package/codegen/react/components/rnwcore/Props.cpp +3 -10
- package/codegen/react/components/rnwcore/Props.h +19 -28
- package/codegen/react/components/rnwcore/ShadowNodes.cpp +3 -4
- package/codegen/react/components/rnwcore/ShadowNodes.h +36 -30
- package/codegen/react/components/rnwcore/States.cpp +18 -0
- package/codegen/react/components/rnwcore/States.h +156 -0
- package/codegen/rnwcoreJSI-generated.cpp +1670 -0
- package/codegen/rnwcoreJSI.h +5620 -0
- package/fmt/cgmanifest.json +1 -0
- package/fmt/fmt.vcxproj +2 -1
- package/index.js +89 -55
- package/index.windows.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/just-task.js +5 -1
- package/package.json +37 -37
- package/template/cpp-app/proj/MyApp.sln +2 -2
- package/template/cpp-app/proj/MyApp.vcxproj +3 -3
- package/template/cpp-app/src/ReactPackageProvider.cpp +1 -1
- package/template/cpp-lib/proj/MyLib.sln +2 -2
- package/template/cpp-lib/proj/MyLib.vcxproj +3 -3
- package/template/cpp-lib/src/ReactPackageProvider.cpp +1 -1
- package/template/cs-app/proj/MyApp.csproj +10 -8
- package/template/cs-app/proj/MyApp.sln +2 -2
- package/template/cs-app-WinAppSDK/MyApp/App.xaml.cs +3 -3
- package/template/cs-app-WinAppSDK/proj/ExperimentalFeatures.props +2 -1
- package/template/cs-app-WinAppSDK/proj/MyApp.csproj +19 -15
- package/template/cs-app-WinAppSDK/proj/MyApp.sln +2 -2
- package/template/cs-lib/proj/MyLib.csproj +14 -8
- package/template/cs-lib/proj/MyLib.sln +2 -2
- package/template/shared-app/proj/ExperimentalFeatures.props +2 -0
- package/template/shared-lib/proj/ExperimentalFeatures.props +2 -0
- package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
- package/Libraries/Components/MaskedView/MaskedViewIOS.windows.js +0 -9
- 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.windows.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/StyleSheet/processTransform.windows.js +0 -274
- package/Libraries/Utilities/JSDevSupportModule.js +0 -37
- package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
- package/Microsoft.ReactNative/Fabric/ActivityIndicatorComponentView.cpp +0 -81
- package/Microsoft.ReactNative/Fabric/ActivityIndicatorComponentView.h +0 -46
- package/Microsoft.ReactNative/Fabric/ComponentViewRegistry.cpp +0 -118
- package/Microsoft.ReactNative/Fabric/ImageComponentView.cpp +0 -138
- package/Microsoft.ReactNative/Fabric/ImageComponentView.h +0 -49
- package/Microsoft.ReactNative/Fabric/ParagraphComponentView.cpp +0 -160
- package/Microsoft.ReactNative/Fabric/ParagraphComponentView.h +0 -40
- package/Microsoft.ReactNative/Fabric/ScrollViewComponentView.cpp +0 -200
- package/Microsoft.ReactNative/Fabric/ScrollViewComponentView.h +0 -62
- package/Microsoft.ReactNative/Fabric/SliderComponentView.cpp +0 -107
- package/Microsoft.ReactNative/Fabric/SliderComponentView.h +0 -51
- package/Microsoft.ReactNative/Fabric/SwitchComponentView.cpp +0 -109
- package/Microsoft.ReactNative/Fabric/SwitchComponentView.h +0 -52
- package/Microsoft.ReactNative/Fabric/TextComponentView.cpp +0 -98
- package/Microsoft.ReactNative/Fabric/TextComponentView.h +0 -39
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentDescriptor.h +0 -197
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.cpp +0 -308
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.h +0 -52
- package/Microsoft.ReactNative/Fabric/ViewComponentView.cpp +0 -229
- package/Microsoft.ReactNative/Fabric/ViewComponentView.h +0 -56
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.cpp +0 -46
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.h +0 -30
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.h +0 -145
- package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +0 -344
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/BaseTextProps.cpp +0 -313
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.cpp +0 -455
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/PropsMacros.h +0 -91
- package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/CompactValue.h +0 -206
- package/codegen/NativeAsyncLocalStorageSpec.g.h +0 -111
- package/codegen/NativeAsyncSQLiteDBStorageSpec.g.h +0 -111
- package/codegen/NativeImagePickerIOSSpec.g.h +0 -79
- package/codegen/NativeJSDevSupportSpec.g.h +0 -57
- 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/typings-index.d.ts +0 -19
- package/typings-index.js +0 -44
- package/typings-index.js.map +0 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* This exposes the native ToastAndroid module as a JS module. This has a function 'show'
|
|
12
|
+
* which takes the following parameters:
|
|
13
|
+
*
|
|
14
|
+
* 1. String message: A string with the text to toast
|
|
15
|
+
* 2. int duration: The duration of the toast. May be ToastAndroid.SHORT or ToastAndroid.LONG
|
|
16
|
+
*
|
|
17
|
+
* There is also a function `showWithGravity` to specify the layout gravity. May be
|
|
18
|
+
* ToastAndroid.TOP, ToastAndroid.BOTTOM, ToastAndroid.CENTER
|
|
19
|
+
*/
|
|
20
|
+
export interface ToastAndroidStatic {
|
|
21
|
+
/**
|
|
22
|
+
* String message: A string with the text to toast
|
|
23
|
+
* int duration: The duration of the toast.
|
|
24
|
+
* May be ToastAndroid.SHORT or ToastAndroid.LONG
|
|
25
|
+
*/
|
|
26
|
+
show(message: string, duration: number): void;
|
|
27
|
+
/** `gravity` may be ToastAndroid.TOP, ToastAndroid.BOTTOM, ToastAndroid.CENTER */
|
|
28
|
+
showWithGravity(message: string, duration: number, gravity: number): void;
|
|
29
|
+
|
|
30
|
+
showWithGravityAndOffset(
|
|
31
|
+
message: string,
|
|
32
|
+
duration: number,
|
|
33
|
+
gravity: number,
|
|
34
|
+
xOffset: number,
|
|
35
|
+
yOffset: number,
|
|
36
|
+
): void;
|
|
37
|
+
// Toast duration constants
|
|
38
|
+
SHORT: number;
|
|
39
|
+
LONG: number;
|
|
40
|
+
// Toast gravity constants
|
|
41
|
+
TOP: number;
|
|
42
|
+
BOTTOM: number;
|
|
43
|
+
CENTER: number;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export const ToastAndroid: ToastAndroidStatic;
|
|
47
|
+
export type ToastAndroid = ToastAndroidStatic;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type * as React from 'react';
|
|
11
|
+
import {Insets} from '../../../types/public/Insets';
|
|
12
|
+
import {GestureResponderEvent} from '../../Types/CoreEventTypes';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* //FIXME: need to find documentation on which component is a TTouchable and can implement that interface
|
|
16
|
+
* @see React.DOMAtributes
|
|
17
|
+
*/
|
|
18
|
+
export interface Touchable {
|
|
19
|
+
onTouchStart?: ((event: GestureResponderEvent) => void) | undefined;
|
|
20
|
+
onTouchMove?: ((event: GestureResponderEvent) => void) | undefined;
|
|
21
|
+
onTouchEnd?: ((event: GestureResponderEvent) => void) | undefined;
|
|
22
|
+
onTouchCancel?: ((event: GestureResponderEvent) => void) | undefined;
|
|
23
|
+
onTouchEndCapture?: ((event: GestureResponderEvent) => void) | undefined;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export const Touchable: {
|
|
27
|
+
TOUCH_TARGET_DEBUG: boolean;
|
|
28
|
+
renderDebugView: (config: {
|
|
29
|
+
color: string | number;
|
|
30
|
+
hitSlop?: Insets | undefined;
|
|
31
|
+
}) => React.ReactElement | null;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* @see https://github.com/facebook/react-native/blob/0.34-stable\Libraries\Components\Touchable\Touchable.js
|
|
36
|
+
*/
|
|
37
|
+
interface TouchableMixin {
|
|
38
|
+
/**
|
|
39
|
+
* Invoked when the item should be highlighted. Mixers should implement this
|
|
40
|
+
* to visually distinguish the `VisualRect` so that the user knows that
|
|
41
|
+
* releasing a touch will result in a "selection" (analog to click).
|
|
42
|
+
*/
|
|
43
|
+
touchableHandleActivePressIn(e: GestureResponderEvent): void;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Invoked when the item is "active" (in that it is still eligible to become
|
|
47
|
+
* a "select") but the touch has left the `PressRect`. Usually the mixer will
|
|
48
|
+
* want to unhighlight the `VisualRect`. If the user (while pressing) moves
|
|
49
|
+
* back into the `PressRect` `touchableHandleActivePressIn` will be invoked
|
|
50
|
+
* again and the mixer should probably highlight the `VisualRect` again. This
|
|
51
|
+
* event will not fire on an `touchEnd/mouseUp` event, only move events while
|
|
52
|
+
* the user is depressing the mouse/touch.
|
|
53
|
+
*/
|
|
54
|
+
touchableHandleActivePressOut(e: GestureResponderEvent): void;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Invoked when the item is "selected" - meaning the interaction ended by
|
|
58
|
+
* letting up while the item was either in the state
|
|
59
|
+
* `RESPONDER_ACTIVE_PRESS_IN` or `RESPONDER_INACTIVE_PRESS_IN`.
|
|
60
|
+
*/
|
|
61
|
+
touchableHandlePress(e: GestureResponderEvent): void;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Invoked when the item is long pressed - meaning the interaction ended by
|
|
65
|
+
* letting up while the item was in `RESPONDER_ACTIVE_LONG_PRESS_IN`. If
|
|
66
|
+
* `touchableHandleLongPress` is *not* provided, `touchableHandlePress` will
|
|
67
|
+
* be called as it normally is. If `touchableHandleLongPress` is provided, by
|
|
68
|
+
* default any `touchableHandlePress` callback will not be invoked. To
|
|
69
|
+
* override this default behavior, override `touchableLongPressCancelsPress`
|
|
70
|
+
* to return false. As a result, `touchableHandlePress` will be called when
|
|
71
|
+
* lifting up, even if `touchableHandleLongPress` has also been called.
|
|
72
|
+
*/
|
|
73
|
+
touchableHandleLongPress(e: GestureResponderEvent): void;
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Returns the amount to extend the `HitRect` into the `PressRect`. Positive
|
|
77
|
+
* numbers mean the size expands outwards.
|
|
78
|
+
*/
|
|
79
|
+
touchableGetPressRectOffset(): Insets;
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Returns the number of millis to wait before triggering a highlight.
|
|
83
|
+
*/
|
|
84
|
+
touchableGetHighlightDelayMS(): number;
|
|
85
|
+
|
|
86
|
+
// These methods are undocumented but still being used by TouchableMixin internals
|
|
87
|
+
touchableGetLongPressDelayMS(): number;
|
|
88
|
+
touchableGetPressOutDelayMS(): number;
|
|
89
|
+
touchableGetHitSlop(): Insets;
|
|
90
|
+
}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
12
|
+
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
13
|
+
import type {PressEvent} from '../../Types/CoreEventTypes';
|
|
14
|
+
|
|
15
|
+
import * as React from 'react';
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* `Touchable`: Taps done right.
|
|
19
|
+
*
|
|
20
|
+
* You hook your `ResponderEventPlugin` events into `Touchable`. `Touchable`
|
|
21
|
+
* will measure time/geometry and tells you when to give feedback to the user.
|
|
22
|
+
*
|
|
23
|
+
* ====================== Touchable Tutorial ===============================
|
|
24
|
+
* The `Touchable` mixin helps you handle the "press" interaction. It analyzes
|
|
25
|
+
* the geometry of elements, and observes when another responder (scroll view
|
|
26
|
+
* etc) has stolen the touch lock. It notifies your component when it should
|
|
27
|
+
* give feedback to the user. (bouncing/highlighting/unhighlighting).
|
|
28
|
+
*
|
|
29
|
+
* - When a touch was activated (typically you highlight)
|
|
30
|
+
* - When a touch was deactivated (typically you unhighlight)
|
|
31
|
+
* - When a touch was "pressed" - a touch ended while still within the geometry
|
|
32
|
+
* of the element, and no other element (like scroller) has "stolen" touch
|
|
33
|
+
* lock ("responder") (Typically you bounce the element).
|
|
34
|
+
*
|
|
35
|
+
* A good tap interaction isn't as simple as you might think. There should be a
|
|
36
|
+
* slight delay before showing a highlight when starting a touch. If a
|
|
37
|
+
* subsequent touch move exceeds the boundary of the element, it should
|
|
38
|
+
* unhighlight, but if that same touch is brought back within the boundary, it
|
|
39
|
+
* should rehighlight again. A touch can move in and out of that boundary
|
|
40
|
+
* several times, each time toggling highlighting, but a "press" is only
|
|
41
|
+
* triggered if that touch ends while within the element's boundary and no
|
|
42
|
+
* scroller (or anything else) has stolen the lock on touches.
|
|
43
|
+
*
|
|
44
|
+
* To create a new type of component that handles interaction using the
|
|
45
|
+
* `Touchable` mixin, do the following:
|
|
46
|
+
*
|
|
47
|
+
* - Initialize the `Touchable` state.
|
|
48
|
+
*
|
|
49
|
+
* getInitialState: function() {
|
|
50
|
+
* return merge(this.touchableGetInitialState(), yourComponentState);
|
|
51
|
+
* }
|
|
52
|
+
*
|
|
53
|
+
* - Choose the rendered component who's touches should start the interactive
|
|
54
|
+
* sequence. On that rendered node, forward all `Touchable` responder
|
|
55
|
+
* handlers. You can choose any rendered node you like. Choose a node whose
|
|
56
|
+
* hit target you'd like to instigate the interaction sequence:
|
|
57
|
+
*
|
|
58
|
+
* // In render function:
|
|
59
|
+
* return (
|
|
60
|
+
* <View
|
|
61
|
+
* onStartShouldSetResponder={this.touchableHandleStartShouldSetResponder}
|
|
62
|
+
* onResponderTerminationRequest={this.touchableHandleResponderTerminationRequest}
|
|
63
|
+
* onResponderGrant={this.touchableHandleResponderGrant}
|
|
64
|
+
* onResponderMove={this.touchableHandleResponderMove}
|
|
65
|
+
* onResponderRelease={this.touchableHandleResponderRelease}
|
|
66
|
+
* onResponderTerminate={this.touchableHandleResponderTerminate}>
|
|
67
|
+
* <View>
|
|
68
|
+
* Even though the hit detection/interactions are triggered by the
|
|
69
|
+
* wrapping (typically larger) node, we usually end up implementing
|
|
70
|
+
* custom logic that highlights this inner one.
|
|
71
|
+
* </View>
|
|
72
|
+
* </View>
|
|
73
|
+
* );
|
|
74
|
+
*
|
|
75
|
+
* - You may set up your own handlers for each of these events, so long as you
|
|
76
|
+
* also invoke the `touchable*` handlers inside of your custom handler.
|
|
77
|
+
*
|
|
78
|
+
* - Implement the handlers on your component class in order to provide
|
|
79
|
+
* feedback to the user. See documentation for each of these class methods
|
|
80
|
+
* that you should implement.
|
|
81
|
+
*
|
|
82
|
+
* touchableHandlePress: function() {
|
|
83
|
+
* this.performBounceAnimation(); // or whatever you want to do.
|
|
84
|
+
* },
|
|
85
|
+
* touchableHandleActivePressIn: function() {
|
|
86
|
+
* this.beginHighlighting(...); // Whatever you like to convey activation
|
|
87
|
+
* },
|
|
88
|
+
* touchableHandleActivePressOut: function() {
|
|
89
|
+
* this.endHighlighting(...); // Whatever you like to convey deactivation
|
|
90
|
+
* },
|
|
91
|
+
*
|
|
92
|
+
* - There are more advanced methods you can implement (see documentation below):
|
|
93
|
+
* touchableGetHighlightDelayMS: function() {
|
|
94
|
+
* return 20;
|
|
95
|
+
* }
|
|
96
|
+
* // In practice, *always* use a predeclared constant (conserve memory).
|
|
97
|
+
* touchableGetPressRectOffset: function() {
|
|
98
|
+
* return {top: 20, left: 20, right: 20, bottom: 100};
|
|
99
|
+
* }
|
|
100
|
+
*/
|
|
101
|
+
|
|
102
|
+
// Default amount "active" region protrudes beyond box
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* By convention, methods prefixed with underscores are meant to be @private,
|
|
106
|
+
* and not @protected. Mixers shouldn't access them - not even to provide them
|
|
107
|
+
* as callback handlers.
|
|
108
|
+
*
|
|
109
|
+
*
|
|
110
|
+
* ========== Geometry =========
|
|
111
|
+
* `Touchable` only assumes that there exists a `HitRect` node. The `PressRect`
|
|
112
|
+
* is an abstract box that is extended beyond the `HitRect`.
|
|
113
|
+
*
|
|
114
|
+
* +--------------------------+
|
|
115
|
+
* | | - "Start" events in `HitRect` cause `HitRect`
|
|
116
|
+
* | +--------------------+ | to become the responder.
|
|
117
|
+
* | | +--------------+ | | - `HitRect` is typically expanded around
|
|
118
|
+
* | | | | | | the `VisualRect`, but shifted downward.
|
|
119
|
+
* | | | VisualRect | | | - After pressing down, after some delay,
|
|
120
|
+
* | | | | | | and before letting up, the Visual React
|
|
121
|
+
* | | +--------------+ | | will become "active". This makes it eligible
|
|
122
|
+
* | | HitRect | | for being highlighted (so long as the
|
|
123
|
+
* | +--------------------+ | press remains in the `PressRect`).
|
|
124
|
+
* | PressRect o |
|
|
125
|
+
* +----------------------|---+
|
|
126
|
+
* Out Region |
|
|
127
|
+
* +-----+ This gap between the `HitRect` and
|
|
128
|
+
* `PressRect` allows a touch to move far away
|
|
129
|
+
* from the original hit rect, and remain
|
|
130
|
+
* highlighted, and eligible for a "Press".
|
|
131
|
+
* Customize this via
|
|
132
|
+
* `touchableGetPressRectOffset()`.
|
|
133
|
+
*
|
|
134
|
+
*
|
|
135
|
+
*
|
|
136
|
+
* ======= State Machine =======
|
|
137
|
+
*
|
|
138
|
+
* +-------------+ <---+ RESPONDER_RELEASE
|
|
139
|
+
* |NOT_RESPONDER|
|
|
140
|
+
* +-------------+ <---+ RESPONDER_TERMINATED
|
|
141
|
+
* +
|
|
142
|
+
* | RESPONDER_GRANT (HitRect)
|
|
143
|
+
* v
|
|
144
|
+
* +---------------------------+ DELAY +-------------------------+ T + DELAY +------------------------------+
|
|
145
|
+
* |RESPONDER_INACTIVE_PRESS_IN|+-------->|RESPONDER_ACTIVE_PRESS_IN| +------------> |RESPONDER_ACTIVE_LONG_PRESS_IN|
|
|
146
|
+
* +---------------------------+ +-------------------------+ +------------------------------+
|
|
147
|
+
* + ^ + ^ + ^
|
|
148
|
+
* |LEAVE_ |ENTER_ |LEAVE_ |ENTER_ |LEAVE_ |ENTER_
|
|
149
|
+
* |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT
|
|
150
|
+
* | | | | | |
|
|
151
|
+
* v + v + v +
|
|
152
|
+
* +----------------------------+ DELAY +--------------------------+ +-------------------------------+
|
|
153
|
+
* |RESPONDER_INACTIVE_PRESS_OUT|+------->|RESPONDER_ACTIVE_PRESS_OUT| |RESPONDER_ACTIVE_LONG_PRESS_OUT|
|
|
154
|
+
* +----------------------------+ +--------------------------+ +-------------------------------+
|
|
155
|
+
*
|
|
156
|
+
* T + DELAY => LONG_PRESS_DELAY_MS + DELAY
|
|
157
|
+
*
|
|
158
|
+
* Not drawn are the side effects of each transition. The most important side
|
|
159
|
+
* effect is the `touchableHandlePress` abstract method invocation that occurs
|
|
160
|
+
* when a responder is released while in either of the "Press" states.
|
|
161
|
+
*
|
|
162
|
+
* The other important side effects are the highlight abstract method
|
|
163
|
+
* invocations (internal callbacks) to be implemented by the mixer.
|
|
164
|
+
*
|
|
165
|
+
*
|
|
166
|
+
* @lends Touchable.prototype
|
|
167
|
+
*/
|
|
168
|
+
interface TouchableMixinType {
|
|
169
|
+
/**
|
|
170
|
+
* Invoked when the item receives focus. Mixers might override this to
|
|
171
|
+
* visually distinguish the `VisualRect` so that the user knows that it
|
|
172
|
+
* currently has the focus. Most platforms only support a single element being
|
|
173
|
+
* focused at a time, in which case there may have been a previously focused
|
|
174
|
+
* element that was blurred just prior to this. This can be overridden when
|
|
175
|
+
* using `Touchable.Mixin.withoutDefaultFocusAndBlur`.
|
|
176
|
+
*/
|
|
177
|
+
touchableHandleFocus: (e: Event) => void;
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Invoked when the item loses focus. Mixers might override this to
|
|
181
|
+
* visually distinguish the `VisualRect` so that the user knows that it
|
|
182
|
+
* no longer has focus. Most platforms only support a single element being
|
|
183
|
+
* focused at a time, in which case the focus may have moved to another.
|
|
184
|
+
* This can be overridden when using
|
|
185
|
+
* `Touchable.Mixin.withoutDefaultFocusAndBlur`.
|
|
186
|
+
*/
|
|
187
|
+
touchableHandleBlur: (e: Event) => void;
|
|
188
|
+
|
|
189
|
+
componentDidMount: () => void;
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Clear all timeouts on unmount
|
|
193
|
+
*/
|
|
194
|
+
componentWillUnmount: () => void;
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* It's prefer that mixins determine state in this way, having the class
|
|
198
|
+
* explicitly mix the state in the one and only `getInitialState` method.
|
|
199
|
+
*
|
|
200
|
+
* @return {object} State object to be placed inside of
|
|
201
|
+
* `this.state.touchable`.
|
|
202
|
+
*/
|
|
203
|
+
touchableGetInitialState: () => $TEMPORARY$object<{|
|
|
204
|
+
touchable: $TEMPORARY$object<{|responderID: null, touchState: void|}>,
|
|
205
|
+
|}>;
|
|
206
|
+
|
|
207
|
+
// ==== Hooks to Gesture Responder system ====
|
|
208
|
+
/**
|
|
209
|
+
* Must return true if embedded in a native platform scroll view.
|
|
210
|
+
*/
|
|
211
|
+
touchableHandleResponderTerminationRequest: () => any;
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Must return true to start the process of `Touchable`.
|
|
215
|
+
*/
|
|
216
|
+
touchableHandleStartShouldSetResponder: () => any;
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Return true to cancel press on long press.
|
|
220
|
+
*/
|
|
221
|
+
touchableLongPressCancelsPress: () => boolean;
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Place as callback for a DOM element's `onResponderGrant` event.
|
|
225
|
+
* @param {SyntheticEvent} e Synthetic event from event system.
|
|
226
|
+
*
|
|
227
|
+
*/
|
|
228
|
+
touchableHandleResponderGrant: (e: PressEvent) => void;
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Place as callback for a DOM element's `onResponderRelease` event.
|
|
232
|
+
*/
|
|
233
|
+
touchableHandleResponderRelease: (e: PressEvent) => void;
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* Place as callback for a DOM element's `onResponderTerminate` event.
|
|
237
|
+
*/
|
|
238
|
+
touchableHandleResponderTerminate: (e: PressEvent) => void;
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* Place as callback for a DOM element's `onResponderMove` event.
|
|
242
|
+
*/
|
|
243
|
+
touchableHandleResponderMove: (e: PressEvent) => void;
|
|
244
|
+
|
|
245
|
+
withoutDefaultFocusAndBlur: {...};
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
export type TouchableType = {
|
|
249
|
+
Mixin: TouchableMixinType,
|
|
250
|
+
/**
|
|
251
|
+
* Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).
|
|
252
|
+
*/
|
|
253
|
+
renderDebugView: ({
|
|
254
|
+
color: ColorValue,
|
|
255
|
+
hitSlop: EdgeInsetsProp,
|
|
256
|
+
...
|
|
257
|
+
}) => null | React.Node,
|
|
258
|
+
};
|
|
@@ -8,18 +8,18 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import * as React from 'react';
|
|
12
|
-
import BoundingDimensions from './BoundingDimensions';
|
|
13
|
-
import Platform from '../../Utilities/Platform';
|
|
14
|
-
import Position from './Position';
|
|
15
|
-
import UIManager from '../../ReactNative/UIManager';
|
|
16
|
-
import SoundManager from '../Sound/SoundManager';
|
|
17
|
-
|
|
18
|
-
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
19
|
-
|
|
20
|
-
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
21
11
|
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
12
|
+
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
22
13
|
import type {PressEvent} from '../../Types/CoreEventTypes';
|
|
14
|
+
import type {TouchableType} from './Touchable.flow';
|
|
15
|
+
|
|
16
|
+
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
17
|
+
import UIManager from '../../ReactNative/UIManager';
|
|
18
|
+
import Platform from '../../Utilities/Platform';
|
|
19
|
+
import SoundManager from '../Sound/SoundManager';
|
|
20
|
+
import BoundingDimensions from './BoundingDimensions';
|
|
21
|
+
import Position from './Position';
|
|
22
|
+
import * as React from 'react';
|
|
23
23
|
|
|
24
24
|
const extractSingleTouch = (nativeEvent: {
|
|
25
25
|
+changedTouches: $ReadOnlyArray<PressEvent['nativeEvent']>,
|
|
@@ -927,7 +927,7 @@ const TouchableMixin = {
|
|
|
927
927
|
}
|
|
928
928
|
},
|
|
929
929
|
|
|
930
|
-
withoutDefaultFocusAndBlur: ({}:
|
|
930
|
+
withoutDefaultFocusAndBlur: ({}: {...}),
|
|
931
931
|
};
|
|
932
932
|
|
|
933
933
|
/**
|
|
@@ -944,7 +944,7 @@ const {
|
|
|
944
944
|
TouchableMixin.withoutDefaultFocusAndBlur =
|
|
945
945
|
TouchableMixinWithoutDefaultFocusAndBlur;
|
|
946
946
|
|
|
947
|
-
const Touchable = {
|
|
947
|
+
const Touchable: TouchableType = {
|
|
948
948
|
Mixin: TouchableMixin,
|
|
949
949
|
/**
|
|
950
950
|
* Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).
|
|
@@ -8,18 +8,18 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import * as React from 'react';
|
|
12
|
-
import BoundingDimensions from './BoundingDimensions';
|
|
13
|
-
import Platform from '../../Utilities/Platform';
|
|
14
|
-
import Position from './Position';
|
|
15
|
-
import UIManager from '../../ReactNative/UIManager';
|
|
16
|
-
import SoundManager from '../Sound/SoundManager';
|
|
17
|
-
|
|
18
|
-
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
19
|
-
|
|
20
|
-
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
21
11
|
import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
|
|
12
|
+
import type {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
22
13
|
import type {PressEvent} from '../../Types/CoreEventTypes';
|
|
14
|
+
import type {TouchableType} from './Touchable.flow';
|
|
15
|
+
|
|
16
|
+
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
17
|
+
import UIManager from '../../ReactNative/UIManager';
|
|
18
|
+
import Platform from '../../Utilities/Platform';
|
|
19
|
+
import SoundManager from '../Sound/SoundManager';
|
|
20
|
+
import BoundingDimensions from './BoundingDimensions';
|
|
21
|
+
import Position from './Position';
|
|
22
|
+
import * as React from 'react';
|
|
23
23
|
|
|
24
24
|
const extractSingleTouch = (nativeEvent: {
|
|
25
25
|
+altKey: ?boolean,
|
|
@@ -932,7 +932,7 @@ const TouchableMixin = {
|
|
|
932
932
|
}
|
|
933
933
|
},
|
|
934
934
|
|
|
935
|
-
withoutDefaultFocusAndBlur: ({}:
|
|
935
|
+
withoutDefaultFocusAndBlur: ({}: {...}),
|
|
936
936
|
};
|
|
937
937
|
|
|
938
938
|
/**
|
|
@@ -949,7 +949,7 @@ const {
|
|
|
949
949
|
TouchableMixin.withoutDefaultFocusAndBlur =
|
|
950
950
|
TouchableMixinWithoutDefaultFocusAndBlur;
|
|
951
951
|
|
|
952
|
-
const Touchable = {
|
|
952
|
+
const Touchable: TouchableType = {
|
|
953
953
|
Mixin: TouchableMixin,
|
|
954
954
|
/**
|
|
955
955
|
* Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).
|
|
@@ -8,13 +8,15 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
+
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
12
|
+
import typeof TouchableWithoutFeedback from './TouchableWithoutFeedback';
|
|
13
|
+
|
|
14
|
+
import Animated from '../../Animated/Animated';
|
|
11
15
|
import Pressability, {
|
|
12
16
|
type PressabilityConfig,
|
|
13
17
|
} from '../../Pressability/Pressability';
|
|
14
18
|
import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
|
|
15
|
-
import
|
|
16
|
-
import typeof TouchableWithoutFeedback from './TouchableWithoutFeedback';
|
|
17
|
-
import {Animated, Platform} from 'react-native';
|
|
19
|
+
import Platform from '../../Utilities/Platform';
|
|
18
20
|
import * as React from 'react';
|
|
19
21
|
|
|
20
22
|
type Props = $ReadOnly<{|
|
|
@@ -130,23 +132,55 @@ class TouchableBounce extends React.Component<Props, State> {
|
|
|
130
132
|
// adopting `Pressability`, so preserve that behavior.
|
|
131
133
|
const {onBlur, onFocus, ...eventHandlersWithoutBlurAndFocus} =
|
|
132
134
|
this.state.pressability.getEventHandlers();
|
|
135
|
+
const accessibilityLiveRegion =
|
|
136
|
+
this.props['aria-live'] === 'off'
|
|
137
|
+
? 'none'
|
|
138
|
+
: this.props['aria-live'] ?? this.props.accessibilityLiveRegion;
|
|
139
|
+
const _accessibilityState = {
|
|
140
|
+
busy: this.props['aria-busy'] ?? this.props.accessibilityState?.busy,
|
|
141
|
+
checked:
|
|
142
|
+
this.props['aria-checked'] ?? this.props.accessibilityState?.checked,
|
|
143
|
+
disabled:
|
|
144
|
+
this.props['aria-disabled'] ?? this.props.accessibilityState?.disabled,
|
|
145
|
+
expanded:
|
|
146
|
+
this.props['aria-expanded'] ?? this.props.accessibilityState?.expanded,
|
|
147
|
+
selected:
|
|
148
|
+
this.props['aria-selected'] ?? this.props.accessibilityState?.selected,
|
|
149
|
+
};
|
|
133
150
|
|
|
151
|
+
const accessibilityValue = {
|
|
152
|
+
max: this.props['aria-valuemax'] ?? this.props.accessibilityValue?.max,
|
|
153
|
+
min: this.props['aria-valuemin'] ?? this.props.accessibilityValue?.min,
|
|
154
|
+
now: this.props['aria-valuenow'] ?? this.props.accessibilityValue?.now,
|
|
155
|
+
text: this.props['aria-valuetext'] ?? this.props.accessibilityValue?.text,
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
const accessibilityLabel =
|
|
159
|
+
this.props['aria-label'] ?? this.props.accessibilityLabel;
|
|
134
160
|
return (
|
|
135
161
|
<Animated.View
|
|
136
162
|
style={[{transform: [{scale: this.state.scale}]}, this.props.style]}
|
|
137
163
|
accessible={this.props.accessible !== false}
|
|
138
|
-
accessibilityLabel={
|
|
164
|
+
accessibilityLabel={accessibilityLabel}
|
|
139
165
|
accessibilityHint={this.props.accessibilityHint}
|
|
140
166
|
accessibilityLanguage={this.props.accessibilityLanguage}
|
|
141
167
|
accessibilityRole={this.props.accessibilityRole}
|
|
142
|
-
accessibilityState={
|
|
168
|
+
accessibilityState={_accessibilityState}
|
|
143
169
|
accessibilityActions={this.props.accessibilityActions}
|
|
144
170
|
onAccessibilityAction={this.props.onAccessibilityAction}
|
|
145
|
-
accessibilityValue={
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
171
|
+
accessibilityValue={accessibilityValue}
|
|
172
|
+
accessibilityLiveRegion={accessibilityLiveRegion}
|
|
173
|
+
importantForAccessibility={
|
|
174
|
+
this.props['aria-hidden'] === true
|
|
175
|
+
? 'no-hide-descendants'
|
|
176
|
+
: this.props.importantForAccessibility
|
|
177
|
+
}
|
|
178
|
+
accessibilityViewIsModal={
|
|
179
|
+
this.props['aria-modal'] ?? this.props.accessibilityViewIsModal
|
|
180
|
+
}
|
|
181
|
+
accessibilityElementsHidden={
|
|
182
|
+
this.props['aria-hidden'] ?? this.props.accessibilityElementsHidden
|
|
183
|
+
}
|
|
150
184
|
nativeID={this.props.nativeID}
|
|
151
185
|
testID={this.props.testID}
|
|
152
186
|
hitSlop={this.props.hitSlop}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type * as React from 'react';
|
|
11
|
+
import {Constructor} from '../../../types/private/Utilities';
|
|
12
|
+
import {TimerMixin} from '../../../types/private/TimerMixin';
|
|
13
|
+
import {NativeMethods} from '../../../types/public/ReactNativeTypes';
|
|
14
|
+
import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
|
|
15
|
+
import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
|
|
16
|
+
import {TouchableMixin} from './Touchable';
|
|
17
|
+
import {TouchableWithoutFeedbackProps} from './TouchableWithoutFeedback';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @see https://reactnative.dev/docs/touchablehighlight#props
|
|
21
|
+
*/
|
|
22
|
+
export interface TouchableHighlightProps extends TouchableWithoutFeedbackProps {
|
|
23
|
+
/**
|
|
24
|
+
* Determines what the opacity of the wrapped view should be when touch is active.
|
|
25
|
+
*/
|
|
26
|
+
activeOpacity?: number | undefined;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
* Called immediately after the underlay is hidden
|
|
31
|
+
*/
|
|
32
|
+
onHideUnderlay?: (() => void) | undefined;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Called immediately after the underlay is shown
|
|
36
|
+
*/
|
|
37
|
+
onShowUnderlay?: (() => void) | undefined;
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @see https://reactnative.dev/docs/view#style
|
|
41
|
+
*/
|
|
42
|
+
style?: StyleProp<ViewStyle> | undefined;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* The color of the underlay that will show through when the touch is active.
|
|
46
|
+
*/
|
|
47
|
+
underlayColor?: ColorValue | undefined;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* A wrapper for making views respond properly to touches.
|
|
52
|
+
* On press down, the opacity of the wrapped view is decreased,
|
|
53
|
+
* which allows the underlay color to show through, darkening or tinting the view.
|
|
54
|
+
* The underlay comes from adding a view to the view hierarchy,
|
|
55
|
+
* which can sometimes cause unwanted visual artifacts if not used correctly,
|
|
56
|
+
* for example if the backgroundColor of the wrapped view isn't explicitly set to an opaque color.
|
|
57
|
+
*
|
|
58
|
+
* NOTE: TouchableHighlight supports only one child
|
|
59
|
+
* If you wish to have several child components, wrap them in a View.
|
|
60
|
+
*
|
|
61
|
+
* @see https://reactnative.dev/docs/touchablehighlight
|
|
62
|
+
*/
|
|
63
|
+
declare class TouchableHighlightComponent extends React.Component<TouchableHighlightProps> {}
|
|
64
|
+
declare const TouchableHighlightBase: Constructor<NativeMethods> &
|
|
65
|
+
Constructor<TimerMixin> &
|
|
66
|
+
Constructor<TouchableMixin> &
|
|
67
|
+
typeof TouchableHighlightComponent;
|
|
68
|
+
export class TouchableHighlight extends TouchableHighlightBase {}
|