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
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
#import <mach/mach_time.h>
|
|
8
9
|
#import <objc/runtime.h>
|
|
9
10
|
#import <atomic>
|
|
10
|
-
#import <mach/mach_time.h>
|
|
11
11
|
|
|
12
12
|
#import <ImageIO/ImageIO.h>
|
|
13
13
|
|
|
@@ -56,16 +56,18 @@ static uint64_t monotonicTimeGetCurrentNanoseconds(void)
|
|
|
56
56
|
return (mach_absolute_time() * tb_info.numer) / tb_info.denom;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
static NSError*
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
59
|
+
static NSError *addResponseHeadersToError(NSError *originalError, NSHTTPURLResponse *response)
|
|
60
|
+
{
|
|
61
|
+
NSMutableDictionary<NSString *, id> *_userInfo =
|
|
62
|
+
(NSMutableDictionary<NSString *, id> *)originalError.userInfo.mutableCopy;
|
|
63
|
+
_userInfo[@"httpStatusCode"] = [NSNumber numberWithInt:response.statusCode];
|
|
64
|
+
_userInfo[@"httpResponseHeaders"] = response.allHeaderFields;
|
|
65
|
+
NSError *error = [NSError errorWithDomain:originalError.domain code:originalError.code userInfo:_userInfo];
|
|
66
|
+
|
|
67
|
+
return error;
|
|
66
68
|
}
|
|
67
69
|
|
|
68
|
-
@interface RCTImageLoader() <NativeImageLoaderIOSSpec, RCTImageLoaderWithAttributionProtocol>
|
|
70
|
+
@interface RCTImageLoader () <NativeImageLoaderIOSSpec, RCTImageLoaderWithAttributionProtocol>
|
|
69
71
|
|
|
70
72
|
@end
|
|
71
73
|
|
|
@@ -87,8 +89,7 @@ static NSError* addResponseHeadersToError(NSError* originalError, NSHTTPURLRespo
|
|
|
87
89
|
|
|
88
90
|
@end
|
|
89
91
|
|
|
90
|
-
@implementation RCTImageLoader
|
|
91
|
-
{
|
|
92
|
+
@implementation RCTImageLoader {
|
|
92
93
|
NSArray<id<RCTImageURLLoader>> * (^_loadersProvider)(RCTModuleRegistry *);
|
|
93
94
|
NSArray<id<RCTImageDataDecoder>> * (^_decodersProvider)(RCTModuleRegistry *);
|
|
94
95
|
NSArray<id<RCTImageURLLoader>> *_loaders;
|
|
@@ -161,7 +162,7 @@ RCT_EXPORT_MODULE()
|
|
|
161
162
|
- (id<RCTImageCache>)imageCache
|
|
162
163
|
{
|
|
163
164
|
if (!_imageCache) {
|
|
164
|
-
//set up with default cache
|
|
165
|
+
// set up with default cache
|
|
165
166
|
_imageCache = [RCTImageCache new];
|
|
166
167
|
}
|
|
167
168
|
return _imageCache;
|
|
@@ -184,7 +185,6 @@ RCT_EXPORT_MODULE()
|
|
|
184
185
|
if (!_loaders) {
|
|
185
186
|
std::unique_lock<std::mutex> guard(_loadersMutex);
|
|
186
187
|
if (!_loaders) {
|
|
187
|
-
|
|
188
188
|
// Get loaders, sorted in reverse priority order (highest priority first)
|
|
189
189
|
if (_loadersProvider) {
|
|
190
190
|
_loaders = _loadersProvider(self.moduleRegistry);
|
|
@@ -193,17 +193,18 @@ RCT_EXPORT_MODULE()
|
|
|
193
193
|
_loaders = [_bridge modulesConformingToProtocol:@protocol(RCTImageURLLoader)];
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
_loaders =
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
196
|
+
_loaders =
|
|
197
|
+
[_loaders sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageURLLoader> a, id<RCTImageURLLoader> b) {
|
|
198
|
+
float priorityA = [a respondsToSelector:@selector(loaderPriority)] ? [a loaderPriority] : 0;
|
|
199
|
+
float priorityB = [b respondsToSelector:@selector(loaderPriority)] ? [b loaderPriority] : 0;
|
|
200
|
+
if (priorityA > priorityB) {
|
|
201
|
+
return NSOrderedAscending;
|
|
202
|
+
} else if (priorityA < priorityB) {
|
|
203
|
+
return NSOrderedDescending;
|
|
204
|
+
} else {
|
|
205
|
+
return NSOrderedSame;
|
|
206
|
+
}
|
|
207
|
+
}];
|
|
207
208
|
}
|
|
208
209
|
}
|
|
209
210
|
|
|
@@ -219,10 +220,14 @@ RCT_EXPORT_MODULE()
|
|
|
219
220
|
if ([loader canLoadImageURL:URL]) {
|
|
220
221
|
if (previousLoader) {
|
|
221
222
|
if (priority == previousPriority) {
|
|
222
|
-
RCTLogError(
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
223
|
+
RCTLogError(
|
|
224
|
+
@"The RCTImageURLLoaders %@ and %@ both reported that"
|
|
225
|
+
" they can load the URL %@, and have equal priority"
|
|
226
|
+
" (%g). This could result in non-deterministic behavior.",
|
|
227
|
+
loader,
|
|
228
|
+
previousLoader,
|
|
229
|
+
URL,
|
|
230
|
+
priority);
|
|
226
231
|
}
|
|
227
232
|
} else {
|
|
228
233
|
previousLoader = loader;
|
|
@@ -242,7 +247,7 @@ RCT_EXPORT_MODULE()
|
|
|
242
247
|
return nil;
|
|
243
248
|
}
|
|
244
249
|
|
|
245
|
-
#
|
|
250
|
+
#pragma mark - Private Image Decoding & Resizing
|
|
246
251
|
|
|
247
252
|
- (id<RCTImageDataDecoder>)imageDataDecoderForData:(NSData *)data
|
|
248
253
|
{
|
|
@@ -260,17 +265,18 @@ RCT_EXPORT_MODULE()
|
|
|
260
265
|
_decoders = [_bridge modulesConformingToProtocol:@protocol(RCTImageDataDecoder)];
|
|
261
266
|
}
|
|
262
267
|
|
|
263
|
-
_decoders = [_decoders
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
268
|
+
_decoders = [_decoders
|
|
269
|
+
sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageDataDecoder> a, id<RCTImageDataDecoder> b) {
|
|
270
|
+
float priorityA = [a respondsToSelector:@selector(decoderPriority)] ? [a decoderPriority] : 0;
|
|
271
|
+
float priorityB = [b respondsToSelector:@selector(decoderPriority)] ? [b decoderPriority] : 0;
|
|
272
|
+
if (priorityA > priorityB) {
|
|
273
|
+
return NSOrderedAscending;
|
|
274
|
+
} else if (priorityA < priorityB) {
|
|
275
|
+
return NSOrderedDescending;
|
|
276
|
+
} else {
|
|
277
|
+
return NSOrderedSame;
|
|
278
|
+
}
|
|
279
|
+
}];
|
|
274
280
|
}
|
|
275
281
|
|
|
276
282
|
if (RCT_DEBUG) {
|
|
@@ -285,11 +291,16 @@ RCT_EXPORT_MODULE()
|
|
|
285
291
|
if ([decoder canDecodeImageData:data]) {
|
|
286
292
|
if (previousDecoder) {
|
|
287
293
|
if (priority == previousPriority) {
|
|
288
|
-
RCTLogError(
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
294
|
+
RCTLogError(
|
|
295
|
+
@"The RCTImageDataDecoders %@ and %@ both reported that"
|
|
296
|
+
" they can decode the data <NSData %p; %tu bytes>, and"
|
|
297
|
+
" have equal priority (%g). This could result in"
|
|
298
|
+
" non-deterministic behavior.",
|
|
299
|
+
decoder,
|
|
300
|
+
previousDecoder,
|
|
301
|
+
data,
|
|
302
|
+
data.length,
|
|
303
|
+
priority);
|
|
293
304
|
}
|
|
294
305
|
} else {
|
|
295
306
|
previousDecoder = decoder;
|
|
@@ -309,13 +320,9 @@ RCT_EXPORT_MODULE()
|
|
|
309
320
|
return nil;
|
|
310
321
|
}
|
|
311
322
|
|
|
312
|
-
static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
313
|
-
CGSize size,
|
|
314
|
-
CGFloat scale,
|
|
315
|
-
RCTResizeMode resizeMode)
|
|
323
|
+
static UIImage *RCTResizeImageIfNeeded(UIImage *image, CGSize size, CGFloat scale, RCTResizeMode resizeMode)
|
|
316
324
|
{
|
|
317
|
-
if (CGSizeEqualToSize(size, CGSizeZero) ||
|
|
318
|
-
CGSizeEqualToSize(image.size, CGSizeZero) ||
|
|
325
|
+
if (CGSizeEqualToSize(size, CGSizeZero) || CGSizeEqualToSize(image.size, CGSizeZero) ||
|
|
319
326
|
CGSizeEqualToSize(image.size, size)) {
|
|
320
327
|
return image;
|
|
321
328
|
}
|
|
@@ -330,23 +337,22 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
330
337
|
- (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
|
|
331
338
|
callback:(RCTImageLoaderCompletionBlock)callback
|
|
332
339
|
{
|
|
333
|
-
|
|
334
|
-
priority:RCTImageLoaderPriorityImmediate
|
|
335
|
-
callback:callback];
|
|
340
|
+
return [self loadImageWithURLRequest:imageURLRequest priority:RCTImageLoaderPriorityImmediate callback:callback];
|
|
336
341
|
}
|
|
337
342
|
|
|
338
343
|
- (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
|
|
339
344
|
priority:(RCTImageLoaderPriority)priority
|
|
340
|
-
callback:(RCTImageLoaderCompletionBlock)callback
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
345
|
+
callback:(RCTImageLoaderCompletionBlock)callback
|
|
346
|
+
{
|
|
347
|
+
return [self loadImageWithURLRequest:imageURLRequest
|
|
348
|
+
size:CGSizeZero
|
|
349
|
+
scale:1
|
|
350
|
+
clipped:YES
|
|
351
|
+
resizeMode:RCTResizeModeStretch
|
|
352
|
+
priority:priority
|
|
353
|
+
progressBlock:nil
|
|
354
|
+
partialLoadBlock:nil
|
|
355
|
+
completionBlock:callback];
|
|
350
356
|
}
|
|
351
357
|
|
|
352
358
|
- (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
|
|
@@ -358,15 +364,15 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
358
364
|
partialLoadBlock:(RCTImageLoaderPartialLoadBlock)partialLoadBlock
|
|
359
365
|
completionBlock:(RCTImageLoaderCompletionBlock)completionBlock
|
|
360
366
|
{
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
367
|
+
return [self loadImageWithURLRequest:imageURLRequest
|
|
368
|
+
size:size
|
|
369
|
+
scale:scale
|
|
370
|
+
clipped:clipped
|
|
371
|
+
resizeMode:resizeMode
|
|
372
|
+
priority:RCTImageLoaderPriorityImmediate
|
|
373
|
+
progressBlock:progressBlock
|
|
374
|
+
partialLoadBlock:partialLoadBlock
|
|
375
|
+
completionBlock:completionBlock];
|
|
370
376
|
}
|
|
371
377
|
|
|
372
378
|
- (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
|
|
@@ -380,17 +386,17 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
380
386
|
completionBlock:(RCTImageLoaderCompletionBlock)completionBlock
|
|
381
387
|
{
|
|
382
388
|
RCTImageURLLoaderRequest *request = [self loadImageWithURLRequest:imageURLRequest
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
389
|
+
size:size
|
|
390
|
+
scale:scale
|
|
391
|
+
clipped:clipped
|
|
392
|
+
resizeMode:resizeMode
|
|
393
|
+
priority:priority
|
|
394
|
+
attribution:{}
|
|
395
|
+
progressBlock:progressBlock
|
|
396
|
+
partialLoadBlock:partialLoadBlock
|
|
397
|
+
completionBlock:^(NSError *error, UIImage *image, id metadata) {
|
|
398
|
+
completionBlock(error, image);
|
|
399
|
+
}];
|
|
394
400
|
return ^{
|
|
395
401
|
[request cancel];
|
|
396
402
|
};
|
|
@@ -435,8 +441,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
435
441
|
|
|
436
442
|
// Start queued decode
|
|
437
443
|
NSInteger activeDecodes = self->_scheduledDecodes - self->_pendingDecodes.count;
|
|
438
|
-
while (activeDecodes == 0 ||
|
|
439
|
-
|
|
444
|
+
while (activeDecodes == 0 ||
|
|
445
|
+
(self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
|
|
446
|
+
activeDecodes <= self->_maxConcurrentDecodingTasks)) {
|
|
440
447
|
dispatch_block_t decodeBlock = self->_pendingDecodes.firstObject;
|
|
441
448
|
if (decodeBlock) {
|
|
442
449
|
[self->_pendingDecodes removeObjectAtIndex:0];
|
|
@@ -472,13 +479,16 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
472
479
|
attribution:(const ImageURLLoaderAttribution &)attribution
|
|
473
480
|
progressBlock:(RCTImageLoaderProgressBlock)progressHandler
|
|
474
481
|
partialLoadBlock:(RCTImageLoaderPartialLoadBlock)partialLoadHandler
|
|
475
|
-
completionBlock:(void (^)(
|
|
482
|
+
completionBlock:(void (^)(
|
|
483
|
+
NSError *error,
|
|
484
|
+
id imageOrData,
|
|
485
|
+
id imageMetadata,
|
|
486
|
+
BOOL cacheResult,
|
|
487
|
+
NSURLResponse *response))completionBlock
|
|
476
488
|
{
|
|
477
489
|
{
|
|
478
490
|
NSMutableURLRequest *mutableRequest = [request mutableCopy];
|
|
479
|
-
[NSURLProtocol setProperty:@"RCTImageLoader"
|
|
480
|
-
forKey:@"trackingName"
|
|
481
|
-
inRequest:mutableRequest];
|
|
491
|
+
[NSURLProtocol setProperty:@"RCTImageLoader" forKey:@"trackingName" inRequest:mutableRequest];
|
|
482
492
|
|
|
483
493
|
// Add missing png extension
|
|
484
494
|
if (request.URL.fileURL && request.URL.pathExtension.length == 0) {
|
|
@@ -495,11 +505,15 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
495
505
|
|
|
496
506
|
// Find suitable image URL loader
|
|
497
507
|
id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:request.URL];
|
|
498
|
-
BOOL requiresScheduling =
|
|
499
|
-
|
|
508
|
+
BOOL requiresScheduling =
|
|
509
|
+
[loadHandler respondsToSelector:@selector(requiresScheduling)] ? [loadHandler requiresScheduling] : YES;
|
|
510
|
+
|
|
511
|
+
BOOL cacheResult =
|
|
512
|
+
[loadHandler respondsToSelector:@selector(shouldCacheLoadedImages)] ? [loadHandler shouldCacheLoadedImages] : YES;
|
|
500
513
|
|
|
501
|
-
|
|
502
|
-
|
|
514
|
+
if (request.cachePolicy == NSURLRequestReloadIgnoringLocalCacheData) {
|
|
515
|
+
cacheResult = NO;
|
|
516
|
+
}
|
|
503
517
|
|
|
504
518
|
if (cacheResult && partialLoadHandler) {
|
|
505
519
|
UIImage *image = [[self imageCache] imageForUrl:request.URL.absoluteString
|
|
@@ -514,48 +528,51 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
514
528
|
auto cancelled = std::make_shared<std::atomic<int>>(0);
|
|
515
529
|
__block dispatch_block_t cancelLoad = nil;
|
|
516
530
|
__block NSLock *cancelLoadLock = [NSLock new];
|
|
517
|
-
NSString *requestId =
|
|
531
|
+
NSString *requestId =
|
|
532
|
+
[NSString stringWithFormat:@"%@-%llu", [[NSUUID UUID] UUIDString], monotonicTimeGetCurrentNanoseconds()];
|
|
518
533
|
|
|
519
|
-
void (^completionHandler)(NSError *, id, id, NSURLResponse *) =
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
534
|
+
void (^completionHandler)(NSError *, id, id, NSURLResponse *) =
|
|
535
|
+
^(NSError *error, id imageOrData, id imageMetadata, NSURLResponse *response) {
|
|
536
|
+
[cancelLoadLock lock];
|
|
537
|
+
cancelLoad = nil;
|
|
538
|
+
[cancelLoadLock unlock];
|
|
523
539
|
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
NSHTTPURLResponse*
|
|
540
|
+
// If we've received an image, we should try to set it synchronously,
|
|
541
|
+
// if it's data, do decoding on a background thread.
|
|
542
|
+
if (RCTIsMainQueue() && ![imageOrData isKindOfClass:[UIImage class]]) {
|
|
543
|
+
// Most loaders do not return on the main thread, so caller is probably not
|
|
544
|
+
// expecting it, and may do expensive post-processing in the callback
|
|
545
|
+
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
|
|
546
|
+
if (!std::atomic_load(cancelled.get())) {
|
|
547
|
+
completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
|
|
548
|
+
}
|
|
549
|
+
});
|
|
550
|
+
} else if (!std::atomic_load(cancelled.get())) {
|
|
551
|
+
if (response && error && [response isKindOfClass:[NSHTTPURLResponse class]]) {
|
|
552
|
+
NSHTTPURLResponse *_httpResp = (NSHTTPURLResponse *)response;
|
|
537
553
|
error = addResponseHeadersToError(error, _httpResp);
|
|
554
|
+
}
|
|
555
|
+
completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
|
|
538
556
|
}
|
|
539
|
-
|
|
540
|
-
}
|
|
541
|
-
};
|
|
557
|
+
};
|
|
542
558
|
|
|
543
559
|
// If the loader doesn't require scheduling we call it directly on
|
|
544
560
|
// the main queue.
|
|
545
561
|
if (loadHandler && !requiresScheduling) {
|
|
546
562
|
if ([loadHandler conformsToProtocol:@protocol(RCTImageURLLoaderWithAttribution)]) {
|
|
547
|
-
return [(id<RCTImageURLLoaderWithAttribution>)loadHandler
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
563
|
+
return [(id<RCTImageURLLoaderWithAttribution>)loadHandler
|
|
564
|
+
loadImageForURL:request.URL
|
|
565
|
+
size:size
|
|
566
|
+
scale:scale
|
|
567
|
+
resizeMode:resizeMode
|
|
568
|
+
requestId:requestId
|
|
569
|
+
priority:priority
|
|
570
|
+
attribution:attributionCopy
|
|
571
|
+
progressHandler:progressHandler
|
|
572
|
+
partialLoadHandler:partialLoadHandler
|
|
573
|
+
completionHandler:^(NSError *error, UIImage *image, id metadata) {
|
|
574
|
+
completionHandler(error, image, metadata, nil);
|
|
575
|
+
}];
|
|
559
576
|
}
|
|
560
577
|
RCTImageLoaderCancellationBlock cb = [loadHandler loadImageForURL:request.URL
|
|
561
578
|
size:size
|
|
@@ -577,36 +594,37 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
577
594
|
__weak RCTImageLoader *weakSelf = self;
|
|
578
595
|
dispatch_async(_URLRequestQueue, ^{
|
|
579
596
|
__typeof(self) strongSelf = weakSelf;
|
|
580
|
-
|
|
581
|
-
|
|
597
|
+
if (atomic_load(cancelled.get()) || !strongSelf) {
|
|
598
|
+
return;
|
|
582
599
|
}
|
|
583
600
|
|
|
584
601
|
if (loadHandler) {
|
|
585
602
|
dispatch_block_t cancelLoadLocal;
|
|
586
603
|
if ([loadHandler conformsToProtocol:@protocol(RCTImageURLLoaderWithAttribution)]) {
|
|
587
|
-
RCTImageURLLoaderRequest *loaderRequest = [(id<RCTImageURLLoaderWithAttribution>)loadHandler
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
604
|
+
RCTImageURLLoaderRequest *loaderRequest = [(id<RCTImageURLLoaderWithAttribution>)loadHandler
|
|
605
|
+
loadImageForURL:request.URL
|
|
606
|
+
size:size
|
|
607
|
+
scale:scale
|
|
608
|
+
resizeMode:resizeMode
|
|
609
|
+
requestId:requestId
|
|
610
|
+
priority:priority
|
|
611
|
+
attribution:attributionCopy
|
|
612
|
+
progressHandler:progressHandler
|
|
613
|
+
partialLoadHandler:partialLoadHandler
|
|
614
|
+
completionHandler:^(NSError *error, UIImage *image, id metadata) {
|
|
615
|
+
completionHandler(error, image, metadata, nil);
|
|
616
|
+
}];
|
|
599
617
|
cancelLoadLocal = loaderRequest.cancellationBlock;
|
|
600
618
|
} else {
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
619
|
+
cancelLoadLocal = [loadHandler loadImageForURL:request.URL
|
|
620
|
+
size:size
|
|
621
|
+
scale:scale
|
|
622
|
+
resizeMode:resizeMode
|
|
623
|
+
progressHandler:progressHandler
|
|
624
|
+
partialLoadHandler:partialLoadHandler
|
|
625
|
+
completionHandler:^(NSError *error, UIImage *image) {
|
|
626
|
+
completionHandler(error, image, nil, nil);
|
|
627
|
+
}];
|
|
610
628
|
}
|
|
611
629
|
[cancelLoadLock lock];
|
|
612
630
|
cancelLoad = cancelLoadLocal;
|
|
@@ -624,11 +642,12 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
624
642
|
completionHandler(nil, image, nil, nil);
|
|
625
643
|
} else {
|
|
626
644
|
// Use networking module to load image
|
|
627
|
-
dispatch_block_t cancelLoadLocal =
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
645
|
+
dispatch_block_t cancelLoadLocal =
|
|
646
|
+
[strongSelf _loadURLRequest:request
|
|
647
|
+
progressBlock:progressHandler
|
|
648
|
+
completionBlock:^(NSError *error, id imageOrData, NSURLResponse *response) {
|
|
649
|
+
completionHandler(error, imageOrData, nil, response);
|
|
650
|
+
}];
|
|
632
651
|
[cancelLoadLock lock];
|
|
633
652
|
cancelLoad = cancelLoadLocal;
|
|
634
653
|
[cancelLoadLock unlock];
|
|
@@ -636,30 +655,34 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
636
655
|
}
|
|
637
656
|
});
|
|
638
657
|
|
|
639
|
-
return [[RCTImageURLLoaderRequest alloc] initWithRequestId:requestId
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
658
|
+
return [[RCTImageURLLoaderRequest alloc] initWithRequestId:requestId
|
|
659
|
+
imageURL:request.URL
|
|
660
|
+
cancellationBlock:^{
|
|
661
|
+
BOOL alreadyCancelled = atomic_fetch_or(cancelled.get(), 1) ? YES : NO;
|
|
662
|
+
if (alreadyCancelled) {
|
|
663
|
+
return;
|
|
664
|
+
}
|
|
665
|
+
[cancelLoadLock lock];
|
|
666
|
+
dispatch_block_t cancelLoadLocal = cancelLoad;
|
|
667
|
+
cancelLoad = nil;
|
|
668
|
+
[cancelLoadLock unlock];
|
|
669
|
+
if (cancelLoadLocal) {
|
|
670
|
+
cancelLoadLocal();
|
|
671
|
+
}
|
|
672
|
+
}];
|
|
652
673
|
}
|
|
653
674
|
|
|
654
675
|
- (RCTImageLoaderCancellationBlock)_loadURLRequest:(NSURLRequest *)request
|
|
655
676
|
progressBlock:(RCTImageLoaderProgressBlock)progressHandler
|
|
656
|
-
completionBlock:(void (^)(NSError *error, id imageOrData, NSURLResponse *response))
|
|
677
|
+
completionBlock:(void (^)(NSError *error, id imageOrData, NSURLResponse *response))
|
|
678
|
+
completionHandler
|
|
657
679
|
{
|
|
658
680
|
RCTNetworking *networking = [_moduleRegistry moduleForName:"Networking"];
|
|
659
681
|
if (RCT_DEBUG && !networking) {
|
|
660
|
-
RCTLogError(
|
|
661
|
-
|
|
662
|
-
|
|
682
|
+
RCTLogError(
|
|
683
|
+
@"No suitable image URL loader found for %@. You may need to "
|
|
684
|
+
" import the RCTNetwork library in order to load images.",
|
|
685
|
+
request.URL.absoluteString);
|
|
663
686
|
return NULL;
|
|
664
687
|
}
|
|
665
688
|
|
|
@@ -688,10 +711,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
688
711
|
NSInteger statusCode = ((NSHTTPURLResponse *)response).statusCode;
|
|
689
712
|
if (statusCode != 200) {
|
|
690
713
|
NSString *errorMessage = [NSString stringWithFormat:@"Failed to load %@", response.URL];
|
|
691
|
-
NSDictionary *userInfo = @{NSLocalizedDescriptionKey: errorMessage};
|
|
692
|
-
completionHandler(
|
|
693
|
-
|
|
694
|
-
userInfo:userInfo], nil, response);
|
|
714
|
+
NSDictionary *userInfo = @{NSLocalizedDescriptionKey : errorMessage};
|
|
715
|
+
completionHandler(
|
|
716
|
+
[[NSError alloc] initWithDomain:NSURLErrorDomain code:statusCode userInfo:userInfo], nil, response);
|
|
695
717
|
return;
|
|
696
718
|
}
|
|
697
719
|
}
|
|
@@ -703,35 +725,35 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
703
725
|
// Download image
|
|
704
726
|
__weak __typeof(self) weakSelf = self;
|
|
705
727
|
__block RCTNetworkTask *task =
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
728
|
+
[networking networkTaskWithRequest:request
|
|
729
|
+
completionBlock:^(NSURLResponse *response, NSData *data, NSError *error) {
|
|
730
|
+
__typeof(self) strongSelf = weakSelf;
|
|
731
|
+
if (!strongSelf) {
|
|
732
|
+
return;
|
|
733
|
+
}
|
|
734
|
+
|
|
735
|
+
if (error || !response || !data) {
|
|
736
|
+
NSError *someError = nil;
|
|
737
|
+
if (error) {
|
|
738
|
+
someError = error;
|
|
739
|
+
} else if (!response) {
|
|
740
|
+
someError = RCTErrorWithMessage(@"Response metadata error");
|
|
741
|
+
} else {
|
|
742
|
+
someError = RCTErrorWithMessage(@"Unknown image download error");
|
|
743
|
+
}
|
|
744
|
+
completionHandler(someError, nil, response);
|
|
745
|
+
[strongSelf dequeueTasks];
|
|
746
|
+
return;
|
|
747
|
+
}
|
|
748
|
+
|
|
749
|
+
dispatch_async(strongSelf->_URLRequestQueue, ^{
|
|
750
|
+
// Process image data
|
|
751
|
+
processResponse(response, data, nil);
|
|
752
|
+
|
|
753
|
+
// Prepare for next task
|
|
754
|
+
[strongSelf dequeueTasks];
|
|
755
|
+
});
|
|
756
|
+
}];
|
|
735
757
|
|
|
736
758
|
task.downloadProgressBlock = ^(int64_t progress, int64_t total) {
|
|
737
759
|
if (progressHandler) {
|
|
@@ -791,60 +813,64 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
791
813
|
};
|
|
792
814
|
|
|
793
815
|
__weak RCTImageLoader *weakSelf = self;
|
|
794
|
-
void (^completionHandler)(NSError *, id, id, BOOL, NSURLResponse *) =
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
816
|
+
void (^completionHandler)(NSError *, id, id, BOOL, NSURLResponse *) =
|
|
817
|
+
^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
|
|
818
|
+
__typeof(self) strongSelf = weakSelf;
|
|
819
|
+
if (std::atomic_load(cancelled.get()) || !strongSelf) {
|
|
820
|
+
return;
|
|
821
|
+
}
|
|
799
822
|
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
823
|
+
if (!imageOrData || [imageOrData isKindOfClass:[UIImage class]]) {
|
|
824
|
+
[cancelLoadLock lock];
|
|
825
|
+
cancelLoad = nil;
|
|
826
|
+
[cancelLoadLock unlock];
|
|
827
|
+
completionBlock(error, imageOrData, imageMetadata);
|
|
828
|
+
return;
|
|
829
|
+
}
|
|
807
830
|
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
831
|
+
RCTImageLoaderCompletionBlock decodeCompletionHandler = ^(NSError *error_, UIImage *image) {
|
|
832
|
+
if (cacheResult && image) {
|
|
833
|
+
// Store decoded image in cache
|
|
834
|
+
[[strongSelf imageCache] addImageToCache:image
|
|
835
|
+
URL:imageURLRequest.URL.absoluteString
|
|
836
|
+
size:size
|
|
837
|
+
scale:scale
|
|
838
|
+
resizeMode:resizeMode
|
|
839
|
+
response:response];
|
|
840
|
+
}
|
|
841
|
+
[cancelLoadLock lock];
|
|
842
|
+
cancelLoad = nil;
|
|
843
|
+
[cancelLoadLock unlock];
|
|
844
|
+
completionBlock(error_, image, nil);
|
|
845
|
+
};
|
|
846
|
+
dispatch_block_t cancelLoadLocal = [strongSelf decodeImageData:imageOrData
|
|
847
|
+
size:size
|
|
848
|
+
scale:scale
|
|
849
|
+
clipped:clipped
|
|
850
|
+
resizeMode:resizeMode
|
|
851
|
+
completionBlock:decodeCompletionHandler];
|
|
852
|
+
[cancelLoadLock lock];
|
|
853
|
+
cancelLoad = cancelLoadLocal;
|
|
854
|
+
[cancelLoadLock unlock];
|
|
855
|
+
};
|
|
833
856
|
|
|
834
857
|
RCTImageURLLoaderRequest *loaderRequest = [self _loadImageOrDataWithURLRequest:imageURLRequest
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
858
|
+
size:size
|
|
859
|
+
scale:scale
|
|
860
|
+
resizeMode:resizeMode
|
|
861
|
+
priority:priority
|
|
862
|
+
attribution:attribution
|
|
863
|
+
progressBlock:progressBlock
|
|
864
|
+
partialLoadBlock:partialLoadBlock
|
|
865
|
+
completionBlock:completionHandler];
|
|
843
866
|
cancelLoad = loaderRequest.cancellationBlock;
|
|
844
|
-
return [[RCTImageURLLoaderRequest alloc] initWithRequestId:loaderRequest.requestId
|
|
867
|
+
return [[RCTImageURLLoaderRequest alloc] initWithRequestId:loaderRequest.requestId
|
|
868
|
+
imageURL:imageURLRequest.URL
|
|
869
|
+
cancellationBlock:cancellationBlock];
|
|
845
870
|
}
|
|
846
871
|
|
|
847
|
-
- (BOOL)shouldEnablePerfLoggingForRequestUrl:(NSURL *)url
|
|
872
|
+
- (BOOL)shouldEnablePerfLoggingForRequestUrl:(NSURL *)url
|
|
873
|
+
{
|
|
848
874
|
id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:url];
|
|
849
875
|
if ([loadHandler respondsToSelector:@selector(shouldEnablePerfLogging)]) {
|
|
850
876
|
return [(id<RCTImageURLLoaderWithAttribution>)loadHandler shouldEnablePerfLogging];
|
|
@@ -860,7 +886,8 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
860
886
|
|
|
861
887
|
id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:loaderRequest.imageURL];
|
|
862
888
|
if ([loadHandler respondsToSelector:@selector(trackURLImageVisibilityForRequest:imageView:)]) {
|
|
863
|
-
[(id<RCTImageURLLoaderWithAttribution>)loadHandler trackURLImageVisibilityForRequest:loaderRequest
|
|
889
|
+
[(id<RCTImageURLLoaderWithAttribution>)loadHandler trackURLImageVisibilityForRequest:loaderRequest
|
|
890
|
+
imageView:imageView];
|
|
864
891
|
}
|
|
865
892
|
}
|
|
866
893
|
|
|
@@ -899,7 +926,8 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
899
926
|
{
|
|
900
927
|
if (data.length == 0) {
|
|
901
928
|
completionBlock(RCTErrorWithMessage(@"No image data"), nil);
|
|
902
|
-
return ^{
|
|
929
|
+
return ^{
|
|
930
|
+
};
|
|
903
931
|
}
|
|
904
932
|
|
|
905
933
|
auto cancelled = std::make_shared<std::atomic<int>>(0);
|
|
@@ -923,7 +951,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
923
951
|
size:size
|
|
924
952
|
scale:scale
|
|
925
953
|
resizeMode:resizeMode
|
|
926
|
-
completionHandler:completionHandler]
|
|
954
|
+
completionHandler:completionHandler]
|
|
955
|
+
?: ^{
|
|
956
|
+
};
|
|
927
957
|
} else {
|
|
928
958
|
dispatch_block_t decodeBlock = ^{
|
|
929
959
|
// Calculate the size, in bytes, that the decompressed image will require
|
|
@@ -935,25 +965,26 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
935
965
|
// Do actual decompression on a concurrent background queue
|
|
936
966
|
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
|
|
937
967
|
if (!std::atomic_load(cancelled.get())) {
|
|
938
|
-
|
|
939
968
|
// Decompress the image data (this may be CPU and memory intensive)
|
|
940
969
|
UIImage *image = RCTDecodeImageWithData(data, size, scale, resizeMode);
|
|
941
970
|
|
|
942
971
|
#if RCT_DEV
|
|
943
972
|
CGSize imagePixelSize = RCTSizeInPixels(image.size, image.scale);
|
|
944
973
|
CGSize screenPixelSize = RCTSizeInPixels(RCTScreenSize(), RCTScreenScale());
|
|
945
|
-
if (imagePixelSize.width * imagePixelSize.height >
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
974
|
+
if (imagePixelSize.width * imagePixelSize.height > screenPixelSize.width * screenPixelSize.height) {
|
|
975
|
+
RCTLogInfo(
|
|
976
|
+
@"[PERF ASSETS] Loading image at size %@, which is larger "
|
|
977
|
+
"than the screen size %@",
|
|
978
|
+
NSStringFromCGSize(imagePixelSize),
|
|
979
|
+
NSStringFromCGSize(screenPixelSize));
|
|
950
980
|
}
|
|
951
981
|
#endif
|
|
952
982
|
|
|
953
983
|
if (image) {
|
|
954
984
|
completionHandler(nil, image);
|
|
955
985
|
} else {
|
|
956
|
-
NSString *errorMessage =
|
|
986
|
+
NSString *errorMessage =
|
|
987
|
+
[NSString stringWithFormat:@"Error decoding image data <NSData %p; %tu bytes>", data, data.length];
|
|
957
988
|
NSError *finalError = RCTErrorWithMessage(errorMessage);
|
|
958
989
|
completionHandler(finalError, nil);
|
|
959
990
|
}
|
|
@@ -982,8 +1013,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
982
1013
|
self->_pendingDecodes = [NSMutableArray new];
|
|
983
1014
|
}
|
|
984
1015
|
NSInteger activeDecodes = self->_scheduledDecodes - self->_pendingDecodes.count - 1;
|
|
985
|
-
if (activeDecodes == 0 ||
|
|
986
|
-
|
|
1016
|
+
if (activeDecodes == 0 ||
|
|
1017
|
+
(self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
|
|
1018
|
+
activeDecodes <= self->_maxConcurrentDecodingTasks)) {
|
|
987
1019
|
decodeBlock();
|
|
988
1020
|
} else {
|
|
989
1021
|
[self->_pendingDecodes addObject:decodeBlock];
|
|
@@ -997,51 +1029,52 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
997
1029
|
}
|
|
998
1030
|
|
|
999
1031
|
- (RCTImageLoaderCancellationBlock)getImageSizeForURLRequest:(NSURLRequest *)imageURLRequest
|
|
1000
|
-
block:(void(^)(NSError *error, CGSize size))callback
|
|
1032
|
+
block:(void (^)(NSError *error, CGSize size))callback
|
|
1001
1033
|
{
|
|
1002
|
-
void (^completion)(NSError *, id, id, BOOL, NSURLResponse *) =
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1034
|
+
void (^completion)(NSError *, id, id, BOOL, NSURLResponse *) =
|
|
1035
|
+
^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
|
|
1036
|
+
CGSize size;
|
|
1037
|
+
if ([imageOrData isKindOfClass:[NSData class]]) {
|
|
1038
|
+
NSDictionary *meta = RCTGetImageMetadata(imageOrData);
|
|
1039
|
+
|
|
1040
|
+
NSInteger imageOrientation = [meta[(id)kCGImagePropertyOrientation] integerValue];
|
|
1041
|
+
switch (imageOrientation) {
|
|
1042
|
+
case kCGImagePropertyOrientationLeft:
|
|
1043
|
+
case kCGImagePropertyOrientationRight:
|
|
1044
|
+
case kCGImagePropertyOrientationLeftMirrored:
|
|
1045
|
+
case kCGImagePropertyOrientationRightMirrored:
|
|
1046
|
+
// swap width and height
|
|
1047
|
+
size = (CGSize){
|
|
1048
|
+
[meta[(id)kCGImagePropertyPixelHeight] floatValue],
|
|
1049
|
+
[meta[(id)kCGImagePropertyPixelWidth] floatValue],
|
|
1050
|
+
};
|
|
1051
|
+
break;
|
|
1052
|
+
case kCGImagePropertyOrientationUp:
|
|
1053
|
+
case kCGImagePropertyOrientationDown:
|
|
1054
|
+
case kCGImagePropertyOrientationUpMirrored:
|
|
1055
|
+
case kCGImagePropertyOrientationDownMirrored:
|
|
1056
|
+
default:
|
|
1057
|
+
size = (CGSize){
|
|
1058
|
+
[meta[(id)kCGImagePropertyPixelWidth] floatValue],
|
|
1059
|
+
[meta[(id)kCGImagePropertyPixelHeight] floatValue],
|
|
1060
|
+
};
|
|
1061
|
+
break;
|
|
1062
|
+
}
|
|
1063
|
+
} else {
|
|
1064
|
+
UIImage *image = imageOrData;
|
|
1024
1065
|
size = (CGSize){
|
|
1025
|
-
|
|
1026
|
-
|
|
1066
|
+
image.size.width * image.scale,
|
|
1067
|
+
image.size.height * image.scale,
|
|
1027
1068
|
};
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
} else {
|
|
1031
|
-
UIImage *image = imageOrData;
|
|
1032
|
-
size = (CGSize){
|
|
1033
|
-
image.size.width * image.scale,
|
|
1034
|
-
image.size.height * image.scale,
|
|
1069
|
+
}
|
|
1070
|
+
callback(error, size);
|
|
1035
1071
|
};
|
|
1036
|
-
}
|
|
1037
|
-
callback(error, size);
|
|
1038
|
-
};
|
|
1039
1072
|
|
|
1040
1073
|
RCTImageURLLoaderRequest *loaderRequest = [self _loadImageOrDataWithURLRequest:imageURLRequest
|
|
1041
1074
|
size:CGSizeZero
|
|
1042
1075
|
scale:1
|
|
1043
1076
|
resizeMode:RCTResizeModeStretch
|
|
1044
|
-
priority:
|
|
1077
|
+
priority:RCTImageLoaderPriorityImmediate
|
|
1045
1078
|
attribution:{}
|
|
1046
1079
|
progressBlock:NULL
|
|
1047
1080
|
partialLoadBlock:NULL
|
|
@@ -1096,12 +1129,7 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
1096
1129
|
});
|
|
1097
1130
|
|
|
1098
1131
|
NSString *query = requestURL.query;
|
|
1099
|
-
if (
|
|
1100
|
-
query != nil &&
|
|
1101
|
-
[videoRegex firstMatchInString:query
|
|
1102
|
-
options:0
|
|
1103
|
-
range:NSMakeRange(0, query.length)]
|
|
1104
|
-
) {
|
|
1132
|
+
if (query != nil && [videoRegex firstMatchInString:query options:0 range:NSMakeRange(0, query.length)]) {
|
|
1105
1133
|
return NO;
|
|
1106
1134
|
}
|
|
1107
1135
|
|
|
@@ -1109,8 +1137,7 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
1109
1137
|
// Don't use RCTImageURLLoader protocol for modules that already conform to
|
|
1110
1138
|
// RCTURLRequestHandler as it's inefficient to decode an image and then
|
|
1111
1139
|
// convert it back into data
|
|
1112
|
-
if (![loader conformsToProtocol:@protocol(RCTURLRequestHandler)] &&
|
|
1113
|
-
[loader canLoadImageURL:requestURL]) {
|
|
1140
|
+
if (![loader conformsToProtocol:@protocol(RCTURLRequestHandler)] && [loader canLoadImageURL:requestURL]) {
|
|
1114
1141
|
return YES;
|
|
1115
1142
|
}
|
|
1116
1143
|
}
|
|
@@ -1121,31 +1148,32 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
1121
1148
|
- (id)sendRequest:(NSURLRequest *)request withDelegate:(id<RCTURLRequestDelegate>)delegate
|
|
1122
1149
|
{
|
|
1123
1150
|
__block RCTImageLoaderCancellationBlock requestToken;
|
|
1124
|
-
requestToken = [self loadImageWithURLRequest:request
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1151
|
+
requestToken = [self loadImageWithURLRequest:request
|
|
1152
|
+
callback:^(NSError *error, UIImage *image) {
|
|
1153
|
+
if (error) {
|
|
1154
|
+
[delegate URLRequest:requestToken didCompleteWithError:error];
|
|
1155
|
+
return;
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
NSString *mimeType = nil;
|
|
1159
|
+
NSData *imageData = nil;
|
|
1160
|
+
if (RCTImageHasAlpha(image.CGImage)) {
|
|
1161
|
+
mimeType = @"image/png";
|
|
1162
|
+
imageData = UIImagePNGRepresentation(image);
|
|
1163
|
+
} else {
|
|
1164
|
+
mimeType = @"image/jpeg";
|
|
1165
|
+
imageData = UIImageJPEGRepresentation(image, 1.0);
|
|
1166
|
+
}
|
|
1167
|
+
|
|
1168
|
+
NSURLResponse *response = [[NSURLResponse alloc] initWithURL:request.URL
|
|
1169
|
+
MIMEType:mimeType
|
|
1170
|
+
expectedContentLength:imageData.length
|
|
1171
|
+
textEncodingName:nil];
|
|
1172
|
+
|
|
1173
|
+
[delegate URLRequest:requestToken didReceiveResponse:response];
|
|
1174
|
+
[delegate URLRequest:requestToken didReceiveData:imageData];
|
|
1175
|
+
[delegate URLRequest:requestToken didCompleteWithError:nil];
|
|
1176
|
+
}];
|
|
1149
1177
|
|
|
1150
1178
|
return requestToken;
|
|
1151
1179
|
}
|
|
@@ -1157,31 +1185,36 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
|
|
|
1157
1185
|
}
|
|
1158
1186
|
}
|
|
1159
1187
|
|
|
1160
|
-
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
1188
|
+
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
1189
|
+
(const facebook::react::ObjCTurboModule::InitParams &)params
|
|
1161
1190
|
{
|
|
1162
1191
|
return std::make_shared<facebook::react::NativeImageLoaderIOSSpecJSI>(params);
|
|
1163
1192
|
}
|
|
1164
1193
|
|
|
1165
|
-
RCT_EXPORT_METHOD(getSize
|
|
1194
|
+
RCT_EXPORT_METHOD(getSize
|
|
1195
|
+
: (NSString *)uri resolve
|
|
1196
|
+
: (RCTPromiseResolveBlock)resolve reject
|
|
1197
|
+
: (RCTPromiseRejectBlock)reject)
|
|
1166
1198
|
{
|
|
1167
1199
|
NSURLRequest *request = [RCTConvert NSURLRequest:uri];
|
|
1168
1200
|
[self getImageSizeForURLRequest:request
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1201
|
+
block:^(NSError *error, CGSize size) {
|
|
1202
|
+
if (error) {
|
|
1203
|
+
reject(
|
|
1204
|
+
@"E_GET_SIZE_FAILURE",
|
|
1205
|
+
[NSString stringWithFormat:@"Failed to getSize of %@", uri],
|
|
1206
|
+
error);
|
|
1207
|
+
} else {
|
|
1208
|
+
resolve(@[ @(size.width), @(size.height) ]);
|
|
1209
|
+
}
|
|
1210
|
+
}];
|
|
1179
1211
|
}
|
|
1180
1212
|
|
|
1181
|
-
RCT_EXPORT_METHOD(getSizeWithHeaders
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1213
|
+
RCT_EXPORT_METHOD(getSizeWithHeaders
|
|
1214
|
+
: (NSString *)uri headers
|
|
1215
|
+
: (NSDictionary *)headers resolve
|
|
1216
|
+
: (RCTPromiseResolveBlock)resolve reject
|
|
1217
|
+
: (RCTPromiseRejectBlock)reject)
|
|
1185
1218
|
{
|
|
1186
1219
|
NSURL *URL = [RCTConvert NSURL:uri];
|
|
1187
1220
|
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL];
|
|
@@ -1189,27 +1222,29 @@ RCT_EXPORT_METHOD(getSizeWithHeaders:(NSString *)uri
|
|
|
1189
1222
|
[request addValue:[RCTConvert NSString:value] forHTTPHeaderField:key];
|
|
1190
1223
|
}];
|
|
1191
1224
|
[self getImageSizeForURLRequest:request
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1225
|
+
block:^(NSError *error, CGSize size) {
|
|
1226
|
+
if (error) {
|
|
1227
|
+
reject(@"E_GET_SIZE_FAILURE", nil, error);
|
|
1228
|
+
return;
|
|
1229
|
+
}
|
|
1230
|
+
resolve(@{@"width" : @(size.width), @"height" : @(size.height)});
|
|
1231
|
+
}];
|
|
1199
1232
|
}
|
|
1200
1233
|
|
|
1201
|
-
RCT_EXPORT_METHOD(prefetchImage
|
|
1202
|
-
|
|
1203
|
-
|
|
1234
|
+
RCT_EXPORT_METHOD(prefetchImage
|
|
1235
|
+
: (NSString *)uri resolve
|
|
1236
|
+
: (RCTPromiseResolveBlock)resolve reject
|
|
1237
|
+
: (RCTPromiseRejectBlock)reject)
|
|
1204
1238
|
{
|
|
1205
1239
|
[self prefetchImageWithMetadata:uri queryRootName:nil rootTag:0 resolve:resolve reject:reject];
|
|
1206
1240
|
}
|
|
1207
1241
|
|
|
1208
|
-
RCT_EXPORT_METHOD(prefetchImageWithMetadata
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1242
|
+
RCT_EXPORT_METHOD(prefetchImageWithMetadata
|
|
1243
|
+
: (NSString *)uri queryRootName
|
|
1244
|
+
: (NSString *)queryRootName rootTag
|
|
1245
|
+
: (double)rootTag resolve
|
|
1246
|
+
: (RCTPromiseResolveBlock)resolve reject
|
|
1247
|
+
: (RCTPromiseRejectBlock)reject)
|
|
1213
1248
|
{
|
|
1214
1249
|
NSURLRequest *request = [RCTConvert NSURLRequest:uri];
|
|
1215
1250
|
[self loadImageWithURLRequest:request
|
|
@@ -1219,23 +1254,24 @@ RCT_EXPORT_METHOD(prefetchImageWithMetadata:(NSString *)uri
|
|
|
1219
1254
|
resizeMode:RCTResizeModeStretch
|
|
1220
1255
|
priority:RCTImageLoaderPriorityPrefetch
|
|
1221
1256
|
attribution:{
|
|
1222
|
-
|
|
1223
|
-
|
|
1257
|
+
.queryRootName = queryRootName ? [queryRootName UTF8String] : "",
|
|
1258
|
+
.surfaceId = (int)rootTag,
|
|
1224
1259
|
}
|
|
1225
1260
|
progressBlock:nil
|
|
1226
1261
|
partialLoadBlock:nil
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1262
|
+
completionBlock:^(NSError *error, UIImage *image, id completionMetadata) {
|
|
1263
|
+
if (error) {
|
|
1264
|
+
reject(@"E_PREFETCH_FAILURE", nil, error);
|
|
1265
|
+
return;
|
|
1266
|
+
}
|
|
1267
|
+
resolve(@YES);
|
|
1268
|
+
}];
|
|
1234
1269
|
}
|
|
1235
1270
|
|
|
1236
|
-
RCT_EXPORT_METHOD(queryCache
|
|
1237
|
-
|
|
1238
|
-
|
|
1271
|
+
RCT_EXPORT_METHOD(queryCache
|
|
1272
|
+
: (NSArray *)uris resolve
|
|
1273
|
+
: (RCTPromiseResolveBlock)resolve reject
|
|
1274
|
+
: (RCTPromiseRejectBlock)reject)
|
|
1239
1275
|
{
|
|
1240
1276
|
resolve([self getImageCacheStatus:uris]);
|
|
1241
1277
|
}
|
|
@@ -1249,8 +1285,9 @@ RCT_EXPORT_METHOD(queryCache:(NSArray *)uris
|
|
|
1249
1285
|
|
|
1250
1286
|
- (RCTImageLoader *)imageLoader
|
|
1251
1287
|
{
|
|
1252
|
-
RCTLogWarn(
|
|
1253
|
-
|
|
1288
|
+
RCTLogWarn(
|
|
1289
|
+
@"Calling bridge.imageLoader is deprecated and will not work in newer versions of RN. Please update to the "
|
|
1290
|
+
"moduleForClass API or turboModuleRegistry API.");
|
|
1254
1291
|
return [self moduleForClass:[RCTImageLoader class]];
|
|
1255
1292
|
}
|
|
1256
1293
|
|