@office-iss/react-native-win32 0.70.2 → 0.71.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +1 -0
- package/.eslintrc.js +2 -0
- package/.flowconfig +3 -6
- package/CHANGELOG.json +281 -43
- package/CHANGELOG.md +105 -24
- package/IntegrationTests/AccessibilityManagerTest.js +1 -1
- package/IntegrationTests/AppEventsTest.js +0 -1
- package/IntegrationTests/BUCK +0 -1
- package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
- package/IntegrationTests/ImageSnapshotTest.js +1 -1
- package/IntegrationTests/IntegrationTestsApp.js +2 -3
- package/IntegrationTests/SimpleSnapshotTest.js +1 -1
- package/IntegrationTests/SyncMethodTest.js +1 -1
- package/IntegrationTests/TimersTest.js +4 -4
- package/IntegrationTests/WebSocketTest.js +3 -3
- package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +80 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +4 -3
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.d.ts +90 -0
- package/Libraries/Alert/Alert.js +7 -1
- package/Libraries/Alert/Alert.win32.js +1 -0
- package/Libraries/Alert/NativeAlertManager.js +2 -0
- package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
- package/Libraries/Animated/Animated.d.ts +587 -0
- package/Libraries/Animated/Animated.js +13 -11
- package/Libraries/Animated/AnimatedEvent.js +12 -17
- package/Libraries/Animated/AnimatedImplementation.js +21 -23
- package/Libraries/Animated/AnimatedMock.js +11 -13
- package/Libraries/Animated/AnimatedWeb.js +2 -2
- package/Libraries/Animated/Easing.d.ts +37 -0
- package/Libraries/Animated/Easing.js +2 -2
- package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/SpringConfig.js +2 -7
- package/Libraries/Animated/animations/Animation.js +3 -4
- package/Libraries/Animated/animations/DecayAnimation.js +5 -8
- package/Libraries/Animated/animations/SpringAnimation.js +9 -14
- package/Libraries/Animated/animations/TimingAnimation.js +9 -13
- package/Libraries/Animated/bezier.js +2 -2
- package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
- package/Libraries/Animated/components/AnimatedImage.js +5 -6
- package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
- package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
- package/Libraries/Animated/components/AnimatedText.js +5 -6
- package/Libraries/Animated/components/AnimatedView.js +5 -6
- package/Libraries/Animated/createAnimatedComponent.js +13 -20
- package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +2 -2
- package/Libraries/Animated/nodes/AnimatedAddition.js +6 -8
- package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +6 -8
- package/Libraries/Animated/nodes/AnimatedDivision.js +7 -9
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +7 -10
- package/Libraries/Animated/nodes/AnimatedModulo.js +6 -8
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +7 -9
- package/Libraries/Animated/nodes/AnimatedNode.js +10 -8
- package/Libraries/Animated/nodes/AnimatedProps.js +12 -30
- package/Libraries/Animated/nodes/AnimatedStyle.js +12 -22
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +7 -9
- package/Libraries/Animated/nodes/AnimatedTracking.js +8 -12
- package/Libraries/Animated/nodes/AnimatedTransform.js +38 -31
- package/Libraries/Animated/nodes/AnimatedValue.js +9 -10
- package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -7
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +4 -5
- package/Libraries/Animated/useAnimatedProps.js +8 -16
- package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
- package/Libraries/Animated/useAnimatedValue.js +25 -0
- package/Libraries/AppState/AppState.d.ts +58 -0
- package/Libraries/AppState/AppState.js +3 -7
- package/Libraries/AppState/NativeAppState.js +1 -0
- package/Libraries/BatchedBridge/MessageQueue.js +9 -5
- package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
- package/Libraries/BatchedBridge/NativeModules.js +1 -0
- package/Libraries/Blob/BlobManager.js +5 -3
- package/Libraries/Blob/File.js +2 -3
- package/Libraries/Blob/FileReader.js +6 -5
- package/Libraries/Blob/NativeBlobModule.js +1 -0
- package/Libraries/Blob/NativeFileReaderModule.js +1 -0
- package/Libraries/Blob/URL.js +11 -9
- package/Libraries/BugReporting/NativeBugReporting.js +1 -0
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +128 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +208 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +40 -8
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +40 -8
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +5 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
- package/Libraries/Components/Button.d.ts +42 -0
- package/Libraries/Components/Button.flow.js +265 -0
- package/Libraries/Components/Button.js +62 -18
- package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
- package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
- package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
- package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +4 -2
- package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +7 -6
- package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +1 -0
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +9 -8
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +13 -14
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
- package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
- package/Libraries/Components/Keyboard/Keyboard.js +35 -8
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +35 -15
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
- package/Libraries/Components/Pressable/Pressable.js +73 -15
- package/Libraries/Components/Pressable/Pressable.win32.js +77 -19
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +6 -3
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +3 -3
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +1 -1
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +62 -0
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +4 -4
- package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +1 -1
- package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
- package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
- package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
- package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +5 -4
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollView.d.ts +911 -0
- package/Libraries/Components/ScrollView/ScrollView.js +87 -52
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +2 -1
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +243 -269
- package/Libraries/Components/Slider/Slider.d.ts +132 -0
- package/Libraries/Components/Slider/Slider.js +9 -9
- package/Libraries/Components/Slider/SliderNativeComponent.js +4 -5
- package/Libraries/Components/Sound/NativeSoundManager.js +1 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -0
- package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
- package/Libraries/Components/StatusBar/StatusBar.js +7 -7
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +10 -10
- package/Libraries/Components/Switch/Switch.d.ts +115 -0
- package/Libraries/Components/Switch/Switch.js +7 -7
- package/Libraries/Components/Switch/SwitchNativeComponent.js +9 -4
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +40 -12
- package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
- package/Libraries/Components/TextInput/InputAccessoryView.js +3 -4
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +3 -2
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -2
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -1
- package/Libraries/Components/TextInput/TextInput.d.ts +840 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +1057 -0
- package/Libraries/Components/TextInput/TextInput.js +344 -38
- package/Libraries/Components/TextInput/TextInput.win32.d.ts +1 -1
- package/Libraries/Components/TextInput/TextInput.win32.js +1 -1
- package/Libraries/Components/TextInput/TextInput.win32.js.map +1 -1
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
- package/Libraries/Components/TextInput/TextInputState.js +22 -5
- package/Libraries/Components/TextInput/TextInputState.win32.js +24 -5
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
- package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
- package/Libraries/Components/Touchable/Touchable.flow.js +258 -0
- package/Libraries/Components/Touchable/Touchable.js +12 -12
- package/Libraries/Components/Touchable/Touchable.win32.js +12 -12
- package/Libraries/Components/Touchable/TouchableBounce.js +44 -10
- package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
- package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
- package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
- package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +2 -1
- package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.js +0 -1
- package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -0
- package/Libraries/Components/View/View.d.ts +29 -0
- package/Libraries/Components/View/View.js +91 -8
- package/Libraries/Components/View/View.win32.js +176 -89
- package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
- package/Libraries/Components/View/ViewAccessibility.js +70 -1
- package/Libraries/Components/View/ViewNativeComponent.js +3 -3
- package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
- package/Libraries/Components/View/ViewPropTypes.js +105 -13
- package/Libraries/Components/View/ViewPropTypes.win32.js +105 -13
- package/Libraries/Components/View/ViewWin32.Props.d.ts +6 -1
- package/Libraries/Components/View/ViewWin32.Props.js.map +1 -1
- package/Libraries/Core/Devtools/openFileInEditor.js +3 -0
- package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
- package/Libraries/Core/ExceptionsManager.js +8 -0
- package/Libraries/Core/ExtendedError.js +11 -8
- package/Libraries/Core/InitializeCore.js +2 -1
- package/Libraries/Core/NativeExceptionsManager.js +3 -4
- package/Libraries/Core/RawEventEmitter.js +2 -1
- package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/ReactNativeVersionCheck.js +1 -0
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +1 -0
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
- package/Libraries/Core/Timers/JSTimers.js +13 -11
- package/Libraries/Core/Timers/NativeTiming.js +1 -0
- package/Libraries/Core/setUpBatchedBridge.js +1 -5
- package/Libraries/Core/setUpDeveloperTools.js +4 -6
- package/Libraries/Core/setUpReactDevTools.js +4 -1
- package/Libraries/Core/setUpRegeneratorRuntime.js +1 -1
- package/Libraries/Core/setUpTimers.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.d.ts +70 -0
- package/Libraries/EventEmitter/NativeEventEmitter.js +1 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +30 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +1 -0
- package/Libraries/Events/EventPolyfill.js +1 -1
- package/Libraries/HeapCapture/NativeJSCHeapCapture.js +1 -0
- package/Libraries/Image/AssetSourceResolver.js +4 -6
- package/Libraries/Image/Image.android.js +63 -45
- package/Libraries/Image/Image.d.ts +322 -0
- package/Libraries/Image/Image.flow.js +64 -0
- package/Libraries/Image/Image.ios.js +55 -28
- package/Libraries/Image/Image.win32.js +54 -25
- package/Libraries/Image/ImageBackground.js +18 -7
- package/Libraries/Image/ImageInjection.js +2 -1
- package/Libraries/Image/ImageProps.js +88 -5
- package/Libraries/Image/ImageResizeMode.d.ts +49 -0
- package/Libraries/Image/ImageSource.d.ts +76 -0
- package/Libraries/Image/ImageSourceUtils.js +80 -0
- package/Libraries/Image/ImageUtils.js +21 -0
- package/Libraries/Image/ImageViewNativeComponent.js +8 -5
- package/Libraries/Image/NativeImageEditor.js +1 -0
- package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
- package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
- package/Libraries/Image/NativeImageLoaderWin32.js +1 -0
- package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
- package/Libraries/Image/NativeImageStoreIOS.js +1 -0
- package/Libraries/Image/TextInlineImageNativeComponent.js +4 -3
- package/Libraries/Image/nativeImageSource.js +2 -2
- package/Libraries/Image/resolveAssetSource.js +5 -5
- package/Libraries/Inspector/BorderBox.js +1 -1
- package/Libraries/Inspector/BoxInspector.js +3 -4
- package/Libraries/Inspector/DevtoolsOverlay.js +213 -0
- package/Libraries/Inspector/ElementBox.js +4 -5
- package/Libraries/Inspector/ElementProperties.js +10 -11
- package/Libraries/Inspector/Inspector.js +22 -108
- package/Libraries/Inspector/Inspector.win32.js +23 -109
- package/Libraries/Inspector/InspectorOverlay.js +5 -5
- package/Libraries/Inspector/InspectorOverlay.win32.js +5 -5
- package/Libraries/Inspector/InspectorPanel.js +12 -10
- package/Libraries/Inspector/NetworkOverlay.js +7 -3
- package/Libraries/Inspector/PerformanceOverlay.js +3 -3
- package/Libraries/Inspector/StyleInspector.js +2 -2
- package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +71 -0
- package/Libraries/Interaction/BridgeSpyStallHandler.js +1 -1
- package/Libraries/Interaction/InteractionManager.d.ts +74 -0
- package/Libraries/Interaction/InteractionManager.js +8 -8
- package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
- package/Libraries/Interaction/PanResponder.d.ts +202 -0
- package/Libraries/Interaction/PanResponder.flow.js +257 -0
- package/Libraries/Interaction/PanResponder.js +4 -3
- package/Libraries/JSInspector/JSInspector.js +0 -3
- package/Libraries/JSInspector/NetworkAgent.js +3 -3
- package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
- package/Libraries/LayoutAnimation/LayoutAnimation.js +4 -3
- package/Libraries/Linking/Linking.d.ts +61 -0
- package/Libraries/Linking/Linking.js +3 -2
- package/Libraries/Linking/NativeIntentAndroid.js +1 -0
- package/Libraries/Linking/NativeLinkingManager.js +1 -0
- package/Libraries/Lists/CellRenderMask.js +13 -3
- package/Libraries/Lists/ChildListCollection.js +72 -0
- package/Libraries/Lists/FillRateHelper.js +28 -17
- package/Libraries/Lists/FlatList.d.ts +292 -0
- package/Libraries/Lists/FlatList.js +70 -70
- package/Libraries/Lists/SectionList.d.ts +300 -0
- package/Libraries/Lists/SectionList.js +5 -5
- package/Libraries/Lists/SectionListModern.js +6 -6
- package/Libraries/Lists/StateSafePureComponent.js +85 -0
- package/Libraries/Lists/ViewabilityHelper.js +33 -12
- package/Libraries/Lists/VirtualizeUtils.js +17 -13
- package/Libraries/Lists/VirtualizedList.d.ts +317 -0
- package/Libraries/Lists/VirtualizedList.js +548 -890
- package/Libraries/Lists/VirtualizedListCellRenderer.js +259 -0
- package/Libraries/Lists/VirtualizedListContext.js +7 -48
- package/Libraries/Lists/VirtualizedListProps.js +279 -0
- package/Libraries/Lists/VirtualizedSectionList.js +6 -3
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +9 -8
- package/Libraries/LogBox/Data/LogBoxLog.js +5 -5
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +4 -4
- package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -3
- package/Libraries/LogBox/LogBox.d.ts +28 -0
- package/Libraries/LogBox/LogBox.js +11 -11
- package/Libraries/LogBox/LogBoxInspectorContainer.js +5 -3
- package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
- package/Libraries/LogBox/UI/AnsiHighlight.js +5 -3
- package/Libraries/LogBox/UI/LogBoxButton.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspector.js +6 -6
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +9 -8
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +3 -3
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +7 -6
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -5
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +7 -6
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -5
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +5 -5
- package/Libraries/LogBox/UI/LogBoxMessage.js +3 -3
- package/Libraries/LogBox/UI/LogBoxNotification.js +6 -5
- package/Libraries/Modal/Modal.d.ts +104 -0
- package/Libraries/Modal/Modal.js +14 -14
- package/Libraries/Modal/NativeModalManager.js +1 -0
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -3
- package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -3
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +8 -3
- package/Libraries/NativeComponent/NativeComponentRegistry.js +5 -4
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +1 -1
- package/Libraries/NativeComponent/ViewConfig.js +1 -0
- package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +1 -0
- package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
- package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
- package/Libraries/NativeModules/specs/NativeLogBox.js +3 -2
- package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
- package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
- package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
- package/Libraries/Network/NativeNetworkingIOS.js +1 -0
- package/Libraries/Network/RCTNetworking.android.js +4 -3
- package/Libraries/Network/RCTNetworking.ios.js +3 -2
- package/Libraries/Network/RCTNetworking.win32.js +1 -0
- package/Libraries/Network/convertRequestBody.js +1 -2
- package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -1
- package/Libraries/NewAppScreen/components/Header.js +6 -2
- package/Libraries/NewAppScreen/components/HermesBadge.js +6 -2
- package/Libraries/NewAppScreen/components/LearnMoreLinks.js +8 -9
- package/Libraries/NewAppScreen/components/ReloadInstructions.js +4 -1
- package/Libraries/NewAppScreen/index.js +1 -1
- package/Libraries/Performance/NativeJSCSamplingProfiler.js +1 -0
- package/Libraries/Performance/QuickPerformanceLogger.js +34 -10
- package/Libraries/Performance/Systrace.d.ts +66 -0
- package/Libraries/Performance/Systrace.js +110 -195
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +115 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +5 -4
- package/Libraries/Pressability/Pressability.js +12 -10
- package/Libraries/Pressability/Pressability.win32.js +9 -7
- package/Libraries/Pressability/PressabilityDebug.js +2 -2
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +275 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +19 -14
- package/Libraries/ReactNative/AppContainer.js +17 -7
- package/Libraries/ReactNative/AppRegistry.d.ts +68 -0
- package/Libraries/ReactNative/AppRegistry.js +11 -14
- package/Libraries/ReactNative/BridgelessUIManager.js +4 -3
- package/Libraries/ReactNative/FabricUIManager.js +3 -3
- package/Libraries/ReactNative/I18nManager.d.ts +25 -0
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
- package/Libraries/ReactNative/NativeI18nManager.js +1 -0
- package/Libraries/ReactNative/NativeUIManager.js +1 -0
- package/Libraries/ReactNative/PaperUIManager.js +2 -2
- package/Libraries/ReactNative/PaperUIManager.win32.js +1 -1
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +9 -0
- package/Libraries/ReactNative/RendererImplementation.js +112 -0
- package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
- package/Libraries/ReactNative/RendererProxy.js +26 -0
- package/Libraries/ReactNative/RootTag.js +0 -1
- package/Libraries/ReactNative/UIManager.d.ts +157 -0
- package/Libraries/ReactNative/UIManager.js +1 -1
- package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -0
- package/Libraries/ReactNative/renderApplication.js +38 -20
- package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
- package/Libraries/ReactNative/requireNativeComponent.js +2 -2
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +10 -9
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +312 -217
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +212 -177
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +248 -213
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +311 -218
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +226 -196
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +262 -232
- package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +149 -0
- package/Libraries/Renderer/shims/ReactFabric.js +2 -2
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
- package/Libraries/Renderer/shims/ReactNative.js +2 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +141 -0
- package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -22
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -8
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
- package/Libraries/Settings/NativeSettingsManager.js +1 -0
- package/Libraries/Settings/Settings.d.ts +18 -0
- package/Libraries/Share/NativeShareModule.js +1 -0
- package/Libraries/Share/Share.d.ts +80 -0
- package/Libraries/Share/Share.js +7 -5
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -0
- package/Libraries/StyleSheet/StyleSheet.d.ts +156 -0
- package/Libraries/StyleSheet/StyleSheet.js +15 -11
- package/Libraries/StyleSheet/StyleSheet.win32.js +16 -12
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +332 -0
- package/Libraries/StyleSheet/StyleSheetTypes.js +101 -24
- package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +2 -2
- package/Libraries/StyleSheet/normalizeColor.js +3 -3
- package/Libraries/StyleSheet/private/_TransformStyle.js +26 -24
- package/Libraries/StyleSheet/processAspectRatio.js +53 -0
- package/Libraries/StyleSheet/processColor.d.ts +16 -0
- package/Libraries/StyleSheet/processColor.js +3 -4
- package/Libraries/StyleSheet/processColorArray.js +1 -0
- package/Libraries/StyleSheet/processFontVariant.js +30 -0
- package/Libraries/StyleSheet/processTransform.js +114 -105
- package/Libraries/StyleSheet/splitLayoutProps.js +5 -0
- package/Libraries/Text/Text.d.ts +209 -0
- package/Libraries/Text/Text.js +94 -12
- package/Libraries/Text/TextNativeComponent.js +49 -41
- package/Libraries/Text/TextNativeComponent.win32.js +67 -48
- package/Libraries/Text/TextProps.js +64 -7
- package/Libraries/{Components/MaskedView/MaskedViewIOS.win32.js → TurboModule/RCTExport.d.ts} +3 -4
- package/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
- package/Libraries/TurboModule/TurboModuleRegistry.js +3 -1
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
- package/Libraries/Types/CoreEventTypes.d.ts +263 -0
- package/Libraries/Types/CoreEventTypes.js +2 -1
- package/Libraries/Types/CoreEventTypes.win32.js +2 -1
- package/Libraries/Utilities/AcessibilityMapping.js +154 -0
- package/Libraries/Utilities/Appearance.d.ts +43 -0
- package/Libraries/Utilities/Appearance.js +3 -3
- package/Libraries/Utilities/BackHandler.android.js +3 -5
- package/Libraries/Utilities/BackHandler.d.ts +38 -0
- package/Libraries/Utilities/BackHandler.win32.js +3 -5
- package/Libraries/Utilities/DevSettings.d.ts +32 -0
- package/Libraries/Utilities/DevSettings.js +4 -2
- package/Libraries/Utilities/Dimensions.d.ts +79 -0
- package/Libraries/Utilities/Dimensions.js +2 -2
- package/Libraries/Utilities/Dimensions.win32.js +2 -2
- package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -1
- package/Libraries/Utilities/HMRClient.js +23 -8
- package/Libraries/Utilities/LoadingView.ios.js +1 -1
- package/Libraries/Utilities/NativeAppearance.js +1 -0
- package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
- package/Libraries/Utilities/NativeDevSplitBundleLoader.js +1 -0
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
- package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -0
- package/Libraries/Utilities/PerformanceLoggerContext.js +3 -2
- package/Libraries/Utilities/PixelRatio.d.ts +64 -0
- package/Libraries/Utilities/Platform.android.js +11 -5
- package/Libraries/Utilities/Platform.d.ts +102 -0
- package/Libraries/Utilities/Platform.ios.js +12 -5
- package/Libraries/Utilities/Platform.win32.js +11 -5
- package/Libraries/Utilities/PolyfillFunctions.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +9 -15
- package/Libraries/Utilities/codegenNativeCommands.js +1 -10
- package/Libraries/Utilities/codegenNativeComponent.js +4 -1
- package/Libraries/Utilities/createPerformanceLogger.js +7 -8
- package/Libraries/Utilities/differ/deepDiffer.js +1 -1
- package/Libraries/Utilities/groupByEveryN.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +3 -1
- package/Libraries/Utilities/useColorScheme.js +3 -2
- package/Libraries/Utilities/useRefEffect.js +1 -1
- package/Libraries/Vibration/NativeVibration.js +1 -0
- package/Libraries/Vibration/Vibration.d.ts +43 -0
- package/Libraries/Vibration/Vibration.js +1 -0
- package/Libraries/WebPerformance/NativePerformanceObserver.js +41 -0
- package/Libraries/WebPerformance/PerformanceObserver.js +223 -0
- package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
- package/Libraries/WebSocket/WebSocket.js +11 -3
- package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
- package/Libraries/YellowBox/YellowBoxDeprecated.js +2 -3
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -1
- package/Libraries/__tests__/ButtonWin32-test.js +16 -0
- package/Libraries/platform-types.d.ts +25 -0
- package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
- package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
- package/babel.config.js +3 -0
- package/flow/jest.js +2 -2
- package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
- package/flow-typed/npm/yargs_v17.x.x.js +341 -0
- package/index.js +89 -55
- package/index.win32.js +89 -55
- package/interface.js +8 -0
- package/jest/react-native-env.js +18 -0
- package/jest/renderer.js +2 -2
- package/jest/setup.js +7 -9
- package/jest.config.js +9 -2
- package/overrides.json +40 -101
- package/package.json +34 -33
- package/src/Libraries/Components/TextInput/TextInput.win32.tsx +2 -1
- package/src/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +2 -2
- package/src/Libraries/Components/Touchable/TouchableWin32.Props.tsx +2 -1
- package/src/Libraries/Components/Touchable/TouchableWin32.tsx +1 -1
- package/src/Libraries/Components/View/ViewWin32.Props.ts +10 -1
- package/src/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +22 -0
- package/src/Libraries/platform-types.d.ts +25 -0
- package/types/index.d.ts +215 -0
- package/IntegrationTests/AsyncStorageTest.js +0 -261
- package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
- package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
- package/Libraries/Core/setUpSystrace.js +0 -21
- package/Libraries/Image/ImagePickerIOS.js +0 -103
- package/Libraries/Image/NativeImagePickerIOS.js +0 -38
- package/Libraries/Lists/VirtualizedList.win32.js +0 -9
- package/Libraries/Lists/__tests__/CellRenderMask-test.js +0 -179
- package/Libraries/Lists/__tests__/FillRateHelper-test.js +0 -120
- package/Libraries/Lists/__tests__/FlatList-test.js +0 -155
- package/Libraries/Lists/__tests__/SectionList-test.js +0 -109
- package/Libraries/Lists/__tests__/ViewabilityHelper-test.js +0 -440
- package/Libraries/Lists/__tests__/VirtualizeUtils-test.js +0 -91
- package/Libraries/Lists/__tests__/VirtualizedList-test.js +0 -1587
- package/Libraries/Lists/__tests__/VirtualizedSectionList-test.js +0 -269
- package/Libraries/Storage/AsyncStorage.js +0 -385
- package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
- package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
- package/Libraries/Utilities/JSDevSupportModule.js +0 -37
- package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
- package/rntypes/BatchedBridge.d.ts +0 -23
- package/rntypes/Devtools.d.ts +0 -20
- package/rntypes/LaunchScreen.d.ts +0 -9
- package/rntypes/globals.d.ts +0 -497
- package/rntypes/index.d.ts +0 -9754
- package/rntypes/legacy-properties.d.ts +0 -238
- package/src/Libraries/Lists/__tests__/__snapshots__/FlatList-test.js.snap +0 -427
- package/src/Libraries/Lists/__tests__/__snapshots__/SectionList-test.js.snap +0 -391
- package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedList-test.js.snap +0 -4565
- package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedSectionList-test.js.snap +0 -1153
- package/src/rntypes/BatchedBridge.d.ts +0 -23
- package/src/rntypes/Devtools.d.ts +0 -20
- package/src/rntypes/LaunchScreen.d.ts +0 -9
- package/src/rntypes/globals.d.ts +0 -497
- package/src/rntypes/index.d.ts +0 -9754
- package/src/rntypes/legacy-properties.d.ts +0 -238
- package/src/typings-index.ts +0 -37
- package/typings-index.d.ts +0 -23
- package/typings-index.js +0 -47
- package/typings-index.js.map +0 -1
|
@@ -10,14 +10,15 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
import
|
|
14
|
-
import * as React from 'react';
|
|
15
|
-
import StyleSheet from '../StyleSheet/StyleSheet';
|
|
16
|
-
import flattenStyle from '../StyleSheet/flattenStyle';
|
|
17
|
-
import View from '../Components/View/View';
|
|
13
|
+
import type {ViewProps} from '../Components/View/ViewPropTypes';
|
|
18
14
|
import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
|
|
19
15
|
import type {ImageBackgroundProps} from './ImageProps';
|
|
20
|
-
|
|
16
|
+
|
|
17
|
+
import View from '../Components/View/View';
|
|
18
|
+
import flattenStyle from '../StyleSheet/flattenStyle';
|
|
19
|
+
import StyleSheet from '../StyleSheet/StyleSheet';
|
|
20
|
+
import Image from './Image';
|
|
21
|
+
import * as React from 'react';
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* Very simple drop-in replacement for <Image> which supports nesting views.
|
|
@@ -66,15 +67,25 @@ class ImageBackground extends React.Component<ImageBackgroundProps> {
|
|
|
66
67
|
};
|
|
67
68
|
|
|
68
69
|
render(): React.Node {
|
|
69
|
-
const {
|
|
70
|
+
const {
|
|
71
|
+
children,
|
|
72
|
+
style,
|
|
73
|
+
imageStyle,
|
|
74
|
+
imageRef,
|
|
75
|
+
importantForAccessibility,
|
|
76
|
+
...props
|
|
77
|
+
} = this.props;
|
|
78
|
+
|
|
70
79
|
const flattenedStyle = flattenStyle(style);
|
|
71
80
|
return (
|
|
72
81
|
<View
|
|
73
82
|
accessibilityIgnoresInvertColors={true}
|
|
83
|
+
importantForAccessibility={importantForAccessibility}
|
|
74
84
|
style={style}
|
|
75
85
|
ref={this._captureRef}>
|
|
76
86
|
<Image
|
|
77
87
|
{...props}
|
|
88
|
+
importantForAccessibility={importantForAccessibility}
|
|
78
89
|
style={[
|
|
79
90
|
StyleSheet.absoluteFill,
|
|
80
91
|
{
|
|
@@ -8,10 +8,11 @@
|
|
|
8
8
|
* @flow
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import * as React from 'react';
|
|
12
11
|
import type {ImageProps as ImagePropsType} from './ImageProps';
|
|
12
|
+
|
|
13
13
|
import ImageViewNativeComponent from './ImageViewNativeComponent';
|
|
14
14
|
import TextInlineImageNativeComponent from './TextInlineImageNativeComponent';
|
|
15
|
+
import * as React from 'react';
|
|
15
16
|
|
|
16
17
|
export default {
|
|
17
18
|
unstable_createImageComponent: (null: ?(
|
|
@@ -10,13 +10,17 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
import type {
|
|
13
|
+
import type {ViewProps} from '../Components/View/ViewPropTypes';
|
|
14
14
|
import type {EdgeInsetsProp} from '../StyleSheet/EdgeInsetsPropType';
|
|
15
|
+
import type {
|
|
16
|
+
ColorValue,
|
|
17
|
+
ImageStyleProp,
|
|
18
|
+
ViewStyleProp,
|
|
19
|
+
} from '../StyleSheet/StyleSheet';
|
|
20
|
+
import type {LayoutEvent, SyntheticEvent} from '../Types/CoreEventTypes';
|
|
21
|
+
import typeof Image from './Image';
|
|
15
22
|
import type {ImageSource} from './ImageSource';
|
|
16
|
-
import type {ViewStyleProp, ImageStyleProp} from '../StyleSheet/StyleSheet';
|
|
17
|
-
import type {ViewProps} from '../Components/View/ViewPropTypes';
|
|
18
23
|
import type {Node, Ref} from 'react';
|
|
19
|
-
import typeof Image from './Image';
|
|
20
24
|
|
|
21
25
|
export type ImageLoadEvent = SyntheticEvent<
|
|
22
26
|
$ReadOnly<{|
|
|
@@ -82,6 +86,26 @@ export type ImageProps = {|
|
|
|
82
86
|
*/
|
|
83
87
|
accessibilityLabel?: ?Stringish,
|
|
84
88
|
|
|
89
|
+
/**
|
|
90
|
+
* Alias for accessibilityLabel
|
|
91
|
+
* See https://reactnative.dev/docs/image#accessibilitylabel
|
|
92
|
+
*/
|
|
93
|
+
'aria-label'?: ?Stringish,
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Reperesents the nativeID of the associated label. When the assistive technology focuses on the component with this props.
|
|
97
|
+
*
|
|
98
|
+
* @platform android
|
|
99
|
+
*/
|
|
100
|
+
'aria-labelledby'?: ?string,
|
|
101
|
+
/**
|
|
102
|
+
* The text that's read by the screen reader when the user interacts with
|
|
103
|
+
* the image.
|
|
104
|
+
*
|
|
105
|
+
* See https://reactnative.dev/docs/image#alt
|
|
106
|
+
*/
|
|
107
|
+
alt?: ?Stringish,
|
|
108
|
+
|
|
85
109
|
/**
|
|
86
110
|
* blurRadius: the blur radius of the blur filter added to the image
|
|
87
111
|
*
|
|
@@ -94,6 +118,28 @@ export type ImageProps = {|
|
|
|
94
118
|
*/
|
|
95
119
|
capInsets?: ?EdgeInsetsProp,
|
|
96
120
|
|
|
121
|
+
/**
|
|
122
|
+
* Adds the CORS related header to the request.
|
|
123
|
+
* Similar to crossorigin from HTML.
|
|
124
|
+
*
|
|
125
|
+
* See https://reactnative.dev/docs/image#crossorigin
|
|
126
|
+
*/
|
|
127
|
+
crossOrigin?: ?('anonymous' | 'use-credentials'),
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Height of the image component.
|
|
131
|
+
*
|
|
132
|
+
* See https://reactnative.dev/docs/image#height
|
|
133
|
+
*/
|
|
134
|
+
height?: number,
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Width of the image component.
|
|
138
|
+
*
|
|
139
|
+
* See https://reactnative.dev/docs/image#width
|
|
140
|
+
*/
|
|
141
|
+
width?: number,
|
|
142
|
+
|
|
97
143
|
/**
|
|
98
144
|
* Invoked on load error with `{nativeEvent: {error}}`.
|
|
99
145
|
*
|
|
@@ -154,6 +200,23 @@ export type ImageProps = {|
|
|
|
154
200
|
*/
|
|
155
201
|
style?: ?ImageStyleProp,
|
|
156
202
|
|
|
203
|
+
/**
|
|
204
|
+
* A string indicating which referrer to use when fetching the resource.
|
|
205
|
+
* Similar to referrerpolicy from HTML.
|
|
206
|
+
*
|
|
207
|
+
* See https://reactnative.dev/docs/image#referrerpolicy
|
|
208
|
+
*/
|
|
209
|
+
referrerPolicy?: ?(
|
|
210
|
+
| 'no-referrer'
|
|
211
|
+
| 'no-referrer-when-downgrade'
|
|
212
|
+
| 'origin'
|
|
213
|
+
| 'origin-when-cross-origin'
|
|
214
|
+
| 'same-origin'
|
|
215
|
+
| 'strict-origin'
|
|
216
|
+
| 'strict-origin-when-cross-origin'
|
|
217
|
+
| 'unsafe-url'
|
|
218
|
+
),
|
|
219
|
+
|
|
157
220
|
/**
|
|
158
221
|
* Determines how to resize the image when the frame doesn't match the raw
|
|
159
222
|
* image dimensions.
|
|
@@ -170,7 +233,27 @@ export type ImageProps = {|
|
|
|
170
233
|
*/
|
|
171
234
|
testID?: ?string,
|
|
172
235
|
|
|
173
|
-
|
|
236
|
+
/**
|
|
237
|
+
* Changes the color of all the non-transparent pixels to the tintColor.
|
|
238
|
+
*
|
|
239
|
+
* See https://reactnative.dev/docs/image#tintcolor
|
|
240
|
+
*/
|
|
241
|
+
tintColor?: ColorValue,
|
|
242
|
+
|
|
243
|
+
/**
|
|
244
|
+
* A string representing the resource identifier for the image. Similar to
|
|
245
|
+
* src from HTML.
|
|
246
|
+
*
|
|
247
|
+
* See https://reactnative.dev/docs/image#src
|
|
248
|
+
*/
|
|
249
|
+
src?: ?string,
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* Similar to srcset from HTML.
|
|
253
|
+
*
|
|
254
|
+
* See https://reactnative.dev/docs/image#srcset
|
|
255
|
+
*/
|
|
256
|
+
srcSet?: ?string,
|
|
174
257
|
children?: empty,
|
|
175
258
|
|};
|
|
176
259
|
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export type ImageResizeMode =
|
|
11
|
+
| 'cover'
|
|
12
|
+
| 'contain'
|
|
13
|
+
| 'stretch'
|
|
14
|
+
| 'repeat'
|
|
15
|
+
| 'center';
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @see ImageResizeMode.js
|
|
19
|
+
*/
|
|
20
|
+
export interface ImageResizeModeStatic {
|
|
21
|
+
/**
|
|
22
|
+
* contain - The image will be resized such that it will be completely
|
|
23
|
+
* visible, contained within the frame of the View.
|
|
24
|
+
*/
|
|
25
|
+
contain: ImageResizeMode;
|
|
26
|
+
/**
|
|
27
|
+
* cover - The image will be resized such that the entire area of the view
|
|
28
|
+
* is covered by the image, potentially clipping parts of the image.
|
|
29
|
+
*/
|
|
30
|
+
cover: ImageResizeMode;
|
|
31
|
+
/**
|
|
32
|
+
* stretch - The image will be stretched to fill the entire frame of the
|
|
33
|
+
* view without clipping. This may change the aspect ratio of the image,
|
|
34
|
+
* distoring it. Only supported on iOS.
|
|
35
|
+
*/
|
|
36
|
+
stretch: ImageResizeMode;
|
|
37
|
+
/**
|
|
38
|
+
* center - The image will be scaled down such that it is completely visible,
|
|
39
|
+
* if bigger than the area of the view.
|
|
40
|
+
* The image will not be scaled up.
|
|
41
|
+
*/
|
|
42
|
+
center: ImageResizeMode;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* repeat - The image will be repeated to cover the frame of the View. The
|
|
46
|
+
* image will keep it's size and aspect ratio.
|
|
47
|
+
*/
|
|
48
|
+
repeat: ImageResizeMode;
|
|
49
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/*
|
|
11
|
+
* @see https://github.com/facebook/react-native/blob/master/Libraries/Image/ImageSource.js
|
|
12
|
+
*/
|
|
13
|
+
export interface ImageURISource {
|
|
14
|
+
/**
|
|
15
|
+
* `uri` is a string representing the resource identifier for the image, which
|
|
16
|
+
* could be an http address, a local file path, or the name of a static image
|
|
17
|
+
* resource (which should be wrapped in the `require('./path/to/image.png')`
|
|
18
|
+
* function).
|
|
19
|
+
*/
|
|
20
|
+
uri?: string | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* `bundle` is the iOS asset bundle which the image is included in. This
|
|
23
|
+
* will default to [NSBundle mainBundle] if not set.
|
|
24
|
+
* @platform ios
|
|
25
|
+
*/
|
|
26
|
+
bundle?: string | undefined;
|
|
27
|
+
/**
|
|
28
|
+
* `method` is the HTTP Method to use. Defaults to GET if not specified.
|
|
29
|
+
*/
|
|
30
|
+
method?: string | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* `headers` is an object representing the HTTP headers to send along with the
|
|
33
|
+
* request for a remote image.
|
|
34
|
+
*/
|
|
35
|
+
headers?: {[key: string]: string} | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* `cache` determines how the requests handles potentially cached
|
|
38
|
+
* responses.
|
|
39
|
+
*
|
|
40
|
+
* - `default`: Use the native platforms default strategy. `useProtocolCachePolicy` on iOS.
|
|
41
|
+
*
|
|
42
|
+
* - `reload`: The data for the URL will be loaded from the originating source.
|
|
43
|
+
* No existing cache data should be used to satisfy a URL load request.
|
|
44
|
+
*
|
|
45
|
+
* - `force-cache`: The existing cached data will be used to satisfy the request,
|
|
46
|
+
* regardless of its age or expiration date. If there is no existing data in the cache
|
|
47
|
+
* corresponding the request, the data is loaded from the originating source.
|
|
48
|
+
*
|
|
49
|
+
* - `only-if-cached`: The existing cache data will be used to satisfy a request, regardless of
|
|
50
|
+
* its age or expiration date. If there is no existing data in the cache corresponding
|
|
51
|
+
* to a URL load request, no attempt is made to load the data from the originating source,
|
|
52
|
+
* and the load is considered to have failed.
|
|
53
|
+
*
|
|
54
|
+
* @platform ios
|
|
55
|
+
*/
|
|
56
|
+
cache?: 'default' | 'reload' | 'force-cache' | 'only-if-cached' | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* `body` is the HTTP body to send with the request. This must be a valid
|
|
59
|
+
* UTF-8 string, and will be sent exactly as specified, with no
|
|
60
|
+
* additional encoding (e.g. URL-escaping or base64) applied.
|
|
61
|
+
*/
|
|
62
|
+
body?: string | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* `width` and `height` can be specified if known at build time, in which case
|
|
65
|
+
* these will be used to set the default `<Image/>` component dimensions.
|
|
66
|
+
*/
|
|
67
|
+
width?: number | undefined;
|
|
68
|
+
height?: number | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* `scale` is used to indicate the scale factor of the image. Defaults to 1.0 if
|
|
71
|
+
* unspecified, meaning that one image pixel equates to one display point / DIP.
|
|
72
|
+
*/
|
|
73
|
+
scale?: number | undefined;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export type ImageRequireSource = number;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
'use strict';
|
|
12
|
+
|
|
13
|
+
import type {ResolvedAssetSource} from './AssetSourceResolver';
|
|
14
|
+
import type {ImageProps} from './ImageProps';
|
|
15
|
+
|
|
16
|
+
import resolveAssetSource from './resolveAssetSource';
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* A function which returns the appropriate value for image source
|
|
20
|
+
* by resolving the `source`, `src` and `srcSet` props.
|
|
21
|
+
*/
|
|
22
|
+
export function getImageSourcesFromImageProps(
|
|
23
|
+
imageProps: ImageProps,
|
|
24
|
+
): ?ResolvedAssetSource | $ReadOnlyArray<{uri: string, ...}> {
|
|
25
|
+
let source = resolveAssetSource(imageProps.source);
|
|
26
|
+
|
|
27
|
+
let sources;
|
|
28
|
+
|
|
29
|
+
const {crossOrigin, referrerPolicy, src, srcSet, width, height} = imageProps;
|
|
30
|
+
|
|
31
|
+
const headers: {[string]: string} = {};
|
|
32
|
+
if (crossOrigin === 'use-credentials') {
|
|
33
|
+
headers['Access-Control-Allow-Credentials'] = 'true';
|
|
34
|
+
}
|
|
35
|
+
if (referrerPolicy != null) {
|
|
36
|
+
headers['Referrer-Policy'] = referrerPolicy;
|
|
37
|
+
}
|
|
38
|
+
if (srcSet != null) {
|
|
39
|
+
const sourceList = [];
|
|
40
|
+
const srcSetList = srcSet.split(', ');
|
|
41
|
+
// `src` prop should be used with default scale if `srcSet` does not have 1x scale.
|
|
42
|
+
let shouldUseSrcForDefaultScale = true;
|
|
43
|
+
srcSetList.forEach(imageSrc => {
|
|
44
|
+
const [uri, xScale = '1x'] = imageSrc.split(' ');
|
|
45
|
+
if (!xScale.endsWith('x')) {
|
|
46
|
+
console.warn(
|
|
47
|
+
'The provided format for scale is not supported yet. Please use scales like 1x, 2x, etc.',
|
|
48
|
+
);
|
|
49
|
+
} else {
|
|
50
|
+
const scale = parseInt(xScale.split('x')[0], 10);
|
|
51
|
+
if (!isNaN(scale)) {
|
|
52
|
+
// 1x scale is provided in `srcSet` prop so ignore the `src` prop if provided.
|
|
53
|
+
shouldUseSrcForDefaultScale =
|
|
54
|
+
scale === 1 ? false : shouldUseSrcForDefaultScale;
|
|
55
|
+
sourceList.push({headers: headers, scale, uri, width, height});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
if (shouldUseSrcForDefaultScale && src != null) {
|
|
61
|
+
sourceList.push({
|
|
62
|
+
headers: headers,
|
|
63
|
+
scale: 1,
|
|
64
|
+
uri: src,
|
|
65
|
+
width,
|
|
66
|
+
height,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
if (sourceList.length === 0) {
|
|
70
|
+
console.warn('The provided value for srcSet is not valid.');
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
sources = sourceList;
|
|
74
|
+
} else if (src != null) {
|
|
75
|
+
sources = [{uri: src, headers: headers, width, height}];
|
|
76
|
+
} else {
|
|
77
|
+
sources = source;
|
|
78
|
+
}
|
|
79
|
+
return sources;
|
|
80
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
type ResizeMode = 'cover' | 'contain' | 'stretch' | 'repeat' | 'center';
|
|
12
|
+
|
|
13
|
+
export function convertObjectFitToResizeMode(objectFit: string): ResizeMode {
|
|
14
|
+
const objectFitMap = {
|
|
15
|
+
contain: 'contain',
|
|
16
|
+
cover: 'cover',
|
|
17
|
+
fill: 'stretch',
|
|
18
|
+
'scale-down': 'contain',
|
|
19
|
+
};
|
|
20
|
+
return objectFitMap[objectFit];
|
|
21
|
+
}
|
|
@@ -8,11 +8,7 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import type {ResolvedAssetSource} from './AssetSourceResolver';
|
|
12
|
-
import type {ImageProps} from './ImageProps';
|
|
13
11
|
import type {ViewProps} from '../Components/View/ViewPropTypes';
|
|
14
|
-
import * as NativeComponentRegistry from '../NativeComponent/NativeComponentRegistry';
|
|
15
|
-
import {ConditionallyIgnoredEventHandlers} from '../NativeComponent/ViewConfigIgnore';
|
|
16
12
|
import type {
|
|
17
13
|
HostComponent,
|
|
18
14
|
PartialViewConfig,
|
|
@@ -22,6 +18,11 @@ import type {
|
|
|
22
18
|
DangerouslyImpreciseStyle,
|
|
23
19
|
ImageStyleProp,
|
|
24
20
|
} from '../StyleSheet/StyleSheet';
|
|
21
|
+
import type {ResolvedAssetSource} from './AssetSourceResolver';
|
|
22
|
+
import type {ImageProps} from './ImageProps';
|
|
23
|
+
|
|
24
|
+
import * as NativeComponentRegistry from '../NativeComponent/NativeComponentRegistry';
|
|
25
|
+
import {ConditionallyIgnoredEventHandlers} from '../NativeComponent/ViewConfigIgnore';
|
|
25
26
|
import Platform from '../Utilities/Platform';
|
|
26
27
|
|
|
27
28
|
type Props = $ReadOnly<{
|
|
@@ -35,7 +36,9 @@ type Props = $ReadOnly<{
|
|
|
35
36
|
|
|
36
37
|
// Android native props
|
|
37
38
|
shouldNotifyLoadEvents?: boolean,
|
|
38
|
-
src?:
|
|
39
|
+
src?:
|
|
40
|
+
| ?ResolvedAssetSource
|
|
41
|
+
| ?$ReadOnlyArray<?$ReadOnly<{uri?: ?string, ...}>>,
|
|
39
42
|
headers?: ?{[string]: string},
|
|
40
43
|
defaultSrc?: ?string,
|
|
41
44
|
loadingIndicatorSrc?: ?string,
|
|
@@ -10,19 +10,20 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
+
import type {ViewProps} from '../Components/View/ViewPropTypes';
|
|
13
14
|
import type {
|
|
14
15
|
HostComponent,
|
|
15
16
|
PartialViewConfig,
|
|
16
17
|
} from '../Renderer/shims/ReactNativeTypes';
|
|
17
|
-
import type {
|
|
18
|
+
import type {ColorValue} from '../StyleSheet/StyleSheet';
|
|
18
19
|
import type {ImageResizeMode} from './ImageResizeMode';
|
|
20
|
+
|
|
19
21
|
import * as NativeComponentRegistry from '../NativeComponent/NativeComponentRegistry';
|
|
20
|
-
import type {ColorValue} from '../StyleSheet/StyleSheet';
|
|
21
22
|
|
|
22
23
|
type NativeProps = $ReadOnly<{
|
|
23
24
|
...ViewProps,
|
|
24
25
|
resizeMode?: ?ImageResizeMode,
|
|
25
|
-
src?: ?$ReadOnlyArray<?$ReadOnly<{uri
|
|
26
|
+
src?: ?$ReadOnlyArray<?$ReadOnly<{uri?: ?string, ...}>>,
|
|
26
27
|
tintColor?: ?ColorValue,
|
|
27
28
|
headers?: ?{[string]: string},
|
|
28
29
|
}>;
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import Platform from '../Utilities/Platform';
|
|
12
|
-
|
|
13
11
|
import type {ImageURISource} from './ImageSource';
|
|
14
12
|
|
|
13
|
+
import Platform from '../Utilities/Platform';
|
|
14
|
+
|
|
15
15
|
type NativeImageSourceSpec = $ReadOnly<{|
|
|
16
16
|
android?: string,
|
|
17
17
|
ios?: string,
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
'use strict';
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
import type {ResolvedAssetSource} from './AssetSourceResolver';
|
|
16
|
+
|
|
16
17
|
const AssetSourceResolver = require('./AssetSourceResolver');
|
|
17
18
|
const {pickScale} = require('./AssetUtils');
|
|
18
|
-
|
|
19
|
-
import type {ResolvedAssetSource} from './AssetSourceResolver';
|
|
19
|
+
const AssetRegistry = require('@react-native/assets/registry');
|
|
20
20
|
|
|
21
21
|
let _customSourceTransformer, _serverURL, _scriptURL;
|
|
22
22
|
|
|
@@ -105,6 +105,6 @@ function resolveAssetSource(source: any): ?ResolvedAssetSource {
|
|
|
105
105
|
return resolver.defaultAsset();
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
+
resolveAssetSource.pickScale = pickScale;
|
|
109
|
+
resolveAssetSource.setCustomSourceTransformer = setCustomSourceTransformer;
|
|
108
110
|
module.exports = resolveAssetSource;
|
|
109
|
-
module.exports.pickScale = pickScale;
|
|
110
|
-
module.exports.setCustomSourceTransformer = setCustomSourceTransformer;
|
|
@@ -10,12 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const
|
|
13
|
+
const View = require('../Components/View/View');
|
|
14
14
|
const StyleSheet = require('../StyleSheet/StyleSheet');
|
|
15
15
|
const Text = require('../Text/Text');
|
|
16
|
-
const View = require('../Components/View/View');
|
|
17
|
-
|
|
18
16
|
const resolveBoxStyle = require('./resolveBoxStyle');
|
|
17
|
+
const React = require('react');
|
|
19
18
|
|
|
20
19
|
const blank = {
|
|
21
20
|
top: 0,
|
|
@@ -49,7 +48,7 @@ class BoxInspector extends React.Component<$FlowFixMeProps> {
|
|
|
49
48
|
}
|
|
50
49
|
|
|
51
50
|
class BoxContainer extends React.Component<$FlowFixMeProps> {
|
|
52
|
-
render() {
|
|
51
|
+
render(): React.Node {
|
|
53
52
|
const box = this.props.box;
|
|
54
53
|
return (
|
|
55
54
|
<View style={styles.box}>
|