react-native 0.70.3 → 0.71.0-rc.0
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/CHANGELOG.md +351 -0
- 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.js.flow +49 -0
- package/Libraries/Alert/NativeAlertManager.js +2 -0
- package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
- package/Libraries/Animated/Animated.d.ts +587 -0
- package/Libraries/Animated/Animated.js +13 -11
- package/Libraries/Animated/AnimatedEvent.js +12 -17
- package/Libraries/Animated/AnimatedImplementation.js +21 -23
- package/Libraries/Animated/AnimatedMock.js +11 -13
- package/Libraries/Animated/AnimatedWeb.js +2 -2
- package/Libraries/Animated/Easing.d.ts +37 -0
- package/Libraries/Animated/Easing.js +2 -2
- package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/SpringConfig.js +2 -7
- package/Libraries/Animated/animations/Animation.js +3 -4
- package/Libraries/Animated/animations/DecayAnimation.js +5 -8
- package/Libraries/Animated/animations/SpringAnimation.js +9 -14
- package/Libraries/Animated/animations/TimingAnimation.js +9 -13
- package/Libraries/Animated/bezier.js +2 -2
- package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
- package/Libraries/Animated/components/AnimatedImage.js +5 -6
- package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
- package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
- package/Libraries/Animated/components/AnimatedText.js +5 -6
- package/Libraries/Animated/components/AnimatedView.js +5 -6
- package/Libraries/Animated/createAnimatedComponent.js +11 -25
- 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 -28
- 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/AppDelegate/RCTAppDelegate.h +130 -0
- package/Libraries/AppDelegate/RCTAppDelegate.mm +164 -0
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +73 -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/RCTBlobCollector.h +0 -2
- package/Libraries/Blob/RCTBlobCollector.mm +27 -23
- package/Libraries/Blob/RCTBlobManager.h +1 -1
- package/Libraries/Blob/RCTBlobManager.mm +34 -28
- package/Libraries/Blob/RCTFileReaderModule.mm +24 -17
- package/Libraries/Blob/React-RCTBlob.podspec +0 -1
- 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 +16 -16
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +9 -7
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
- package/Libraries/Components/Button.d.ts +42 -0
- package/Libraries/Components/Button.flow.js +265 -0
- package/Libraries/Components/Button.js +62 -18
- package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
- package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
- package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
- package/Libraries/Components/DatePicker/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 +7 -5
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +16 -9
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
- package/Libraries/Components/Pressable/Pressable.js +73 -15
- package/Libraries/Components/Pressable/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/RCTProgressViewNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
- package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
- package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
- package/Libraries/Components/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 +77 -38
- 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/InputAccessoryView.js.flow +25 -0
- 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 -36
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
- package/Libraries/Components/TextInput/TextInputState.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/TouchableBounce.js +44 -10
- package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
- package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
- package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
- package/Libraries/Components/View/View.d.ts +29 -0
- package/Libraries/Components/View/View.js +91 -8
- package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
- package/Libraries/Components/View/ViewAccessibility.js +70 -1
- package/Libraries/Components/View/ViewNativeComponent.js +3 -3
- package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
- package/Libraries/Components/View/ViewPropTypes.js +105 -13
- package/Libraries/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 +3 -3
- 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/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/FBLazyVector/BUCK +2 -1
- package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +9 -12
- package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +9 -6
- 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/ImageBackground.js +18 -7
- package/Libraries/Image/ImageBackground.js.flow +17 -0
- package/Libraries/Image/ImageInjection.js +2 -1
- package/Libraries/Image/ImagePickerIOS.d.ts +48 -0
- 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/ImageViewNativeComponent.js.flow +45 -0
- package/Libraries/Image/NativeImageEditor.js +1 -0
- package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
- package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
- package/Libraries/Image/NativeImagePickerIOS.js +1 -0
- package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
- package/Libraries/Image/NativeImageStoreIOS.js +1 -0
- package/Libraries/Image/RCTAnimatedImage.m +5 -2
- package/Libraries/Image/RCTDisplayWeakRefreshable.m +4 -2
- package/Libraries/Image/RCTGIFImageDecoder.mm +7 -4
- package/Libraries/Image/RCTImageBlurUtils.m +22 -17
- package/Libraries/Image/RCTImageCache.h +7 -7
- package/Libraries/Image/RCTImageCache.m +16 -21
- package/Libraries/Image/RCTImageDataDecoder.h +1 -1
- package/Libraries/Image/RCTImageEditingManager.mm +53 -44
- package/Libraries/Image/RCTImageLoader.h +7 -7
- package/Libraries/Image/RCTImageLoader.mm +415 -378
- package/Libraries/Image/RCTImageLoaderProtocol.h +14 -17
- package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +2 -2
- package/Libraries/Image/RCTImageStoreManager.mm +30 -25
- package/Libraries/Image/RCTImageURLLoader.h +11 -8
- package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +6 -4
- package/Libraries/Image/RCTImageURLLoaderWithAttribution.mm +3 -1
- package/Libraries/Image/RCTImageUtils.h +19 -18
- package/Libraries/Image/RCTImageUtils.m +61 -67
- package/Libraries/Image/RCTImageView.h +2 -2
- package/Libraries/Image/RCTImageView.mm +50 -43
- package/Libraries/Image/RCTImageViewManager.mm +45 -41
- package/Libraries/Image/RCTLocalAssetImageLoader.mm +12 -10
- package/Libraries/Image/RCTResizeMode.h +1 -1
- package/Libraries/Image/RCTResizeMode.m +12 -8
- package/Libraries/Image/RCTUIImageViewAnimated.m +21 -13
- package/Libraries/Image/TextInlineImageNativeComponent.js +4 -3
- package/Libraries/Image/TextInlineImageNativeComponent.js.flow +27 -0
- 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/LinkingIOS/RCTLinkingManager.h +5 -5
- package/Libraries/LinkingIOS/RCTLinkingManager.mm +75 -63
- 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/FlatList.js.flow +115 -0
- 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/NativeAnimation/Drivers/RCTDecayAnimation.h +1 -1
- package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.m +6 -9
- package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.h +1 -2
- package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.m +2 -4
- package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.h +1 -1
- package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.m +14 -21
- package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.h +1 -1
- package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.m +8 -22
- package/Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.m +1 -2
- package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.h +2 -3
- package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.m +3 -5
- package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +2 -4
- package/Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.m +7 -4
- package/Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.m +1 -2
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.m +14 -20
- package/Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.m +1 -2
- package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +13 -16
- package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +5 -7
- package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.h +0 -1
- package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.m +1 -3
- package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.h +0 -1
- package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.m +3 -8
- package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.m +4 -6
- package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m +1 -2
- package/Libraries/NativeAnimation/RCTAnimationUtils.h +14 -12
- package/Libraries/NativeAnimation/RCTAnimationUtils.m +15 -19
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.h +6 -1
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +80 -72
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +11 -20
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +55 -64
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +5 -1
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +68 -78
- package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
- package/Libraries/NativeComponent/BaseViewConfig.ios.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/RCTDataRequestHandler.mm +8 -11
- package/Libraries/Network/RCTFileRequestHandler.mm +10 -16
- package/Libraries/Network/RCTHTTPRequestHandler.h +4 -3
- package/Libraries/Network/RCTHTTPRequestHandler.mm +19 -23
- package/Libraries/Network/RCTNetworkTask.mm +2 -3
- package/Libraries/Network/RCTNetworking.android.js +4 -3
- package/Libraries/Network/RCTNetworking.ios.js +3 -2
- package/Libraries/Network/RCTNetworking.mm +172 -157
- 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/PerformanceObserver.js +124 -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/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/PushNotificationIOS/RCTPushNotificationManager.h +2 -1
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +142 -103
- package/Libraries/RCTRequired/BUCK +2 -1
- package/Libraries/RCTRequired/RCTRequired/RCTRequired.h +31 -18
- 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 +3 -2
- 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/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/README.md +1 -1
- package/Libraries/Renderer/REVISION +1 -1
- 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/RCTSettingsManager.mm +10 -12
- 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 +9 -10
- 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/SurfaceBackedComponent/RCTSurfaceBackedComponent.mm +9 -12
- package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponentState.h +1 -1
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +9 -14
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentController.mm +16 -12
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentOptions.h +1 -1
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.h +2 -3
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.mm +3 -8
- package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +4 -2
- package/Libraries/Text/BaseText/RCTBaseTextShadowView.m +13 -12
- package/Libraries/Text/BaseText/RCTBaseTextViewManager.m +1 -0
- package/Libraries/Text/RCTConvert+Text.m +16 -14
- package/Libraries/Text/RCTTextAttributes.h +1 -0
- package/Libraries/Text/RCTTextAttributes.m +67 -54
- package/Libraries/Text/RawText/RCTRawTextShadowView.m +2 -1
- package/Libraries/Text/Text/NSTextStorage+FontScaling.m +22 -42
- package/Libraries/Text/Text/RCTTextShadowView.m +152 -175
- package/Libraries/Text/Text/RCTTextView.m +38 -40
- package/Libraries/Text/Text/RCTTextViewManager.m +7 -8
- package/Libraries/Text/Text.d.ts +192 -0
- package/Libraries/Text/Text.js +94 -12
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.m +10 -23
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.m +1 -1
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +1 -1
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +18 -12
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegate.h +10 -6
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.h +1 -1
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.m +22 -14
- package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -2
- package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.m +37 -47
- package/Libraries/Text/TextInput/RCTBaseTextInputView.h +2 -3
- package/Libraries/Text/TextInput/RCTBaseTextInputView.m +177 -155
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.m +19 -17
- package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.m +1 -1
- package/Libraries/Text/TextInput/RCTInputAccessoryView.m +2 -3
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +1 -2
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.m +3 -4
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.m +1 -2
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -1
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.m +7 -5
- package/Libraries/Text/TextNativeComponent.js +48 -41
- package/Libraries/Text/TextProps.js +47 -7
- package/{React/Views/RCTMaskedViewManager.h → Libraries/TurboModule/RCTExport.d.ts} +6 -6
- 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/TypeSafety/RCTConvertHelpers.h +22 -12
- package/Libraries/TypeSafety/RCTConvertHelpers.mm +2 -2
- package/Libraries/TypeSafety/RCTTypedModuleConstants.h +7 -5
- package/Libraries/TypeSafety/RCTTypedModuleConstants.mm +6 -4
- package/Libraries/Types/CoreEventTypes.d.ts +263 -0
- package/Libraries/Types/CoreEventTypes.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/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/PerformanceLoggerContext.js +3 -2
- package/Libraries/Utilities/PixelRatio.d.ts +64 -0
- package/Libraries/Utilities/PixelRatio.js.flow +21 -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/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/RCTVibration.mm +5 -5
- package/Libraries/Vibration/Vibration.d.ts +43 -0
- package/Libraries/Vibration/Vibration.js +1 -0
- package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
- package/Libraries/WebSocket/RCTReconnectingWebSocket.m +5 -2
- package/Libraries/WebSocket/RCTSRWebSocket.h +20 -16
- package/Libraries/WebSocket/RCTSRWebSocket.m +293 -187
- package/Libraries/WebSocket/WebSocket.js +11 -3
- package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
- package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +5 -12
- package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +2 -1
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +4 -5
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +2 -3
- package/Libraries/Wrapper/RCTWrapper.h +50 -48
- package/Libraries/Wrapper/RCTWrapperShadowView.m +9 -8
- package/Libraries/Wrapper/RCTWrapperView.m +1 -4
- package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +1 -2
- 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/vendor/core/ErrorUtils.d.ts +15 -0
- package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
- package/README.md +2 -2
- package/React/AppSetup/RCTAppSetupUtils.h +6 -2
- package/React/AppSetup/RCTAppSetupUtils.mm +10 -8
- package/React/Base/RCTAssert.h +4 -4
- package/React/Base/RCTBridge.h +3 -107
- package/React/Base/RCTBridge.m +0 -18
- package/React/Base/RCTBridgeConstants.h +71 -0
- package/React/Base/RCTBridgeConstants.m +18 -0
- package/React/Base/RCTBridgeModule.h +4 -47
- package/React/Base/RCTBundleManager.h +23 -0
- package/React/Base/RCTBundleManager.m +1 -1
- package/React/Base/RCTConstants.h +52 -4
- package/React/Base/RCTConstants.m +24 -13
- package/React/Base/RCTConvert.h +3 -0
- package/React/Base/RCTConvert.m +29 -1
- package/React/Base/RCTKeyCommands.m +1 -1
- package/React/Base/RCTModuleData.mm +1 -0
- package/React/Base/RCTModuleMethod.mm +1 -1
- package/React/Base/RCTModuleRegistry.m +3 -1
- package/React/Base/RCTTurboModuleRegistry.h +29 -0
- package/React/Base/RCTVersion.m +3 -3
- package/React/Base/Surface/RCTSurface.mm +1 -0
- package/React/CoreModules/BUCK +6 -5
- package/React/CoreModules/CoreModulesPlugins.h +0 -1
- package/React/CoreModules/CoreModulesPlugins.mm +0 -1
- package/React/CoreModules/RCTAlertController.m +5 -0
- package/React/CoreModules/RCTAlertManager.mm +32 -26
- package/React/CoreModules/RCTDevLoadingView.mm +1 -0
- package/React/CoreModules/RCTDevSettings.mm +1 -0
- package/React/CoreModules/RCTEventDispatcher.mm +6 -2
- package/React/CoreModules/RCTExceptionsManager.h +4 -1
- package/React/CoreModules/RCTExceptionsManager.mm +4 -12
- package/React/CoreModules/RCTRedBox.mm +7 -1
- package/React/CxxBridge/RCTCxxBridge.mm +2 -1
- package/React/CxxModule/RCTNativeModule.mm +15 -0
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
- package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +0 -1
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +7 -2
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +23 -5
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +15 -0
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -5
- package/React/Fabric/Mounting/RCTComponentViewRegistry.h +0 -5
- package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +0 -39
- package/React/Fabric/Mounting/RCTMountingManager.mm +1 -4
- package/React/Fabric/RCTScheduler.mm +0 -9
- package/React/Fabric/RCTSurfacePresenter.h +2 -1
- package/React/Fabric/RCTSurfacePresenter.mm +17 -12
- package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +3 -1
- package/React/Fabric/RCTSurfaceTouchHandler.mm +290 -105
- package/React/Fabric/Utils/RCTReactTaggedView.h +34 -0
- package/React/Fabric/Utils/RCTReactTaggedView.mm +55 -0
- package/React/Profiler/RCTProfile.h +20 -0
- package/React/Tests/Mounting/RCTComponentViewRegistryTests.mm +1 -0
- package/React/Views/RCTBorderCurve.h +13 -0
- package/React/Views/RCTComponentData.m +1 -0
- package/React/Views/RCTFont.mm +80 -0
- package/React/Views/RCTShadowView.h +3 -0
- package/React/Views/RCTShadowView.m +14 -0
- package/React/Views/RCTView.h +6 -0
- package/React/Views/RCTView.m +18 -2
- package/React/Views/RCTViewManager.m +18 -0
- package/React/Views/RCTViewUtils.h +1 -0
- package/React-Core.podspec +22 -6
- package/ReactAndroid/Android-prebuilt.mk +10 -2
- package/ReactAndroid/build.gradle +239 -105
- package/ReactAndroid/cmake-utils/ReactNative-application.cmake +75 -17
- package/ReactAndroid/cmake-utils/default-app-setup/CMakeLists.txt +31 -0
- package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +79 -0
- package/ReactAndroid/cmake-utils/folly-flags.cmake +22 -0
- package/ReactAndroid/external-artifacts/.npmignore +3 -0
- package/ReactAndroid/external-artifacts/build.gradle +41 -0
- package/ReactAndroid/gradle.properties +6 -9
- package/ReactAndroid/hermes-engine/build.gradle +6 -29
- package/ReactAndroid/publish.gradle +87 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +2 -30
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/BUCK +2 -22
- package/ReactAndroid/src/main/java/com/facebook/react/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.java +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +31 -31
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +15 -39
- package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +8 -12
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +66 -3
- package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java +6 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -24
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +43 -38
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +2 -11
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +22 -1
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +12 -32
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultComponentsRegistry.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultJSIModulePackage.kt +58 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +71 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +24 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/CoreComponentsRegistry.java +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppComponentRegistry.java +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppViewMutationsWrapper.java +47 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +14 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +4 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +18 -54
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +19 -5
- package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +2 -25
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +0 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +12 -21
- package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +11 -3
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -3
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +48 -15
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +3 -14
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +277 -252
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +6 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +3 -31
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +172 -45
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +101 -44
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/util/RNLog.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.java +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +30 -30
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +9 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +12 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +22 -12
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +0 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.java +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +3 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +60 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +60 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +2 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +7 -25
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +9 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +42 -12
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +76 -21
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +25 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/systrace/BUCK +4 -1
- package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.java +22 -8
- package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.java +61 -8
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +35 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +3 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPrintOptions.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +2 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +20 -11
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +23 -0
- package/ReactAndroid/src/main/jni/react/cxxcomponents/BUCK +44 -0
- package/ReactAndroid/src/main/jni/react/cxxcomponents/CMakeLists.txt +22 -0
- package/ReactAndroid/src/main/jni/react/cxxcomponents/Component.h +66 -0
- package/ReactAndroid/src/main/jni/react/cxxcomponents/ComponentManager.h +26 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/BUCK +3 -3
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.cpp +37 -59
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.h +5 -9
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CMakeLists.txt +1 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.h +0 -0
- package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.cpp +51 -0
- package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.h +47 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.h +0 -0
- package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.cpp +73 -0
- package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.h +64 -0
- package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.cpp +100 -0
- package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.h +39 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.cpp +4 -2
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.h +4 -1
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.cpp +93 -55
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.h +3 -4
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/OnLoad.cpp +2 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.h +0 -0
- package/ReactAndroid/src/main/jni/react/fabric/viewPropConversions.h +215 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/.clang-tidy +1 -0
- package/ReactAndroid/src/main/jni/react/hermes/instrumentation/BUCK +27 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesMemoryDumper.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/BUCK +19 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/jni/react/jni/BUCK +3 -3
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +11 -25
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -10
- package/ReactAndroid/src/main/jni/react/jni/JCallback.h +7 -0
- package/ReactAndroid/src/main/jni/react/jscexecutor/BUCK +22 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/BUCK +0 -1
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/.clang-tidy +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +22 -0
- package/{template/android/app/src/main/jni/MainComponentsRegistry.cpp → ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp} +21 -16
- package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +47 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +51 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.h +48 -0
- package/ReactAndroid/src/main/jni/react/newarchdefaults/OnLoad.cpp +18 -0
- package/ReactAndroid/src/main/jni/react/perftests/BUCK +0 -1
- package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BUCK +0 -1
- package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/BUCK +0 -1
- package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/.clang-tidy +1 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/JNativeModulePerfLogger.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/BUCK +1 -3
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManagerDelegate.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/BUCK +0 -2
- package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/CMakeLists.txt +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.cpp +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.h +0 -0
- package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/OnLoad.cpp +0 -0
- package/ReactAndroid/src/main/libraries/fbjni/BUCK +1 -1
- package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +1 -1
- package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +13 -22
- package/ReactCommon/React-Fabric.podspec +17 -4
- package/ReactCommon/React-bridging.podspec +3 -2
- package/ReactCommon/ReactCommon.podspec +4 -2
- package/ReactCommon/butter/BUCK +4 -3
- package/ReactCommon/butter/CMakeLists.txt +3 -1
- package/ReactCommon/callinvoker/BUCK +1 -1
- package/ReactCommon/callinvoker/CMakeLists.txt +7 -1
- package/ReactCommon/cxxreact/BUCK +17 -11
- package/ReactCommon/cxxreact/CxxNativeModule.cpp +33 -25
- package/ReactCommon/cxxreact/JSBundleType.h +7 -4
- package/ReactCommon/cxxreact/JSExecutor.h +1 -2
- package/ReactCommon/cxxreact/NativeToJsBridge.cpp +2 -2
- package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
- package/ReactCommon/cxxreact/SampleCxxModule.cpp +1 -1
- package/ReactCommon/cxxreact/SystraceSection.h +11 -1
- package/ReactCommon/hermes/React-hermes.podspec +9 -6
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +11 -21
- package/ReactCommon/hermes/inspector/BUCK +4 -5
- package/ReactCommon/hermes/inspector/Inspector.cpp +1 -1
- package/ReactCommon/hermes/inspector/RuntimeAdapter.cpp +3 -8
- package/ReactCommon/hermes/inspector/RuntimeAdapter.h +4 -9
- package/ReactCommon/hermes/inspector/chrome/Connection.cpp +87 -20
- package/ReactCommon/hermes/inspector/chrome/Connection.h +1 -1
- package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.cpp +8 -19
- package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.h +3 -2
- package/ReactCommon/hermes/inspector/chrome/MessageConverters.cpp +10 -0
- package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +106 -1
- package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +49 -1
- package/ReactCommon/hermes/inspector/chrome/Registration.cpp +4 -4
- package/ReactCommon/hermes/inspector/chrome/Registration.h +9 -5
- package/ReactCommon/hermes/inspector/chrome/cli/main.cpp +5 -3
- package/ReactCommon/hermes/inspector/chrome/tests/ConnectionDemuxTests.cpp +3 -5
- package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +48 -0
- package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.cpp +1 -3
- package/ReactCommon/hermes/inspector/tests/InspectorTests.cpp +1 -3
- package/ReactCommon/hermes/inspector/tools/message_types.txt +2 -0
- package/ReactCommon/hermes/inspector/tools/run_msggen +3 -1
- package/ReactCommon/jserrorhandler/BUCK +30 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +107 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +39 -0
- package/ReactCommon/jsi/BUCK +3 -4
- package/ReactCommon/jsi/JSCRuntime.cpp +59 -0
- package/ReactCommon/jsi/React-jsc.podspec +41 -0
- package/ReactCommon/jsi/React-jsi.podspec +18 -23
- package/ReactCommon/jsi/React-jsidynamic.podspec +42 -0
- package/ReactCommon/jsi/jsi/JSIDynamic.cpp +7 -2
- package/ReactCommon/jsi/jsi/decorator.h +38 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +27 -0
- package/ReactCommon/jsi/jsi/jsi.cpp +18 -0
- package/ReactCommon/jsi/jsi/jsi.h +107 -0
- package/ReactCommon/jsiexecutor/BUCK +1 -2
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -0
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +1 -5
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +0 -2
- package/ReactCommon/jsinspector/BUCK +1 -1
- package/ReactCommon/logger/BUCK +1 -1
- package/ReactCommon/logger/React-logger.podspec +1 -1
- package/ReactCommon/react/bridging/Array.h +19 -0
- package/ReactCommon/react/bridging/BUCK +2 -2
- package/ReactCommon/react/bridging/Base.h +1 -2
- package/ReactCommon/react/bridging/CMakeLists.txt +8 -1
- package/ReactCommon/react/bridging/tests/BridgingTest.cpp +113 -0
- package/ReactCommon/react/config/BUCK +1 -3
- package/ReactCommon/react/config/CMakeLists.txt +2 -0
- package/ReactCommon/react/debug/BUCK +3 -4
- package/ReactCommon/react/debug/CMakeLists.txt +2 -0
- package/ReactCommon/react/nativemodule/core/BUCK +1 -3
- package/ReactCommon/react/nativemodule/core/CMakeLists.txt +8 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +2 -2
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +1 -0
- package/ReactCommon/react/nativemodule/samples/BUCK +1 -1
- package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +9 -1
- package/ReactCommon/react/renderer/.clang-tidy +144 -0
- package/ReactCommon/react/renderer/animations/BUCK +1 -6
- package/ReactCommon/react/renderer/animations/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +4 -6
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +26 -35
- package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +4 -6
- package/ReactCommon/react/renderer/animations/utils.cpp +2 -4
- package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +22 -5
- package/ReactCommon/react/renderer/attributedstring/AttributedString.h +13 -1
- package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +2 -4
- package/ReactCommon/react/renderer/attributedstring/BUCK +3 -5
- package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -4
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +8 -4
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -0
- package/ReactCommon/react/renderer/attributedstring/conversions.h +56 -0
- package/ReactCommon/react/renderer/attributedstring/primitives.h +9 -0
- package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +2 -4
- package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +2 -4
- package/ReactCommon/react/renderer/componentregistry/BUCK +1 -8
- package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +3 -5
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -1
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -13
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +3 -2
- package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -4
- package/ReactCommon/react/renderer/componentregistry/native/BUCK +1 -7
- package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +5 -7
- package/ReactCommon/react/renderer/components/image/BUCK +1 -4
- package/ReactCommon/react/renderer/components/image/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -4
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +82 -41
- package/ReactCommon/react/renderer/components/image/ImageProps.h +13 -7
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -4
- package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
- package/ReactCommon/react/renderer/components/modal/BUCK +2 -4
- package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/modal/ModalHostViewState.cpp +2 -4
- package/ReactCommon/react/renderer/components/progressbar/BUCK +2 -5
- package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.cpp +2 -4
- package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.cpp +3 -5
- package/ReactCommon/react/renderer/components/root/BUCK +1 -5
- package/ReactCommon/react/renderer/components/root/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/root/RootProps.cpp +4 -6
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
- package/ReactCommon/react/renderer/components/scrollview/BUCK +2 -5
- package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +2 -4
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +180 -163
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +2 -4
- package/ReactCommon/react/renderer/components/slider/BUCK +2 -4
- package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/slider/SliderShadowNode.cpp +3 -5
- package/ReactCommon/react/renderer/components/slider/SliderState.cpp +2 -4
- package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.cpp +2 -4
- package/ReactCommon/react/renderer/components/switch/BUCK +1 -9
- package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +2 -0
- package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.cpp +2 -4
- package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.cpp +3 -5
- package/ReactCommon/react/renderer/components/text/BUCK +1 -6
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +17 -24
- package/ReactCommon/react/renderer/components/text/BaseTextProps.h +0 -2
- package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +4 -6
- package/ReactCommon/react/renderer/components/text/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/text/ParagraphEventEmitter.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +84 -21
- package/ReactCommon/react/renderer/components/text/ParagraphProps.h +3 -3
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +5 -6
- package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/ParagraphState.h +9 -0
- package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/RawTextShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/TextProps.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/TextShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/text/conversions.h +1 -9
- package/ReactCommon/react/renderer/components/textinput/BUCK +2 -6
- package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +214 -66
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +59 -59
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +9 -11
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +24 -4
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +1 -3
- package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +4 -10
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.cpp +2 -4
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.h +2 -2
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +2 -4
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.cpp +4 -6
- package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +20 -0
- package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +10 -2
- package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +4 -4
- package/ReactCommon/react/renderer/components/unimplementedview/BUCK +1 -9
- package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +2 -4
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.cpp +2 -4
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewShadowNode.cpp +2 -4
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +134 -123
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.cpp +168 -0
- package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.h +33 -0
- package/ReactCommon/react/renderer/components/view/BUCK +3 -4
- package/ReactCommon/react/renderer/components/view/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +9 -5
- package/ReactCommon/react/renderer/components/view/PointerEvent.h +26 -0
- package/ReactCommon/react/renderer/components/view/Touch.cpp +3 -5
- package/ReactCommon/react/renderer/components/view/Touch.h +1 -1
- package/ReactCommon/react/renderer/components/view/TouchEvent.cpp +3 -5
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +8 -4
- package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +2 -4
- package/ReactCommon/react/renderer/components/view/ViewProps.cpp +195 -179
- package/ReactCommon/react/renderer/components/view/ViewProps.h +6 -0
- package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.cpp +202 -0
- package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.h +56 -0
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +8 -26
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +8 -9
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +38 -20
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +6 -1
- package/ReactCommon/react/renderer/components/view/YogaStylablePropsMapBuffer.cpp +87 -0
- package/ReactCommon/{hermes/inspector/chrome/AutoAttachUtils.h → react/renderer/components/view/YogaStylablePropsMapBuffer.h} +11 -11
- package/ReactCommon/react/renderer/components/view/conversions.h +18 -0
- package/ReactCommon/react/renderer/components/view/primitives.h +10 -0
- package/ReactCommon/react/renderer/components/view/propsConversions.h +37 -17
- package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +2 -4
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +2 -4
- package/ReactCommon/react/renderer/components/view/viewPropConversions.h +198 -0
- package/ReactCommon/react/renderer/core/BUCK +8 -9
- package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -4
- package/ReactCommon/react/renderer/core/CMakeLists.txt +9 -1
- package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +2 -4
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +2 -1
- package/ReactCommon/react/renderer/core/CoreFeatures.cpp +17 -0
- package/ReactCommon/react/renderer/core/CoreFeatures.h +31 -0
- package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +2 -4
- package/ReactCommon/react/renderer/core/EventBeat.cpp +2 -4
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +2 -4
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -5
- package/ReactCommon/react/renderer/core/EventQueue.cpp +3 -5
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -4
- package/ReactCommon/react/renderer/core/EventTarget.cpp +3 -5
- package/ReactCommon/react/renderer/core/LayoutConstraints.cpp +2 -4
- package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +3 -5
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +96 -18
- package/ReactCommon/react/renderer/core/Props.cpp +12 -15
- package/ReactCommon/react/renderer/core/Props.h +8 -11
- package/ReactCommon/react/renderer/core/PropsMacros.h +20 -6
- package/ReactCommon/react/renderer/core/PropsMapBuffer.cpp +37 -0
- package/ReactCommon/react/renderer/core/PropsMapBuffer.h +23 -0
- package/ReactCommon/react/renderer/core/RawEvent.cpp +2 -4
- package/ReactCommon/react/renderer/core/RawProps.cpp +5 -6
- package/ReactCommon/react/renderer/core/RawProps.h +1 -1
- package/ReactCommon/react/renderer/core/RawPropsKey.cpp +4 -6
- package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +2 -4
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +3 -5
- package/ReactCommon/react/renderer/core/RawPropsParser.h +2 -2
- package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -1
- package/ReactCommon/react/renderer/core/RawValue.h +10 -14
- package/ReactCommon/react/renderer/core/Sealable.cpp +4 -6
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +6 -4
- package/ReactCommon/react/renderer/core/ShadowNode.h +5 -0
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +3 -5
- package/ReactCommon/react/renderer/core/ShadowNodeFamilyFragment.cpp +2 -4
- package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +2 -4
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.cpp +1 -3
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +18 -13
- package/ReactCommon/react/renderer/core/State.cpp +2 -4
- package/ReactCommon/react/renderer/core/UnbatchedEventQueue.cpp +2 -4
- package/ReactCommon/react/renderer/core/propsConversions.h +17 -35
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +3 -3
- package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +372 -0
- package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +2 -2
- package/ReactCommon/react/renderer/core/tests/TestComponent.h +4 -2
- package/ReactCommon/react/renderer/core/tests/benchmarks/RawPropsBenchmark.cpp +2 -4
- package/ReactCommon/react/renderer/debug/BUCK +1 -4
- package/ReactCommon/react/renderer/debug/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +6 -8
- package/ReactCommon/react/renderer/debug/DebugStringConvertibleItem.cpp +2 -4
- package/ReactCommon/react/renderer/element/BUCK +1 -1
- package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +2 -4
- package/ReactCommon/react/renderer/graphics/BUCK +2 -5
- package/ReactCommon/react/renderer/graphics/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
- package/ReactCommon/react/renderer/graphics/Transform.cpp +43 -17
- package/ReactCommon/react/renderer/graphics/Transform.h +20 -5
- package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +4 -6
- package/ReactCommon/react/renderer/graphics/tests/TransformTest.cpp +7 -0
- package/ReactCommon/react/renderer/imagemanager/BUCK +1 -4
- package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/imagemanager/ImageManager.h +1 -1
- package/ReactCommon/react/renderer/imagemanager/ImageResponse.cpp +2 -4
- package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +2 -4
- package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.cpp +2 -4
- package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +6 -7
- package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequest.cpp +2 -4
- package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +14 -16
- package/ReactCommon/react/renderer/leakchecker/BUCK +1 -1
- package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +4 -6
- package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -1
- package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +3 -6
- package/ReactCommon/react/renderer/mapbuffer/BUCK +5 -6
- package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +28 -5
- package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +2 -0
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +35 -4
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +5 -0
- package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +25 -0
- package/ReactCommon/react/renderer/mounting/BUCK +2 -5
- package/ReactCommon/react/renderer/mounting/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +15 -92
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -6
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -1
- package/ReactCommon/react/renderer/mounting/MountingTransaction.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -8
- package/ReactCommon/react/renderer/mounting/ShadowTree.h +4 -4
- package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/ShadowView.cpp +5 -6
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +8 -9
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +4 -3
- package/ReactCommon/react/renderer/mounting/StubView.cpp +4 -6
- package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/stubs.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +2 -4
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -6
- package/ReactCommon/react/renderer/runtimescheduler/BUCK +2 -1
- package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +5 -6
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +4 -6
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +2 -4
- package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +6 -8
- package/ReactCommon/react/renderer/runtimescheduler/Task.h +1 -1
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +45 -45
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +1 -1
- package/ReactCommon/react/renderer/scheduler/BUCK +1 -5
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +16 -36
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +1 -4
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +0 -8
- package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +7 -0
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +10 -9
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -1
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -4
- package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +3 -5
- package/ReactCommon/react/renderer/telemetry/BUCK +1 -5
- package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/telemetry/SurfaceTelemetry.cpp +2 -4
- package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +2 -4
- package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -5
- package/ReactCommon/react/renderer/templateprocessor/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +2 -4
- package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.h +2 -2
- package/ReactCommon/react/renderer/templateprocessor/tests/UITemplateProcessorTest.cpp +8 -9
- package/ReactCommon/react/renderer/textlayoutmanager/BUCK +1 -5
- package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +2 -4
- package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +8 -72
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +1 -2
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +53 -2
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTTextPrimitivesConversions.h +46 -23
- package/ReactCommon/react/renderer/timeline/BUCK +2 -5
- package/ReactCommon/react/renderer/timeline/Timeline.cpp +7 -8
- package/ReactCommon/react/renderer/timeline/TimelineController.cpp +3 -5
- package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +2 -4
- package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +3 -5
- package/ReactCommon/react/renderer/timeline/TimelineHandler.h +2 -2
- package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +2 -4
- package/ReactCommon/react/renderer/uimanager/BUCK +2 -5
- package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +8 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +13 -16
- package/ReactCommon/react/renderer/uimanager/UIManager.h +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +50 -54
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +1 -7
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +0 -9
- package/ReactCommon/react/test_utils/BUCK +1 -1
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +6 -0
- package/ReactCommon/react/utils/BUCK +2 -6
- package/ReactCommon/react/utils/CMakeLists.txt +2 -0
- package/ReactCommon/react/utils/ManagedObjectWrapper.h +1 -1
- package/ReactCommon/react/utils/ManagedObjectWrapper.mm +1 -3
- package/ReactCommon/reactperflogger/BUCK +1 -1
- package/ReactCommon/reactperflogger/CMakeLists.txt +7 -1
- package/ReactCommon/runtimeexecutor/BUCK +1 -1
- package/ReactCommon/runtimeexecutor/CMakeLists.txt +7 -1
- package/ReactCommon/yoga/CMakeLists.txt +7 -1
- package/ReactCommon/yoga/yoga/CompactValue.h +49 -29
- package/ReactCommon/yoga/yoga/Utils.cpp +4 -0
- package/ReactCommon/yoga/yoga/YGEnums.cpp +14 -0
- package/ReactCommon/yoga/yoga/YGEnums.h +31 -52
- package/ReactCommon/yoga/yoga/YGMacros.h +43 -0
- package/ReactCommon/yoga/yoga/YGNode.cpp +33 -0
- package/ReactCommon/yoga/yoga/YGNode.h +11 -0
- package/ReactCommon/yoga/yoga/YGNodePrint.cpp +14 -0
- package/ReactCommon/yoga/yoga/YGStyle.cpp +1 -1
- package/ReactCommon/yoga/yoga/YGStyle.h +5 -0
- package/ReactCommon/yoga/yoga/Yoga.cpp +57 -19
- package/ReactCommon/yoga/yoga/Yoga.h +7 -0
- package/ReactCommon/yoga/yoga/event/event.h +3 -0
- package/flow/jest.js +2 -2
- package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
- package/flow-typed/npm/yargs_v17.x.x.js +341 -0
- package/index.js +73 -44
- package/interface.js +8 -0
- package/jest/react-native-env.js +16 -0
- package/jest/renderer.js +2 -2
- package/jest/setup.js +5 -8
- package/jest-preset.js +1 -1
- package/package.json +56 -44
- package/react.gradle +20 -2
- package/scripts/cocoapods/codegen.rb +5 -1
- package/scripts/cocoapods/codegen_utils.rb +40 -5
- package/scripts/cocoapods/fabric.rb +8 -11
- package/scripts/cocoapods/flipper.rb +1 -1
- package/scripts/cocoapods/jsengine.rb +56 -0
- package/scripts/cocoapods/new_architecture.rb +39 -1
- package/scripts/cocoapods/utils.rb +8 -0
- package/scripts/codegen/generate-artifacts-executor.js +2 -2
- package/scripts/{generate-artifacts.js → generate-codegen-artifacts.js} +0 -0
- package/scripts/hermes/hermes-utils.js +139 -60
- package/scripts/hermes/prepare-hermes-for-build.js +9 -8
- package/scripts/native_modules.rb +6 -0
- package/scripts/packager.sh +1 -1
- package/scripts/react-native-xcode.sh +19 -6
- package/scripts/react_native_pods.rb +68 -13
- package/scripts/react_native_pods_utils/script_phases.sh +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +94 -40
- package/sdks/hermes-engine/hermes-utils.rb +26 -0
- package/sdks/hermes-engine/utils/build-apple-framework.sh +84 -44
- package/sdks/hermes-engine/utils/build-hermes-xcode.sh +65 -0
- package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +22 -0
- package/sdks/hermes-engine/utils/build-ios-framework.sh +2 -1
- package/sdks/hermes-engine/utils/build-mac-framework.sh +2 -1
- package/sdks/hermes-engine/utils/copy-hermes-xcode.sh +14 -0
- package/sdks/hermesc/linux64-bin/hermesc +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/template/{App.js → App.tsx} +9 -8
- package/template/Gemfile +2 -2
- package/template/__tests__/{App-test.js → App-test.tsx} +0 -0
- package/template/_eslintrc.js +2 -0
- package/template/_gitignore +5 -6
- package/template/_ruby-version +1 -1
- package/template/android/app/build.gradle +65 -208
- package/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java +4 -2
- package/template/android/app/src/main/AndroidManifest.xml +1 -2
- package/template/android/app/src/main/java/com/helloworld/MainActivity.java +13 -26
- package/template/android/app/src/main/java/com/helloworld/MainApplication.java +18 -47
- package/template/android/app/src/release/java/com/helloworld/ReactNativeFlipper.java +20 -0
- package/template/android/build.gradle +4 -18
- package/template/android/gradle.properties +4 -0
- package/template/android/settings.gradle +0 -7
- package/template/ios/HelloWorld/AppDelegate.h +2 -4
- package/template/ios/HelloWorld/AppDelegate.mm +9 -110
- package/template/ios/HelloWorld/Info.plist +2 -2
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
- package/template/ios/Podfile +7 -5
- package/template/package.json +17 -10
- package/template/tsconfig.json +3 -0
- package/third-party-podspecs/RCT-Folly.podspec +1 -1
- package/third-party-podspecs/boost.podspec +1 -1
- package/types/.npmignore +1 -0
- package/types/index.d.ts +213 -0
- package/types/modules/BatchedBridge.d.ts +32 -0
- package/types/modules/Codegen.d.ts +74 -0
- package/types/modules/Devtools.d.ts +31 -0
- package/types/modules/LaunchScreen.d.ts +18 -0
- package/types/modules/globals.d.ts +577 -0
- package/types/private/TimerMixin.d.ts +19 -0
- package/{React/Views/RCTMaskedView.h → types/private/Utilities.d.ts} +4 -8
- package/types/public/DeprecatedPropertiesAlias.d.ts +205 -0
- package/types/public/Insets.d.ts +15 -0
- package/types/public/ReactNativeRenderer.d.ts +149 -0
- package/types/public/ReactNativeTypes.d.ts +141 -0
- package/types/tsconfig.json +15 -0
- package/types/tslint.json +23 -0
- package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
- package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
- package/Libraries/Core/setUpSystrace.js +0 -21
- package/Libraries/Storage/AsyncStorage.js +0 -385
- package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
- package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
- package/Libraries/Utilities/JSDevSupportModule.js +0 -37
- package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
- package/React/CoreModules/RCTAsyncLocalStorage.h +0 -41
- package/React/CoreModules/RCTAsyncLocalStorage.mm +0 -470
- package/React/Views/RCTMaskedView.m +0 -34
- package/React/Views/RCTMaskedViewManager.m +0 -26
- package/ReactAndroid/cmake-utils/Android-prebuilt.cmake +0 -231
- package/ReactAndroid/src/main/java/com/facebook/react/JSInterpreter.java +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java +0 -103
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +0 -540
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java +0 -125
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java +0 -38
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +0 -433
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java +0 -163
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +0 -72
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +0 -242
- package/ReactAndroid/src/main/jni/first-party/fbjni/.gitignore +0 -2
- package/ReactAndroid/src/main/jni/first-party/fbjni/Android.mk +0 -14
- package/ReactAndroid/src/main/jni/first-party/fbjni/CMakeLists.txt +0 -15
- package/ReactCommon/hermes/inspector/chrome/AutoAttachUtils.cpp +0 -151
- package/ReactCommon/hermes/inspector/tools/msggen/.babelrc +0 -8
- package/ReactCommon/hermes/inspector/tools/msggen/.gitignore +0 -3
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +0 -62
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +0 -47
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +0 -78
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +0 -128
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +0 -171
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +0 -131
- package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +0 -50
- package/ReactCommon/hermes/inspector/tools/msggen/package.json +0 -41
- package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -79
- package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -39
- package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -57
- package/ReactCommon/hermes/inspector/tools/msggen/src/GeneratedHeader.js +0 -16
- package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -90
- package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -323
- package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -421
- package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +0 -219
- package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +0 -40
- package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -98
- package/ReactCommon/hermes/inspector/tools/msggen/src/custom.json +0 -26
- package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +0 -251
- package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +0 -6088
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug-sources.jar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug-sources.jar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug.aar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug.aar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug.aar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-debug.aar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release-sources.jar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release-sources.jar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release.aar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release.aar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release.aar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3-release.aar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.module +0 -204
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.module.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.module.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.module.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.module.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.pom +0 -44
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.pom.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.pom.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.pom.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.70.3/hermes-engine-0.70.3.pom.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml +0 -13
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug-sources.jar +0 -0
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug-sources.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug.aar +0 -0
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug.aar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-debug.aar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release-sources.jar +0 -0
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release-sources.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release.aar +0 -0
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release.aar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3-release.aar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.module +0 -628
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.module.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.module.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.module.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.module.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.pom +0 -156
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.pom.md5 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.pom.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.pom.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.70.3/react-native-0.70.3.pom.sha512 +0 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml +0 -13
- package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +0 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +0 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +0 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +0 -1
- package/scripts/cocoapods/hermes.rb +0 -20
- package/template/_buckconfig +0 -6
- package/template/_flowconfig +0 -66
- package/template/android/app/_BUCK +0 -55
- package/template/android/app/build_defs.bzl +0 -19
- package/template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java +0 -116
- package/template/android/app/src/main/java/com/helloworld/newarchitecture/components/MainComponentsRegistry.java +0 -36
- package/template/android/app/src/main/java/com/helloworld/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java +0 -48
- package/template/android/app/src/main/jni/CMakeLists.txt +0 -7
- package/template/android/app/src/main/jni/MainApplicationModuleProvider.cpp +0 -32
- package/template/android/app/src/main/jni/MainApplicationModuleProvider.h +0 -16
- package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp +0 -45
- package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h +0 -38
- package/template/android/app/src/main/jni/MainComponentsRegistry.h +0 -32
- package/template/android/app/src/main/jni/OnLoad.cpp +0 -11
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
#import "RCTSurfaceTouchHandler.h"
|
|
9
9
|
|
|
10
|
+
#import <React/RCTReactTaggedView.h>
|
|
10
11
|
#import <React/RCTUtils.h>
|
|
11
12
|
#import <React/RCTViewComponentView.h>
|
|
12
|
-
#import <UIKit/UIGestureRecognizerSubclass.h>
|
|
13
13
|
|
|
14
14
|
#import "RCTConversions.h"
|
|
15
15
|
#import "RCTTouchableComponentViewProtocol.h"
|
|
@@ -83,6 +83,27 @@ struct ActiveTouch {
|
|
|
83
83
|
*/
|
|
84
84
|
UIEventButtonMask buttonMask;
|
|
85
85
|
|
|
86
|
+
/*
|
|
87
|
+
* The bit mask of modifier flags in the gesture represented by the receiver.
|
|
88
|
+
*/
|
|
89
|
+
UIKeyModifierFlags modifierFlags;
|
|
90
|
+
|
|
91
|
+
/*
|
|
92
|
+
* Indicates if the active touch represents the primary pointer of this pointer type.
|
|
93
|
+
*/
|
|
94
|
+
bool isPrimary;
|
|
95
|
+
|
|
96
|
+
/*
|
|
97
|
+
* The button number that was pressed (if applicable) when the event was fired.
|
|
98
|
+
*/
|
|
99
|
+
int button;
|
|
100
|
+
|
|
101
|
+
/*
|
|
102
|
+
* Informs the event system that when the touch is released it should be treated as the
|
|
103
|
+
* pointer leaving the screen entirely.
|
|
104
|
+
*/
|
|
105
|
+
bool shouldLeaveWhenReleased;
|
|
106
|
+
|
|
86
107
|
/*
|
|
87
108
|
* A component view on which the touch was begun.
|
|
88
109
|
*/
|
|
@@ -103,6 +124,15 @@ struct ActiveTouch {
|
|
|
103
124
|
};
|
|
104
125
|
};
|
|
105
126
|
|
|
127
|
+
// Mouse and Pen pointers get reserved IDs so they stay consistent no matter the order
|
|
128
|
+
// at which events come in
|
|
129
|
+
static int const kMousePointerId = 0;
|
|
130
|
+
static int const kPencilPointerId = 1;
|
|
131
|
+
|
|
132
|
+
// If a new reserved ID is added above this should be incremented to ensure touch events
|
|
133
|
+
// do not conflict
|
|
134
|
+
static int const kTouchIdentifierPoolOffset = 2;
|
|
135
|
+
|
|
106
136
|
// Returns a CGPoint which represents the tiltX/Y values (in RADIANS)
|
|
107
137
|
// Adapted from https://gist.github.com/k3a/2903719bb42b48c9198d20c2d6f73ac1
|
|
108
138
|
static CGPoint SphericalToTilt(CGFloat altitudeAngleRad, CGFloat azimuthAngleRad)
|
|
@@ -140,12 +170,37 @@ static CGFloat RadsToDegrees(CGFloat rads)
|
|
|
140
170
|
}
|
|
141
171
|
|
|
142
172
|
static int ButtonMaskToButtons(UIEventButtonMask buttonMask)
|
|
173
|
+
{
|
|
174
|
+
int buttonsMaskResult = 0;
|
|
175
|
+
if (@available(iOS 13.4, *)) {
|
|
176
|
+
if ((buttonMask & UIEventButtonMaskPrimary) != 0) {
|
|
177
|
+
buttonsMaskResult |= 1;
|
|
178
|
+
}
|
|
179
|
+
if ((buttonMask & UIEventButtonMaskSecondary) != 0) {
|
|
180
|
+
buttonsMaskResult |= 2;
|
|
181
|
+
}
|
|
182
|
+
// undocumented mask value which represents the "auxiliary button" (i.e. middle mouse button)
|
|
183
|
+
if ((buttonMask & 0x4) != 0) {
|
|
184
|
+
buttonsMaskResult |= 4;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
return buttonsMaskResult;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
static int ButtonMaskDiffToButton(UIEventButtonMask prevButtonMask, UIEventButtonMask curButtonMask)
|
|
143
191
|
{
|
|
144
192
|
if (@available(iOS 13.4, *)) {
|
|
145
|
-
|
|
146
|
-
|
|
193
|
+
if ((prevButtonMask & UIEventButtonMaskPrimary) != (curButtonMask & UIEventButtonMaskPrimary)) {
|
|
194
|
+
return 0;
|
|
195
|
+
}
|
|
196
|
+
if ((prevButtonMask & 0x4) != (curButtonMask & 0x4)) {
|
|
197
|
+
return 1;
|
|
198
|
+
}
|
|
199
|
+
if ((prevButtonMask & UIEventButtonMaskSecondary) != (curButtonMask & UIEventButtonMaskSecondary)) {
|
|
200
|
+
return 2;
|
|
201
|
+
}
|
|
147
202
|
}
|
|
148
|
-
return
|
|
203
|
+
return -1;
|
|
149
204
|
}
|
|
150
205
|
|
|
151
206
|
static void UpdateActiveTouchWithUITouch(
|
|
@@ -177,9 +232,17 @@ static void UpdateActiveTouchWithUITouch(
|
|
|
177
232
|
activeTouch.altitudeAngle = uiTouch.altitudeAngle;
|
|
178
233
|
activeTouch.azimuthAngle = [uiTouch azimuthAngleInView:nil];
|
|
179
234
|
if (@available(iOS 13.4, *)) {
|
|
180
|
-
|
|
235
|
+
UIEventButtonMask nextButtonMask = 0;
|
|
236
|
+
if (uiTouch.phase != UITouchPhaseEnded) {
|
|
237
|
+
nextButtonMask = uiTouch.type == UITouchTypeIndirectPointer ? uiEvent.buttonMask : 1;
|
|
238
|
+
}
|
|
239
|
+
activeTouch.button = ButtonMaskDiffToButton(activeTouch.buttonMask, nextButtonMask);
|
|
240
|
+
activeTouch.buttonMask = nextButtonMask;
|
|
241
|
+
activeTouch.modifierFlags = uiEvent.modifierFlags;
|
|
181
242
|
} else {
|
|
243
|
+
activeTouch.button = 0;
|
|
182
244
|
activeTouch.buttonMask = 0;
|
|
245
|
+
activeTouch.modifierFlags = 0;
|
|
183
246
|
}
|
|
184
247
|
}
|
|
185
248
|
|
|
@@ -200,7 +263,6 @@ CreateTouchWithUITouch(UITouch *uiTouch, UIEvent *uiEvent, UIView *rootComponent
|
|
|
200
263
|
}
|
|
201
264
|
componentView = componentView.superview;
|
|
202
265
|
}
|
|
203
|
-
|
|
204
266
|
UpdateActiveTouchWithUITouch(activeTouch, uiTouch, uiEvent, rootComponentView, rootViewOriginOffset);
|
|
205
267
|
return activeTouch;
|
|
206
268
|
}
|
|
@@ -216,12 +278,12 @@ static UIView *FindClosestFabricManagedTouchableView(UIView *componentView)
|
|
|
216
278
|
return nil;
|
|
217
279
|
}
|
|
218
280
|
|
|
219
|
-
static NSOrderedSet *GetTouchableViewsInPathToRoot(UIView *componentView)
|
|
281
|
+
static NSOrderedSet<RCTReactTaggedView *> *GetTouchableViewsInPathToRoot(UIView *componentView)
|
|
220
282
|
{
|
|
221
283
|
NSMutableOrderedSet *results = [NSMutableOrderedSet orderedSet];
|
|
222
284
|
do {
|
|
223
285
|
if ([componentView respondsToSelector:@selector(touchEventEmitterAtPoint:)]) {
|
|
224
|
-
[results addObject:componentView];
|
|
286
|
+
[results addObject:[RCTReactTaggedView wrap:componentView]];
|
|
225
287
|
}
|
|
226
288
|
componentView = componentView.superview;
|
|
227
289
|
} while (componentView);
|
|
@@ -248,18 +310,41 @@ static const char *PointerTypeCStringFromUITouchType(UITouchType type)
|
|
|
248
310
|
}
|
|
249
311
|
}
|
|
250
312
|
|
|
313
|
+
static void UpdatePointerEventModifierFlags(PointerEvent &event, UIKeyModifierFlags flags)
|
|
314
|
+
{
|
|
315
|
+
if (@available(iOS 13.4, *)) {
|
|
316
|
+
event.ctrlKey = (flags & UIKeyModifierControl) != 0;
|
|
317
|
+
event.shiftKey = (flags & UIKeyModifierShift) != 0;
|
|
318
|
+
event.altKey = (flags & UIKeyModifierAlternate) != 0;
|
|
319
|
+
event.metaKey = (flags & UIKeyModifierCommand) != 0;
|
|
320
|
+
} else {
|
|
321
|
+
event.ctrlKey = false;
|
|
322
|
+
event.shiftKey = false;
|
|
323
|
+
event.altKey = false;
|
|
324
|
+
event.metaKey = false;
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
|
|
251
328
|
static PointerEvent CreatePointerEventFromActiveTouch(ActiveTouch activeTouch, RCTTouchEventType eventType)
|
|
252
329
|
{
|
|
253
330
|
Touch touch = activeTouch.touch;
|
|
254
331
|
|
|
255
332
|
PointerEvent event = {};
|
|
256
333
|
event.pointerId = touch.identifier;
|
|
257
|
-
event.pressure = touch.force;
|
|
258
334
|
event.pointerType = PointerTypeCStringFromUITouchType(activeTouch.touchType);
|
|
259
335
|
event.clientPoint = touch.pagePoint;
|
|
260
336
|
event.screenPoint = touch.screenPoint;
|
|
261
337
|
event.offsetPoint = touch.offsetPoint;
|
|
262
338
|
|
|
339
|
+
event.pressure = touch.force;
|
|
340
|
+
if (@available(iOS 13.4, *)) {
|
|
341
|
+
if (activeTouch.touchType == UITouchTypeIndirectPointer) {
|
|
342
|
+
// pointer events with a mouse button pressed should report a pressure of 0.5
|
|
343
|
+
// when the touch is down and 0.0 when it is lifted regardless of how it is reported by the OS
|
|
344
|
+
event.pressure = eventType != RCTTouchEventTypeTouchEnd ? 0.5 : 0.0;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
|
|
263
348
|
CGFloat pointerSize = activeTouch.majorRadius * 2.0;
|
|
264
349
|
if (@available(iOS 13.4, *)) {
|
|
265
350
|
if (activeTouch.touchType == UITouchTypeIndirectPointer) {
|
|
@@ -276,31 +361,29 @@ static PointerEvent CreatePointerEventFromActiveTouch(ActiveTouch activeTouch, R
|
|
|
276
361
|
|
|
277
362
|
event.detail = 0;
|
|
278
363
|
|
|
364
|
+
event.button = activeTouch.button;
|
|
279
365
|
event.buttons = ButtonMaskToButtons(activeTouch.buttonMask);
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
if (eventType == RCTTouchEventTypeTouchEnd) {
|
|
283
|
-
event.buttons = 0;
|
|
284
|
-
}
|
|
366
|
+
|
|
367
|
+
UpdatePointerEventModifierFlags(event, activeTouch.modifierFlags);
|
|
285
368
|
|
|
286
369
|
event.tangentialPressure = 0.0;
|
|
287
370
|
event.twist = 0;
|
|
371
|
+
event.isPrimary = activeTouch.isPrimary;
|
|
288
372
|
|
|
289
373
|
return event;
|
|
290
374
|
}
|
|
291
375
|
|
|
292
376
|
static PointerEvent CreatePointerEventFromIncompleteHoverData(
|
|
293
|
-
UIView *view,
|
|
294
377
|
CGPoint clientLocation,
|
|
295
378
|
CGPoint screenLocation,
|
|
296
379
|
CGPoint offsetLocation,
|
|
297
|
-
|
|
380
|
+
UIKeyModifierFlags modifierFlags)
|
|
298
381
|
{
|
|
299
382
|
PointerEvent event = {};
|
|
300
383
|
// "touch" events produced from a mouse cursor on iOS always have the ID 0 so
|
|
301
384
|
// we can just assume that here since these sort of hover events only ever come
|
|
302
385
|
// from the mouse
|
|
303
|
-
event.pointerId =
|
|
386
|
+
event.pointerId = kMousePointerId;
|
|
304
387
|
event.pressure = 0.0;
|
|
305
388
|
event.pointerType = "mouse";
|
|
306
389
|
event.clientPoint = RCTPointFromCGPoint(clientLocation);
|
|
@@ -311,9 +394,13 @@ static PointerEvent CreatePointerEventFromIncompleteHoverData(
|
|
|
311
394
|
event.tiltX = 0;
|
|
312
395
|
event.tiltY = 0;
|
|
313
396
|
event.detail = 0;
|
|
397
|
+
event.button = -1;
|
|
314
398
|
event.buttons = 0;
|
|
399
|
+
UpdatePointerEventModifierFlags(event, modifierFlags);
|
|
315
400
|
event.tangentialPressure = 0.0;
|
|
316
401
|
event.twist = 0;
|
|
402
|
+
event.isPrimary = true;
|
|
403
|
+
|
|
317
404
|
return event;
|
|
318
405
|
}
|
|
319
406
|
|
|
@@ -337,9 +424,10 @@ static BOOL AnyTouchesChanged(NSSet<UITouch *> *touches)
|
|
|
337
424
|
return NO;
|
|
338
425
|
}
|
|
339
426
|
|
|
340
|
-
static BOOL IsViewListeningToEvent(
|
|
427
|
+
static BOOL IsViewListeningToEvent(RCTReactTaggedView *taggedView, ViewEvents::Offset eventType)
|
|
341
428
|
{
|
|
342
|
-
|
|
429
|
+
UIView *view = taggedView.view;
|
|
430
|
+
if (view && [view.class conformsToProtocol:@protocol(RCTComponentViewProtocol)]) {
|
|
343
431
|
auto props = ((id<RCTComponentViewProtocol>)view).props;
|
|
344
432
|
if (SharedViewProps viewProps = std::dynamic_pointer_cast<ViewProps const>(props)) {
|
|
345
433
|
return viewProps->events[eventType];
|
|
@@ -348,10 +436,10 @@ static BOOL IsViewListeningToEvent(UIView *view, ViewEvents::Offset eventType)
|
|
|
348
436
|
return NO;
|
|
349
437
|
}
|
|
350
438
|
|
|
351
|
-
static BOOL IsAnyViewInPathListeningToEvent(NSOrderedSet<
|
|
439
|
+
static BOOL IsAnyViewInPathListeningToEvent(NSOrderedSet<RCTReactTaggedView *> *viewPath, ViewEvents::Offset eventType)
|
|
352
440
|
{
|
|
353
|
-
for (
|
|
354
|
-
if (IsViewListeningToEvent(
|
|
441
|
+
for (RCTReactTaggedView *taggedView in viewPath) {
|
|
442
|
+
if (IsViewListeningToEvent(taggedView, eventType)) {
|
|
355
443
|
return YES;
|
|
356
444
|
}
|
|
357
445
|
}
|
|
@@ -386,7 +474,9 @@ struct PointerHasher {
|
|
|
386
474
|
IdentifierPool<11> _identifierPool;
|
|
387
475
|
|
|
388
476
|
UIHoverGestureRecognizer *_hoverRecognizer API_AVAILABLE(ios(13.0));
|
|
389
|
-
NSOrderedSet *
|
|
477
|
+
NSMutableDictionary<NSNumber *, NSOrderedSet<RCTReactTaggedView *> *> *_currentlyHoveredViewsPerPointer;
|
|
478
|
+
|
|
479
|
+
int _primaryTouchPointerId;
|
|
390
480
|
}
|
|
391
481
|
|
|
392
482
|
- (instancetype)init
|
|
@@ -403,7 +493,8 @@ struct PointerHasher {
|
|
|
403
493
|
self.delegate = self;
|
|
404
494
|
|
|
405
495
|
_hoverRecognizer = nil;
|
|
406
|
-
|
|
496
|
+
_currentlyHoveredViewsPerPointer = [[NSMutableDictionary alloc] init];
|
|
497
|
+
_primaryTouchPointerId = -1;
|
|
407
498
|
}
|
|
408
499
|
|
|
409
500
|
return self;
|
|
@@ -444,7 +535,42 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
444
535
|
{
|
|
445
536
|
for (UITouch *touch in touches) {
|
|
446
537
|
auto activeTouch = CreateTouchWithUITouch(touch, event, _rootComponentView, _viewOriginOffset);
|
|
447
|
-
|
|
538
|
+
|
|
539
|
+
if (@available(iOS 13.4, *)) {
|
|
540
|
+
switch (touch.type) {
|
|
541
|
+
case UITouchTypeIndirectPointer:
|
|
542
|
+
activeTouch.touch.identifier = kMousePointerId;
|
|
543
|
+
activeTouch.isPrimary = true;
|
|
544
|
+
break;
|
|
545
|
+
case UITouchTypePencil:
|
|
546
|
+
activeTouch.touch.identifier = kPencilPointerId;
|
|
547
|
+
activeTouch.isPrimary = true;
|
|
548
|
+
break;
|
|
549
|
+
default:
|
|
550
|
+
// use the identifier pool offset to ensure no conflicts between the reserved IDs and the
|
|
551
|
+
// touch IDs
|
|
552
|
+
activeTouch.touch.identifier = _identifierPool.dequeue() + kTouchIdentifierPoolOffset;
|
|
553
|
+
if (_primaryTouchPointerId == -1) {
|
|
554
|
+
_primaryTouchPointerId = activeTouch.touch.identifier;
|
|
555
|
+
activeTouch.isPrimary = true;
|
|
556
|
+
}
|
|
557
|
+
break;
|
|
558
|
+
}
|
|
559
|
+
} else {
|
|
560
|
+
activeTouch.touch.identifier = _identifierPool.dequeue();
|
|
561
|
+
if (_primaryTouchPointerId == -1) {
|
|
562
|
+
_primaryTouchPointerId = activeTouch.touch.identifier;
|
|
563
|
+
activeTouch.isPrimary = true;
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
// If the pointer has not been marked as hovering over views before the touch started, we register
|
|
568
|
+
// that the activeTouch should not maintain its hovered state once the pointer has been lifted.
|
|
569
|
+
auto currentlyHoveredViews = [_currentlyHoveredViewsPerPointer objectForKey:@(activeTouch.touch.identifier)];
|
|
570
|
+
if (currentlyHoveredViews == nil || [currentlyHoveredViews count] == 0) {
|
|
571
|
+
activeTouch.shouldLeaveWhenReleased = YES;
|
|
572
|
+
}
|
|
573
|
+
|
|
448
574
|
_activeTouches.emplace(touch, activeTouch);
|
|
449
575
|
}
|
|
450
576
|
}
|
|
@@ -471,7 +597,25 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
471
597
|
continue;
|
|
472
598
|
}
|
|
473
599
|
auto &activeTouch = iterator->second;
|
|
474
|
-
|
|
600
|
+
|
|
601
|
+
if (activeTouch.touch.identifier == _primaryTouchPointerId) {
|
|
602
|
+
_primaryTouchPointerId = -1;
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
if (@available(iOS 13.4, *)) {
|
|
606
|
+
// only need to enqueue if the touch type isn't one with a reserved identifier
|
|
607
|
+
switch (touch.type) {
|
|
608
|
+
case UITouchTypeIndirectPointer:
|
|
609
|
+
case UITouchTypePencil:
|
|
610
|
+
break;
|
|
611
|
+
default:
|
|
612
|
+
// since the touch's identifier has been offset we need to re-normalize it to 0-based
|
|
613
|
+
// which is what the identifier pool expects
|
|
614
|
+
_identifierPool.enqueue(activeTouch.touch.identifier - kTouchIdentifierPoolOffset);
|
|
615
|
+
}
|
|
616
|
+
} else {
|
|
617
|
+
_identifierPool.enqueue(activeTouch.touch.identifier);
|
|
618
|
+
}
|
|
475
619
|
_activeTouches.erase(touch);
|
|
476
620
|
}
|
|
477
621
|
}
|
|
@@ -512,19 +656,38 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
512
656
|
// emit w3c pointer events
|
|
513
657
|
if (RCTGetDispatchW3CPointerEvents()) {
|
|
514
658
|
PointerEvent pointerEvent = CreatePointerEventFromActiveTouch(activeTouch, eventType);
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
659
|
+
|
|
660
|
+
if ((eventType == RCTTouchEventTypeTouchEnd && activeTouch.shouldLeaveWhenReleased)) {
|
|
661
|
+
activeTouch.eventEmitter->onPointerUp(pointerEvent);
|
|
662
|
+
[self handleIncomingPointerEvent:pointerEvent onView:nil];
|
|
663
|
+
} else {
|
|
664
|
+
CGPoint clientLocation = CGPointMake(pointerEvent.clientPoint.x, pointerEvent.clientPoint.y);
|
|
665
|
+
UIView *targetView = FindClosestFabricManagedTouchableView([_rootComponentView hitTest:clientLocation
|
|
666
|
+
withEvent:nil]);
|
|
667
|
+
|
|
668
|
+
NSOrderedSet<RCTReactTaggedView *> *eventPathViews = [self handleIncomingPointerEvent:pointerEvent
|
|
669
|
+
onView:targetView];
|
|
670
|
+
|
|
671
|
+
switch (eventType) {
|
|
672
|
+
case RCTTouchEventTypeTouchStart:
|
|
673
|
+
activeTouch.eventEmitter->onPointerDown(pointerEvent);
|
|
674
|
+
break;
|
|
675
|
+
case RCTTouchEventTypeTouchMove: {
|
|
676
|
+
bool hasMoveEventListeners =
|
|
677
|
+
IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMove) ||
|
|
678
|
+
IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMoveCapture);
|
|
679
|
+
if (hasMoveEventListeners) {
|
|
680
|
+
activeTouch.eventEmitter->onPointerMove(pointerEvent);
|
|
681
|
+
}
|
|
682
|
+
break;
|
|
683
|
+
}
|
|
684
|
+
case RCTTouchEventTypeTouchEnd:
|
|
685
|
+
activeTouch.eventEmitter->onPointerUp(pointerEvent);
|
|
686
|
+
break;
|
|
687
|
+
case RCTTouchEventTypeTouchCancel:
|
|
688
|
+
activeTouch.eventEmitter->onPointerCancel(pointerEvent);
|
|
689
|
+
break;
|
|
690
|
+
}
|
|
528
691
|
}
|
|
529
692
|
}
|
|
530
693
|
}
|
|
@@ -691,77 +854,60 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
691
854
|
|
|
692
855
|
UIView *targetView = [listenerView hitTest:clientLocation withEvent:nil];
|
|
693
856
|
targetView = FindClosestFabricManagedTouchableView(targetView);
|
|
694
|
-
UIView *prevTargetView = [_currentlyHoveredViews firstObject];
|
|
695
857
|
|
|
696
858
|
CGPoint offsetLocation = [recognizer locationInView:targetView];
|
|
697
859
|
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
// Over
|
|
705
|
-
if (prevTargetView != targetView) {
|
|
706
|
-
BOOL shouldEmitOverEvent = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerOver);
|
|
707
|
-
SharedTouchEventEmitter eventEmitter = GetTouchEmitterFromView(targetView, [recognizer locationInView:targetView]);
|
|
708
|
-
if (shouldEmitOverEvent && eventEmitter != nil) {
|
|
709
|
-
PointerEvent event = CreatePointerEventFromIncompleteHoverData(
|
|
710
|
-
targetView, clientLocation, screenLocation, offsetLocation, timestamp);
|
|
711
|
-
eventEmitter->onPointerOver(event);
|
|
712
|
-
}
|
|
860
|
+
UIKeyModifierFlags modifierFlags;
|
|
861
|
+
if (@available(iOS 13.4, *)) {
|
|
862
|
+
modifierFlags = recognizer.modifierFlags;
|
|
863
|
+
} else {
|
|
864
|
+
modifierFlags = 0;
|
|
713
865
|
}
|
|
714
866
|
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
// We only want to emit events to JS if there is a view that is currently listening to said event
|
|
718
|
-
// so we only send those event to the JS side if the element which has been entered is itself listening,
|
|
719
|
-
// or if one of its parents is listening in case those listeners care about the capturing phase. Adding the ability
|
|
720
|
-
// for native to distingusih between capturing listeners and not could be an optimization to futher reduce the number
|
|
721
|
-
// of events we send to JS
|
|
722
|
-
BOOL hasParentEnterListener = NO;
|
|
723
|
-
|
|
724
|
-
for (UIView *componentView in [eventPathViews reverseObjectEnumerator]) {
|
|
725
|
-
BOOL shouldEmitEvent =
|
|
726
|
-
hasParentEnterListener || IsViewListeningToEvent(componentView, ViewEvents::Offset::PointerEnter);
|
|
867
|
+
PointerEvent event =
|
|
868
|
+
CreatePointerEventFromIncompleteHoverData(clientLocation, screenLocation, offsetLocation, modifierFlags);
|
|
727
869
|
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
}
|
|
870
|
+
NSOrderedSet<RCTReactTaggedView *> *eventPathViews = [self handleIncomingPointerEvent:event onView:targetView];
|
|
871
|
+
SharedTouchEventEmitter eventEmitter = GetTouchEmitterFromView(targetView, offsetLocation);
|
|
872
|
+
bool hasMoveEventListeners = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMove) ||
|
|
873
|
+
IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMoveCapture);
|
|
874
|
+
if (eventEmitter != nil && hasMoveEventListeners) {
|
|
875
|
+
eventEmitter->onPointerMove(event);
|
|
876
|
+
}
|
|
877
|
+
}
|
|
737
878
|
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
879
|
+
/**
|
|
880
|
+
* Private method which is used for tracking the location of pointer events to manage the entering/leaving events.
|
|
881
|
+
* The primary idea is that a pointer's presence & movement is dicated by a variety of underlying events such as down,
|
|
882
|
+
* move, and up — and they should all be treated the same when it comes to tracking the entering & leaving of pointers
|
|
883
|
+
* to views. This method accomplishes that by recieving the pointer event, the target view (can be null in cases when
|
|
884
|
+
* the event indicates that the pointer has left the screen entirely), and a block/callback where the underlying event
|
|
885
|
+
* should be fired.
|
|
886
|
+
*/
|
|
887
|
+
- (NSOrderedSet<RCTReactTaggedView *> *)handleIncomingPointerEvent:(PointerEvent)event
|
|
888
|
+
onView:(nullable UIView *)targetView
|
|
889
|
+
{
|
|
890
|
+
int pointerId = event.pointerId;
|
|
891
|
+
CGPoint clientLocation = CGPointMake(event.clientPoint.x, event.clientPoint.y);
|
|
741
892
|
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
893
|
+
NSOrderedSet<RCTReactTaggedView *> *currentlyHoveredViews =
|
|
894
|
+
[_currentlyHoveredViewsPerPointer objectForKey:@(pointerId)];
|
|
895
|
+
if (currentlyHoveredViews == nil) {
|
|
896
|
+
currentlyHoveredViews = [NSOrderedSet orderedSet];
|
|
745
897
|
}
|
|
746
898
|
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
targetView, clientLocation, screenLocation, offsetLocation, timestamp);
|
|
753
|
-
eventEmitter->onPointerMove(event);
|
|
754
|
-
}
|
|
755
|
-
}
|
|
899
|
+
RCTReactTaggedView *targetTaggedView = [RCTReactTaggedView wrap:targetView];
|
|
900
|
+
RCTReactTaggedView *prevTargetTaggedView = [currentlyHoveredViews firstObject];
|
|
901
|
+
UIView *prevTargetView = prevTargetTaggedView.view;
|
|
902
|
+
|
|
903
|
+
NSOrderedSet<RCTReactTaggedView *> *eventPathViews = GetTouchableViewsInPathToRoot(targetView);
|
|
756
904
|
|
|
757
905
|
// Out
|
|
758
|
-
if (prevTargetView !=
|
|
759
|
-
BOOL shouldEmitOutEvent = IsAnyViewInPathListeningToEvent(
|
|
906
|
+
if (prevTargetView != nil && prevTargetTaggedView.tag != targetTaggedView.tag) {
|
|
907
|
+
BOOL shouldEmitOutEvent = IsAnyViewInPathListeningToEvent(currentlyHoveredViews, ViewEvents::Offset::PointerOut);
|
|
760
908
|
SharedTouchEventEmitter eventEmitter =
|
|
761
|
-
GetTouchEmitterFromView(prevTargetView, [
|
|
909
|
+
GetTouchEmitterFromView(prevTargetView, [_rootComponentView convertPoint:clientLocation toView:prevTargetView]);
|
|
762
910
|
if (shouldEmitOutEvent && eventEmitter != nil) {
|
|
763
|
-
PointerEvent event = CreatePointerEventFromIncompleteHoverData(
|
|
764
|
-
prevTargetView, clientLocation, screenLocation, offsetLocation, timestamp);
|
|
765
911
|
eventEmitter->onPointerOut(event);
|
|
766
912
|
}
|
|
767
913
|
}
|
|
@@ -772,14 +918,16 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
772
918
|
// we also need to efficiently keep track of if a view has a parent which is listening to the leave events,
|
|
773
919
|
// so we first iterate from the root to the target, collecting the views which need events fired for, of which
|
|
774
920
|
// we reverse iterate (now from target to root), actually emitting the events.
|
|
775
|
-
NSMutableOrderedSet *viewsToEmitLeaveEventsTo = [NSMutableOrderedSet orderedSet];
|
|
921
|
+
NSMutableOrderedSet<UIView *> *viewsToEmitLeaveEventsTo = [NSMutableOrderedSet orderedSet];
|
|
776
922
|
|
|
777
923
|
BOOL hasParentLeaveListener = NO;
|
|
778
|
-
for (
|
|
779
|
-
|
|
780
|
-
|
|
924
|
+
for (RCTReactTaggedView *taggedView in [currentlyHoveredViews reverseObjectEnumerator]) {
|
|
925
|
+
UIView *componentView = taggedView.view;
|
|
926
|
+
|
|
927
|
+
BOOL shouldEmitEvent = componentView != nil &&
|
|
928
|
+
(hasParentLeaveListener || IsViewListeningToEvent(taggedView, ViewEvents::Offset::PointerLeave));
|
|
781
929
|
|
|
782
|
-
if (shouldEmitEvent && ![eventPathViews containsObject:
|
|
930
|
+
if (shouldEmitEvent && ![eventPathViews containsObject:taggedView]) {
|
|
783
931
|
[viewsToEmitLeaveEventsTo addObject:componentView];
|
|
784
932
|
}
|
|
785
933
|
|
|
@@ -790,15 +938,52 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
|
|
|
790
938
|
|
|
791
939
|
for (UIView *componentView in [viewsToEmitLeaveEventsTo reverseObjectEnumerator]) {
|
|
792
940
|
SharedTouchEventEmitter eventEmitter =
|
|
793
|
-
GetTouchEmitterFromView(componentView, [
|
|
941
|
+
GetTouchEmitterFromView(componentView, [_rootComponentView convertPoint:clientLocation toView:componentView]);
|
|
794
942
|
if (eventEmitter != nil) {
|
|
795
|
-
PointerEvent event = CreatePointerEventFromIncompleteHoverData(
|
|
796
|
-
componentView, clientLocation, screenLocation, offsetLocation, timestamp);
|
|
797
943
|
eventEmitter->onPointerLeave(event);
|
|
798
944
|
}
|
|
799
945
|
}
|
|
800
946
|
|
|
801
|
-
|
|
947
|
+
// Over
|
|
948
|
+
if (targetView != nil && prevTargetTaggedView.tag != targetTaggedView.tag) {
|
|
949
|
+
BOOL shouldEmitOverEvent = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerOver);
|
|
950
|
+
SharedTouchEventEmitter eventEmitter =
|
|
951
|
+
GetTouchEmitterFromView(targetView, [_rootComponentView convertPoint:clientLocation toView:targetView]);
|
|
952
|
+
if (shouldEmitOverEvent && eventEmitter != nil) {
|
|
953
|
+
eventEmitter->onPointerOver(event);
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
// Entering
|
|
958
|
+
|
|
959
|
+
// We only want to emit events to JS if there is a view that is currently listening to said event
|
|
960
|
+
// so we only send those event to the JS side if the element which has been entered is itself listening,
|
|
961
|
+
// or if one of its parents is listening in case those listeners care about the capturing phase. Adding the ability
|
|
962
|
+
// for native to distingusih between capturing listeners and not could be an optimization to futher reduce the number
|
|
963
|
+
// of events we send to JS
|
|
964
|
+
BOOL hasParentEnterListener = NO;
|
|
965
|
+
for (RCTReactTaggedView *taggedView in [eventPathViews reverseObjectEnumerator]) {
|
|
966
|
+
UIView *componentView = taggedView.view;
|
|
967
|
+
|
|
968
|
+
BOOL shouldEmitEvent = componentView != nil &&
|
|
969
|
+
(hasParentEnterListener || IsViewListeningToEvent(taggedView, ViewEvents::Offset::PointerEnter));
|
|
970
|
+
|
|
971
|
+
if (shouldEmitEvent && ![currentlyHoveredViews containsObject:taggedView]) {
|
|
972
|
+
SharedTouchEventEmitter eventEmitter =
|
|
973
|
+
GetTouchEmitterFromView(componentView, [_rootComponentView convertPoint:clientLocation toView:componentView]);
|
|
974
|
+
if (eventEmitter != nil) {
|
|
975
|
+
eventEmitter->onPointerEnter(event);
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
|
|
979
|
+
if (shouldEmitEvent && !hasParentEnterListener) {
|
|
980
|
+
hasParentEnterListener = YES;
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
|
|
984
|
+
[_currentlyHoveredViewsPerPointer setObject:eventPathViews forKey:@(pointerId)];
|
|
985
|
+
|
|
986
|
+
return eventPathViews;
|
|
802
987
|
}
|
|
803
988
|
|
|
804
989
|
@end
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
|
|
8
|
+
#import <UIKit/UIKit.h>
|
|
9
|
+
|
|
10
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Lightweight wrapper class around a UIView with a react tag which registers a
|
|
14
|
+
* constant react tag at initialization time for a stable hash and provides the
|
|
15
|
+
* udnerlying view to a caller if that underlying view's react tag has not
|
|
16
|
+
* changed from the one provided at initalization time (i.e. recycled).
|
|
17
|
+
*/
|
|
18
|
+
@interface RCTReactTaggedView : NSObject {
|
|
19
|
+
UIView *_view;
|
|
20
|
+
NSInteger _tag;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
+ (RCTReactTaggedView *)wrap:(UIView *)view;
|
|
24
|
+
|
|
25
|
+
- (instancetype)initWithView:(UIView *)view;
|
|
26
|
+
- (nullable UIView *)view;
|
|
27
|
+
- (NSInteger)tag;
|
|
28
|
+
|
|
29
|
+
- (BOOL)isEqual:(id)other;
|
|
30
|
+
- (NSUInteger)hash;
|
|
31
|
+
|
|
32
|
+
@end
|
|
33
|
+
|
|
34
|
+
NS_ASSUME_NONNULL_END
|
|
@@ -0,0 +1,55 @@
|
|
|
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
|
+
|
|
8
|
+
#import "RCTReactTaggedView.h"
|
|
9
|
+
|
|
10
|
+
@implementation RCTReactTaggedView
|
|
11
|
+
|
|
12
|
+
+ (RCTReactTaggedView *)wrap:(UIView *)view
|
|
13
|
+
{
|
|
14
|
+
return [[RCTReactTaggedView alloc] initWithView:view];
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
- (instancetype)initWithView:(UIView *)view
|
|
18
|
+
{
|
|
19
|
+
if (self = [super init]) {
|
|
20
|
+
_view = view;
|
|
21
|
+
_tag = view.tag;
|
|
22
|
+
}
|
|
23
|
+
return self;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
- (nullable UIView *)view
|
|
27
|
+
{
|
|
28
|
+
if (_view.tag == _tag) {
|
|
29
|
+
return _view;
|
|
30
|
+
}
|
|
31
|
+
return nil;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
- (NSInteger)tag
|
|
35
|
+
{
|
|
36
|
+
return _tag;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
- (BOOL)isEqual:(id)other
|
|
40
|
+
{
|
|
41
|
+
if (other == self) {
|
|
42
|
+
return YES;
|
|
43
|
+
}
|
|
44
|
+
if (!other || ![other isKindOfClass:[self class]]) {
|
|
45
|
+
return NO;
|
|
46
|
+
}
|
|
47
|
+
return _tag == [other tag];
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
- (NSUInteger)hash
|
|
51
|
+
{
|
|
52
|
+
return _tag;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@end
|