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,141 @@
|
|
|
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 {NativeMethods} from '../../../types/public/ReactNativeTypes';
|
|
13
|
+
import {ColorValue} from '../../StyleSheet/StyleSheet';
|
|
14
|
+
import {
|
|
15
|
+
NativeSyntheticEvent,
|
|
16
|
+
NativeTouchEvent,
|
|
17
|
+
} from '../../Types/CoreEventTypes';
|
|
18
|
+
import {ViewProps} from '../View/ViewPropTypes';
|
|
19
|
+
|
|
20
|
+
export interface DrawerSlideEvent
|
|
21
|
+
extends NativeSyntheticEvent<NativeTouchEvent> {}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* @see DrawerLayoutAndroid.android.js
|
|
25
|
+
*/
|
|
26
|
+
export interface DrawerLayoutAndroidProps extends ViewProps {
|
|
27
|
+
/**
|
|
28
|
+
* Specifies the background color of the drawer. The default value
|
|
29
|
+
* is white. If you want to set the opacity of the drawer, use rgba.
|
|
30
|
+
* Example:
|
|
31
|
+
* return (
|
|
32
|
+
* <DrawerLayoutAndroid drawerBackgroundColor="rgba(0,0,0,0.5)">
|
|
33
|
+
* </DrawerLayoutAndroid>
|
|
34
|
+
*);
|
|
35
|
+
*/
|
|
36
|
+
drawerBackgroundColor?: ColorValue | undefined;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Specifies the lock mode of the drawer. The drawer can be locked
|
|
40
|
+
* in 3 states:
|
|
41
|
+
*
|
|
42
|
+
* - unlocked (default), meaning that the drawer will respond
|
|
43
|
+
* (open/close) to touch gestures.
|
|
44
|
+
*
|
|
45
|
+
* - locked-closed, meaning that the drawer will stay closed and not
|
|
46
|
+
* respond to gestures.
|
|
47
|
+
*
|
|
48
|
+
* - locked-open, meaning that the drawer will stay opened and
|
|
49
|
+
* not respond to gestures. The drawer may still be opened and
|
|
50
|
+
* closed programmatically (openDrawer/closeDrawer).
|
|
51
|
+
*/
|
|
52
|
+
drawerLockMode?: 'unlocked' | 'locked-closed' | 'locked-open' | undefined;
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Specifies the side of the screen from which the drawer will slide in.
|
|
56
|
+
* - 'left' (the default)
|
|
57
|
+
* - 'right'
|
|
58
|
+
*/
|
|
59
|
+
drawerPosition?: 'left' | 'right' | undefined;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Specifies the width of the drawer, more precisely the width of the
|
|
63
|
+
* view that be pulled in from the edge of the window.
|
|
64
|
+
*/
|
|
65
|
+
drawerWidth?: number | undefined;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Determines whether the keyboard gets dismissed in response to a drag.
|
|
69
|
+
* - 'none' (the default), drags do not dismiss the keyboard.
|
|
70
|
+
* - 'on-drag', the keyboard is dismissed when a drag begins.
|
|
71
|
+
*/
|
|
72
|
+
keyboardDismissMode?: 'none' | 'on-drag' | undefined;
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Function called whenever the navigation view has been closed.
|
|
76
|
+
*/
|
|
77
|
+
onDrawerClose?: (() => void) | undefined;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Function called whenever the navigation view has been opened.
|
|
81
|
+
*/
|
|
82
|
+
onDrawerOpen?: (() => void) | undefined;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Function called whenever there is an interaction with the navigation view.
|
|
86
|
+
*/
|
|
87
|
+
onDrawerSlide?: ((event: DrawerSlideEvent) => void) | undefined;
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Function called when the drawer state has changed.
|
|
91
|
+
* The drawer can be in 3 states:
|
|
92
|
+
* - idle, meaning there is no interaction with the navigation
|
|
93
|
+
* view happening at the time
|
|
94
|
+
* - dragging, meaning there is currently an interaction with the
|
|
95
|
+
* navigation view
|
|
96
|
+
* - settling, meaning that there was an interaction with the
|
|
97
|
+
* navigation view, and the navigation view is now finishing
|
|
98
|
+
* it's closing or opening animation
|
|
99
|
+
*/
|
|
100
|
+
onDrawerStateChanged?:
|
|
101
|
+
| ((event: 'Idle' | 'Dragging' | 'Settling') => void)
|
|
102
|
+
| undefined;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* The navigation view that will be rendered to the side of the
|
|
106
|
+
* screen and can be pulled in.
|
|
107
|
+
*/
|
|
108
|
+
renderNavigationView: () => JSX.Element;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Make the drawer take the entire screen and draw the background of
|
|
112
|
+
* the status bar to allow it to open over the status bar. It will
|
|
113
|
+
* only have an effect on API 21+.
|
|
114
|
+
*/
|
|
115
|
+
statusBarBackgroundColor?: ColorValue | undefined;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
interface DrawerPosition {
|
|
119
|
+
Left: number;
|
|
120
|
+
Right: number;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
declare class DrawerLayoutAndroidComponent extends React.Component<DrawerLayoutAndroidProps> {}
|
|
124
|
+
declare const DrawerLayoutAndroidBase: Constructor<NativeMethods> &
|
|
125
|
+
typeof DrawerLayoutAndroidComponent;
|
|
126
|
+
export class DrawerLayoutAndroid extends DrawerLayoutAndroidBase {
|
|
127
|
+
/**
|
|
128
|
+
* drawer's positions.
|
|
129
|
+
*/
|
|
130
|
+
positions: DrawerPosition;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Opens the drawer.
|
|
134
|
+
*/
|
|
135
|
+
openDrawer(): void;
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Closes the drawer.
|
|
139
|
+
*/
|
|
140
|
+
closeDrawer(): void;
|
|
141
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
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 {NativeEventEmitter} from '../../EventEmitter/NativeEventEmitter';
|
|
11
|
+
import {EmitterSubscription} from '../../vendor/emitter/EventEmitter';
|
|
12
|
+
|
|
13
|
+
export type KeyboardEventName =
|
|
14
|
+
| 'keyboardWillShow'
|
|
15
|
+
| 'keyboardDidShow'
|
|
16
|
+
| 'keyboardWillHide'
|
|
17
|
+
| 'keyboardDidHide'
|
|
18
|
+
| 'keyboardWillChangeFrame'
|
|
19
|
+
| 'keyboardDidChangeFrame';
|
|
20
|
+
|
|
21
|
+
export type KeyboardEventEasing =
|
|
22
|
+
| 'easeIn'
|
|
23
|
+
| 'easeInEaseOut'
|
|
24
|
+
| 'easeOut'
|
|
25
|
+
| 'linear'
|
|
26
|
+
| 'keyboard';
|
|
27
|
+
|
|
28
|
+
type KeyboardMetrics = {
|
|
29
|
+
screenX: number;
|
|
30
|
+
screenY: number;
|
|
31
|
+
width: number;
|
|
32
|
+
height: number;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
interface KeyboardEventIOS {
|
|
36
|
+
/**
|
|
37
|
+
* @platform ios
|
|
38
|
+
*/
|
|
39
|
+
startCoordinates: KeyboardMetrics;
|
|
40
|
+
/**
|
|
41
|
+
* @platform ios
|
|
42
|
+
*/
|
|
43
|
+
isEventFromThisApp: boolean;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface KeyboardEvent extends Partial<KeyboardEventIOS> {
|
|
47
|
+
/**
|
|
48
|
+
* Always set to 0 on Android.
|
|
49
|
+
*/
|
|
50
|
+
duration: number;
|
|
51
|
+
/**
|
|
52
|
+
* Always set to "keyboard" on Android.
|
|
53
|
+
*/
|
|
54
|
+
easing: KeyboardEventEasing;
|
|
55
|
+
endCoordinates: KeyboardMetrics;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
type KeyboardEventListener = (event: KeyboardEvent) => void;
|
|
59
|
+
|
|
60
|
+
export interface KeyboardStatic extends NativeEventEmitter {
|
|
61
|
+
/**
|
|
62
|
+
* Dismisses the active keyboard and removes focus.
|
|
63
|
+
*/
|
|
64
|
+
dismiss: () => void;
|
|
65
|
+
/**
|
|
66
|
+
* The `addListener` function connects a JavaScript function to an identified native
|
|
67
|
+
* keyboard notification event.
|
|
68
|
+
*
|
|
69
|
+
* This function then returns the reference to the listener.
|
|
70
|
+
*
|
|
71
|
+
* {string} eventName The `nativeEvent` is the string that identifies the event you're listening for. This
|
|
72
|
+
*can be any of the following:
|
|
73
|
+
*
|
|
74
|
+
* - `keyboardWillShow`
|
|
75
|
+
* - `keyboardDidShow`
|
|
76
|
+
* - `keyboardWillHide`
|
|
77
|
+
* - `keyboardDidHide`
|
|
78
|
+
* - `keyboardWillChangeFrame`
|
|
79
|
+
* - `keyboardDidChangeFrame`
|
|
80
|
+
*
|
|
81
|
+
* Note that if you set `android:windowSoftInputMode` to `adjustResize` or `adjustNothing`,
|
|
82
|
+
* only `keyboardDidShow` and `keyboardDidHide` events will be available on Android.
|
|
83
|
+
* `keyboardWillShow` as well as `keyboardWillHide` are generally not available on Android
|
|
84
|
+
* since there is no native corresponding event.
|
|
85
|
+
*
|
|
86
|
+
* {function} callback function to be called when the event fires.
|
|
87
|
+
*/
|
|
88
|
+
addListener: (
|
|
89
|
+
eventType: KeyboardEventName,
|
|
90
|
+
listener: KeyboardEventListener,
|
|
91
|
+
) => EmitterSubscription;
|
|
92
|
+
/**
|
|
93
|
+
* Useful for syncing TextInput (or other keyboard accessory view) size of
|
|
94
|
+
* position changes with keyboard movements.
|
|
95
|
+
*/
|
|
96
|
+
scheduleLayoutAnimation: (event: KeyboardEvent) => void;
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Whether the keyboard is last known to be visible.
|
|
100
|
+
*/
|
|
101
|
+
isVisible(): boolean;
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Return the metrics of the soft-keyboard if visible.
|
|
105
|
+
*/
|
|
106
|
+
metrics(): KeyboardMetrics | undefined;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export const Keyboard: KeyboardStatic;
|
|
@@ -8,12 +8,13 @@
|
|
|
8
8
|
* @flow strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
+
import type {EventSubscription} from '../../vendor/emitter/EventEmitter';
|
|
12
|
+
|
|
11
13
|
import NativeEventEmitter from '../../EventEmitter/NativeEventEmitter';
|
|
12
14
|
import LayoutAnimation from '../../LayoutAnimation/LayoutAnimation';
|
|
13
15
|
import dismissKeyboard from '../../Utilities/dismissKeyboard';
|
|
14
16
|
import Platform from '../../Utilities/Platform';
|
|
15
17
|
import NativeKeyboardObserver from './NativeKeyboardObserver';
|
|
16
|
-
import type {EventSubscription} from '../../vendor/emitter/EventEmitter';
|
|
17
18
|
|
|
18
19
|
export type KeyboardEventName = $Keys<KeyboardEventDefinitions>;
|
|
19
20
|
|
|
@@ -24,7 +25,7 @@ export type KeyboardEventEasing =
|
|
|
24
25
|
| 'linear'
|
|
25
26
|
| 'keyboard';
|
|
26
27
|
|
|
27
|
-
export type
|
|
28
|
+
export type KeyboardMetrics = $ReadOnly<{|
|
|
28
29
|
screenX: number,
|
|
29
30
|
screenY: number,
|
|
30
31
|
width: number,
|
|
@@ -36,7 +37,7 @@ export type KeyboardEvent = AndroidKeyboardEvent | IOSKeyboardEvent;
|
|
|
36
37
|
type BaseKeyboardEvent = {|
|
|
37
38
|
duration: number,
|
|
38
39
|
easing: KeyboardEventEasing,
|
|
39
|
-
endCoordinates:
|
|
40
|
+
endCoordinates: KeyboardMetrics,
|
|
40
41
|
|};
|
|
41
42
|
|
|
42
43
|
export type AndroidKeyboardEvent = $ReadOnly<{|
|
|
@@ -47,7 +48,7 @@ export type AndroidKeyboardEvent = $ReadOnly<{|
|
|
|
47
48
|
|
|
48
49
|
export type IOSKeyboardEvent = $ReadOnly<{|
|
|
49
50
|
...BaseKeyboardEvent,
|
|
50
|
-
startCoordinates:
|
|
51
|
+
startCoordinates: KeyboardMetrics,
|
|
51
52
|
isEventFromThisApp: boolean,
|
|
52
53
|
|}>;
|
|
53
54
|
|
|
@@ -103,6 +104,8 @@ type KeyboardEventDefinitions = {
|
|
|
103
104
|
*/
|
|
104
105
|
|
|
105
106
|
class Keyboard {
|
|
107
|
+
_currentlyShowing: ?KeyboardEvent;
|
|
108
|
+
|
|
106
109
|
_emitter: NativeEventEmitter<KeyboardEventDefinitions> =
|
|
107
110
|
new NativeEventEmitter(
|
|
108
111
|
// T88715063: NativeEventEmitter only used this parameter on iOS. Now it uses it on all platforms, so this code was modified automatically to preserve its behavior
|
|
@@ -110,6 +113,15 @@ class Keyboard {
|
|
|
110
113
|
Platform.OS !== 'ios' ? null : NativeKeyboardObserver,
|
|
111
114
|
);
|
|
112
115
|
|
|
116
|
+
constructor() {
|
|
117
|
+
this.addListener('keyboardDidShow', ev => {
|
|
118
|
+
this._currentlyShowing = ev;
|
|
119
|
+
});
|
|
120
|
+
this.addListener('keyboardDidHide', _ev => {
|
|
121
|
+
this._currentlyShowing = null;
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
|
|
113
125
|
/**
|
|
114
126
|
* The `addListener` function connects a JavaScript function to an identified native
|
|
115
127
|
* keyboard notification event.
|
|
@@ -126,10 +138,11 @@ class Keyboard {
|
|
|
126
138
|
* - `keyboardWillChangeFrame`
|
|
127
139
|
* - `keyboardDidChangeFrame`
|
|
128
140
|
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
141
|
+
* Android versions prior to API 30 rely on observing layout changes when
|
|
142
|
+
* `android:windowSoftInputMode` is set to `adjustResize` or `adjustPan`.
|
|
143
|
+
*
|
|
144
|
+
* `keyboardWillShow` as well as `keyboardWillHide` are not available on Android since there is
|
|
145
|
+
* no native corresponding event.
|
|
133
146
|
*
|
|
134
147
|
* @param {function} callback function to be called when the event fires.
|
|
135
148
|
*/
|
|
@@ -157,6 +170,20 @@ class Keyboard {
|
|
|
157
170
|
dismissKeyboard();
|
|
158
171
|
}
|
|
159
172
|
|
|
173
|
+
/**
|
|
174
|
+
* Whether the keyboard is last known to be visible.
|
|
175
|
+
*/
|
|
176
|
+
isVisible(): boolean {
|
|
177
|
+
return !!this._currentlyShowing;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Return the metrics of the soft-keyboard if visible.
|
|
182
|
+
*/
|
|
183
|
+
metrics(): ?KeyboardMetrics {
|
|
184
|
+
return this._currentlyShowing?.endCoordinates;
|
|
185
|
+
}
|
|
186
|
+
|
|
160
187
|
/**
|
|
161
188
|
* Useful for syncing TextInput (or other keyboard accessory view) size of
|
|
162
189
|
* position changes with keyboard movements.
|
|
@@ -0,0 +1,46 @@
|
|
|
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 {StyleProp} from '../../StyleSheet/StyleSheet';
|
|
14
|
+
import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
|
|
15
|
+
import {ViewProps} from '../View/ViewPropTypes';
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* It is a component to solve the common problem of views that need to move out of the way of the virtual keyboard.
|
|
19
|
+
* It can automatically adjust either its position or bottom padding based on the position of the keyboard.
|
|
20
|
+
*/
|
|
21
|
+
declare class KeyboardAvoidingViewComponent extends React.Component<KeyboardAvoidingViewProps> {}
|
|
22
|
+
declare const KeyboardAvoidingViewBase: Constructor<TimerMixin> &
|
|
23
|
+
typeof KeyboardAvoidingViewComponent;
|
|
24
|
+
export class KeyboardAvoidingView extends KeyboardAvoidingViewBase {}
|
|
25
|
+
|
|
26
|
+
export interface KeyboardAvoidingViewProps extends ViewProps {
|
|
27
|
+
behavior?: 'height' | 'position' | 'padding' | undefined;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* The style of the content container(View) when behavior is 'position'.
|
|
31
|
+
*/
|
|
32
|
+
contentContainerStyle?: StyleProp<ViewStyle> | undefined;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* This is the distance between the top of the user screen and the react native view,
|
|
36
|
+
* may be non-zero in some use cases.
|
|
37
|
+
*/
|
|
38
|
+
keyboardVerticalOffset?: number | undefined;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Enables or disables the KeyboardAvoidingView.
|
|
42
|
+
*
|
|
43
|
+
* Default is true
|
|
44
|
+
*/
|
|
45
|
+
enabled?: boolean | undefined;
|
|
46
|
+
}
|
|
@@ -8,21 +8,22 @@
|
|
|
8
8
|
* @flow strict-local
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import Keyboard from './Keyboard';
|
|
12
|
-
import LayoutAnimation from '../../LayoutAnimation/LayoutAnimation';
|
|
13
|
-
import Platform from '../../Utilities/Platform';
|
|
14
|
-
import * as React from 'react';
|
|
15
|
-
import StyleSheet from '../../StyleSheet/StyleSheet';
|
|
16
|
-
import View from '../View/View';
|
|
17
|
-
|
|
18
11
|
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
19
|
-
import {type EventSubscription} from '../../vendor/emitter/EventEmitter';
|
|
20
12
|
import type {
|
|
21
|
-
ViewProps,
|
|
22
13
|
ViewLayout,
|
|
23
14
|
ViewLayoutEvent,
|
|
15
|
+
ViewProps,
|
|
24
16
|
} from '../View/ViewPropTypes';
|
|
25
|
-
import type {KeyboardEvent,
|
|
17
|
+
import type {KeyboardEvent, KeyboardMetrics} from './Keyboard';
|
|
18
|
+
|
|
19
|
+
import LayoutAnimation from '../../LayoutAnimation/LayoutAnimation';
|
|
20
|
+
import StyleSheet from '../../StyleSheet/StyleSheet';
|
|
21
|
+
import Platform from '../../Utilities/Platform';
|
|
22
|
+
import {type EventSubscription} from '../../vendor/emitter/EventEmitter';
|
|
23
|
+
import AccessibilityInfo from '../AccessibilityInfo/AccessibilityInfo';
|
|
24
|
+
import View from '../View/View';
|
|
25
|
+
import Keyboard from './Keyboard';
|
|
26
|
+
import * as React from 'react';
|
|
26
27
|
|
|
27
28
|
type Props = $ReadOnly<{|
|
|
28
29
|
...ViewProps,
|
|
@@ -71,15 +72,34 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
71
72
|
this.viewRef = React.createRef();
|
|
72
73
|
}
|
|
73
74
|
|
|
74
|
-
_relativeKeyboardHeight(
|
|
75
|
+
async _relativeKeyboardHeight(
|
|
76
|
+
keyboardFrame: KeyboardMetrics,
|
|
77
|
+
): Promise<number> {
|
|
75
78
|
const frame = this._frame;
|
|
76
79
|
if (!frame || !keyboardFrame) {
|
|
77
80
|
return 0;
|
|
78
81
|
}
|
|
79
82
|
|
|
83
|
+
// On iOS when Prefer Cross-Fade Transitions is enabled, the keyboard position
|
|
84
|
+
// & height is reported differently (0 instead of Y position value matching height of frame)
|
|
85
|
+
if (
|
|
86
|
+
Platform.OS === 'ios' &&
|
|
87
|
+
keyboardFrame.screenY === 0 &&
|
|
88
|
+
(await AccessibilityInfo.prefersCrossFadeTransitions())
|
|
89
|
+
) {
|
|
90
|
+
return 0;
|
|
91
|
+
}
|
|
92
|
+
|
|
80
93
|
const keyboardY =
|
|
81
94
|
keyboardFrame.screenY - (this.props.keyboardVerticalOffset ?? 0);
|
|
82
95
|
|
|
96
|
+
if (this.props.behavior === 'height') {
|
|
97
|
+
return Math.max(
|
|
98
|
+
this.state.bottom + frame.y + frame.height - keyboardY,
|
|
99
|
+
0,
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
|
|
83
103
|
// Calculate the displacement needed for the view such that it
|
|
84
104
|
// no longer overlaps with the keyboard
|
|
85
105
|
return Math.max(frame.y + frame.height - keyboardY, 0);
|
|
@@ -90,7 +110,7 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
90
110
|
this._updateBottomIfNecessary();
|
|
91
111
|
};
|
|
92
112
|
|
|
93
|
-
_onLayout = (event: ViewLayoutEvent) => {
|
|
113
|
+
_onLayout = async (event: ViewLayoutEvent) => {
|
|
94
114
|
const wasFrameNull = this._frame == null;
|
|
95
115
|
this._frame = event.nativeEvent.layout;
|
|
96
116
|
if (!this._initialFrameHeight) {
|
|
@@ -99,7 +119,7 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
99
119
|
}
|
|
100
120
|
|
|
101
121
|
if (wasFrameNull) {
|
|
102
|
-
this._updateBottomIfNecessary();
|
|
122
|
+
await this._updateBottomIfNecessary();
|
|
103
123
|
}
|
|
104
124
|
|
|
105
125
|
if (this.props.onLayout) {
|
|
@@ -107,14 +127,14 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
107
127
|
}
|
|
108
128
|
};
|
|
109
129
|
|
|
110
|
-
_updateBottomIfNecessary = () => {
|
|
130
|
+
_updateBottomIfNecessary = async () => {
|
|
111
131
|
if (this._keyboardEvent == null) {
|
|
112
132
|
this.setState({bottom: 0});
|
|
113
133
|
return;
|
|
114
134
|
}
|
|
115
135
|
|
|
116
136
|
const {duration, easing, endCoordinates} = this._keyboardEvent;
|
|
117
|
-
const height = this._relativeKeyboardHeight(endCoordinates);
|
|
137
|
+
const height = await this._relativeKeyboardHeight(endCoordinates);
|
|
118
138
|
|
|
119
139
|
if (this.state.bottom === height) {
|
|
120
140
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupProps.js","sourceRoot":"","sources":["../../../src/Libraries/Components/Popup/PopupProps.ts"],"names":[],"mappings":";AAAA;;;;GAIG","sourcesContent":["/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\n\nimport React from 'react';\nimport {ViewProps} from 'react-native';\n\nexport interface IPopupProps extends ViewProps {\n isOpen?: boolean;\n\n /**\n * Configures the Popup with a transparent backdrop.\n */\n isLightDismissEnabled?: boolean;\n\n /**\n * Sets whether the Popup will automatically receive focus when opened.\n * Defaults to true. Always true when isLightDismissEnabled === true.\n */\n autoFocus?: boolean;\n\n horizontalOffset?: number;\n verticalOffset?: number;\n\n /**\n * Sets a React element to use as an anchor point. When set, the popup will be positioned relative to it.\n */\n target?: React.ReactNode;\n onDismiss?: () => void;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PopupProps.js","sourceRoot":"","sources":["../../../src/Libraries/Components/Popup/PopupProps.ts"],"names":[],"mappings":";AAAA;;;;GAIG","sourcesContent":["/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\n\nimport React from 'react';\nimport {ViewProps} from 'react-native';\n\nexport interface IPopupProps extends ViewProps {\n isOpen?: boolean;\n\n /**\n * Configures the Popup with a transparent backdrop.\n */\n isLightDismissEnabled?: boolean;\n\n /**\n * Sets whether the Popup will automatically receive focus when opened.\n * Defaults to true. Always true when isLightDismissEnabled === true.\n */\n autoFocus?: boolean;\n\n horizontalOffset?: number;\n verticalOffset?: number;\n\n /**\n * Sets a React element to use as an anchor point. When set, the popup will be positioned relative to it.\n */\n target?: React.ReactNode;\n onDismiss?: () => void;\n testID?: string;\n}\n"]}
|
|
@@ -0,0 +1,167 @@
|
|
|
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 {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
|
|
13
|
+
import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
|
|
14
|
+
import {
|
|
15
|
+
GestureResponderEvent,
|
|
16
|
+
MouseEvent,
|
|
17
|
+
NativeSyntheticEvent,
|
|
18
|
+
TargetedEvent,
|
|
19
|
+
} from '../../Types/CoreEventTypes';
|
|
20
|
+
import {View} from '../View/View';
|
|
21
|
+
import {AccessibilityProps} from '../View/ViewAccessibility';
|
|
22
|
+
import {ViewProps} from '../View/ViewPropTypes';
|
|
23
|
+
|
|
24
|
+
export interface PressableStateCallbackType {
|
|
25
|
+
readonly pressed: boolean;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface PressableAndroidRippleConfig {
|
|
29
|
+
color?: null | ColorValue | undefined;
|
|
30
|
+
borderless?: null | boolean | undefined;
|
|
31
|
+
radius?: null | number | undefined;
|
|
32
|
+
foreground?: null | boolean | undefined;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface PressableProps
|
|
36
|
+
extends AccessibilityProps,
|
|
37
|
+
Omit<ViewProps, 'children' | 'style' | 'hitSlop'> {
|
|
38
|
+
/**
|
|
39
|
+
* Called when the hover is activated to provide visual feedback.
|
|
40
|
+
*/
|
|
41
|
+
onHoverIn?: null | ((event: MouseEvent) => void) | undefined;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Called when the hover is deactivated to undo visual feedback.
|
|
45
|
+
*/
|
|
46
|
+
onHoverOut?: null | ((event: MouseEvent) => void) | undefined;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Called when a single tap gesture is detected.
|
|
50
|
+
*/
|
|
51
|
+
onPress?: null | ((event: GestureResponderEvent) => void) | undefined;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Called when a touch is engaged before `onPress`.
|
|
55
|
+
*/
|
|
56
|
+
onPressIn?: null | ((event: GestureResponderEvent) => void) | undefined;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Called when a touch is released before `onPress`.
|
|
60
|
+
*/
|
|
61
|
+
onPressOut?: null | ((event: GestureResponderEvent) => void) | undefined;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Called when a long-tap gesture is detected.
|
|
65
|
+
*/
|
|
66
|
+
onLongPress?: null | ((event: GestureResponderEvent) => void) | undefined;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Called after the element loses focus.
|
|
70
|
+
* @platform macos windows
|
|
71
|
+
*/
|
|
72
|
+
onBlur?:
|
|
73
|
+
| null
|
|
74
|
+
| ((event: NativeSyntheticEvent<TargetedEvent>) => void)
|
|
75
|
+
| undefined;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Called after the element is focused.
|
|
79
|
+
* @platform macos windows
|
|
80
|
+
*/
|
|
81
|
+
onFocus?:
|
|
82
|
+
| null
|
|
83
|
+
| ((event: NativeSyntheticEvent<TargetedEvent>) => void)
|
|
84
|
+
| undefined;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Either children or a render prop that receives a boolean reflecting whether
|
|
88
|
+
* the component is currently pressed.
|
|
89
|
+
*/
|
|
90
|
+
children?:
|
|
91
|
+
| React.ReactNode
|
|
92
|
+
| ((state: PressableStateCallbackType) => React.ReactNode)
|
|
93
|
+
| undefined;
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Whether a press gesture can be interrupted by a parent gesture such as a
|
|
97
|
+
* scroll event. Defaults to true.
|
|
98
|
+
*/
|
|
99
|
+
cancelable?: null | boolean | undefined;
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Duration to wait after hover in before calling `onHoverIn`.
|
|
103
|
+
* @platform macos windows
|
|
104
|
+
*/
|
|
105
|
+
delayHoverIn?: number | null | undefined;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Duration to wait after hover out before calling `onHoverOut`.
|
|
109
|
+
* @platform macos windows
|
|
110
|
+
*/
|
|
111
|
+
delayHoverOut?: number | null | undefined;
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Duration (in milliseconds) from `onPressIn` before `onLongPress` is called.
|
|
115
|
+
*/
|
|
116
|
+
delayLongPress?: null | number | undefined;
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Whether the press behavior is disabled.
|
|
120
|
+
*/
|
|
121
|
+
disabled?: null | boolean | undefined;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Additional distance outside of this view in which a press is detected.
|
|
125
|
+
*/
|
|
126
|
+
hitSlop?: null | Insets | number | undefined;
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Additional distance outside of this view in which a touch is considered a
|
|
130
|
+
* press before `onPressOut` is triggered.
|
|
131
|
+
*/
|
|
132
|
+
pressRetentionOffset?: null | Insets | number | undefined;
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* If true, doesn't play system sound on touch.
|
|
136
|
+
*/
|
|
137
|
+
android_disableSound?: null | boolean | undefined;
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Enables the Android ripple effect and configures its color.
|
|
141
|
+
*/
|
|
142
|
+
android_ripple?: null | PressableAndroidRippleConfig | undefined;
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Used only for documentation or testing (e.g. snapshot testing).
|
|
146
|
+
*/
|
|
147
|
+
testOnly_pressed?: null | boolean | undefined;
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Either view styles or a function that receives a boolean reflecting whether
|
|
151
|
+
* the component is currently pressed and returns view styles.
|
|
152
|
+
*/
|
|
153
|
+
style?:
|
|
154
|
+
| StyleProp<ViewStyle>
|
|
155
|
+
| ((state: PressableStateCallbackType) => StyleProp<ViewStyle>)
|
|
156
|
+
| undefined;
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Duration (in milliseconds) to wait after press down before calling onPressIn.
|
|
160
|
+
*/
|
|
161
|
+
unstable_pressDelay?: number;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// TODO use React.AbstractComponent when available
|
|
165
|
+
export const Pressable: React.ForwardRefExoticComponent<
|
|
166
|
+
PressableProps & React.RefAttributes<View>
|
|
167
|
+
>;
|