@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
|
@@ -12,13 +12,13 @@
|
|
|
12
12
|
|
|
13
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
import flattenStyle from '../../StyleSheet/flattenStyle';
|
|
16
|
+
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
17
|
+
import AnimatedNode from './AnimatedNode';
|
|
18
|
+
import AnimatedTransform from './AnimatedTransform';
|
|
19
|
+
import AnimatedWithChildren from './AnimatedWithChildren';
|
|
20
20
|
|
|
21
|
-
class AnimatedStyle extends AnimatedWithChildren {
|
|
21
|
+
export default class AnimatedStyle extends AnimatedWithChildren {
|
|
22
22
|
_style: Object;
|
|
23
23
|
|
|
24
24
|
constructor(style: any) {
|
|
@@ -34,23 +34,15 @@ class AnimatedStyle extends AnimatedWithChildren {
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
// Recursively get values for nested styles (like iOS's shadowOffset)
|
|
37
|
-
_walkStyleAndGetValues(style: any
|
|
37
|
+
_walkStyleAndGetValues(style: any): {[string]: any | {...}} {
|
|
38
38
|
const updatedStyle: {[string]: any | {...}} = {};
|
|
39
39
|
for (const key in style) {
|
|
40
40
|
const value = style[key];
|
|
41
41
|
if (value instanceof AnimatedNode) {
|
|
42
|
-
|
|
43
|
-
// driven nodes. On subsequent renders, we cannot use the value of natively driven nodes
|
|
44
|
-
// as they may not be up to date, so we use the initial value to ensure that values of
|
|
45
|
-
// native animated nodes do not impact rerenders.
|
|
46
|
-
if (!initialStyle || !value.__isNative) {
|
|
47
|
-
updatedStyle[key] = value.__getValue();
|
|
48
|
-
} else if (initialStyle.hasOwnProperty(key)) {
|
|
49
|
-
updatedStyle[key] = initialStyle[key];
|
|
50
|
-
}
|
|
42
|
+
updatedStyle[key] = value.__getValue();
|
|
51
43
|
} else if (value && !Array.isArray(value) && typeof value === 'object') {
|
|
52
44
|
// Support animating nested values (for example: shadowOffset.height)
|
|
53
|
-
updatedStyle[key] = this._walkStyleAndGetValues(value
|
|
45
|
+
updatedStyle[key] = this._walkStyleAndGetValues(value);
|
|
54
46
|
} else {
|
|
55
47
|
updatedStyle[key] = value;
|
|
56
48
|
}
|
|
@@ -58,12 +50,12 @@ class AnimatedStyle extends AnimatedWithChildren {
|
|
|
58
50
|
return updatedStyle;
|
|
59
51
|
}
|
|
60
52
|
|
|
61
|
-
__getValue(
|
|
62
|
-
return this._walkStyleAndGetValues(this._style
|
|
53
|
+
__getValue(): Object {
|
|
54
|
+
return this._walkStyleAndGetValues(this._style);
|
|
63
55
|
}
|
|
64
56
|
|
|
65
57
|
// Recursively get animated values for nested styles (like iOS's shadowOffset)
|
|
66
|
-
_walkStyleAndGetAnimatedValues(style: any) {
|
|
58
|
+
_walkStyleAndGetAnimatedValues(style: any): {[string]: any | {...}} {
|
|
67
59
|
const updatedStyle: {[string]: any | {...}} = {};
|
|
68
60
|
for (const key in style) {
|
|
69
61
|
const value = style[key];
|
|
@@ -128,5 +120,3 @@ class AnimatedStyle extends AnimatedWithChildren {
|
|
|
128
120
|
};
|
|
129
121
|
}
|
|
130
122
|
}
|
|
131
|
-
|
|
132
|
-
module.exports = AnimatedStyle;
|
|
@@ -10,15 +10,15 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const AnimatedInterpolation = require('./AnimatedInterpolation');
|
|
14
|
-
const AnimatedNode = require('./AnimatedNode');
|
|
15
|
-
const AnimatedValue = require('./AnimatedValue');
|
|
16
|
-
const AnimatedWithChildren = require('./AnimatedWithChildren');
|
|
17
|
-
|
|
18
|
-
import type {InterpolationConfigType} from './AnimatedInterpolation';
|
|
19
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
|
+
import type {InterpolationConfigType} from './AnimatedInterpolation';
|
|
15
|
+
import type AnimatedNode from './AnimatedNode';
|
|
20
16
|
|
|
21
|
-
|
|
17
|
+
import AnimatedInterpolation from './AnimatedInterpolation';
|
|
18
|
+
import AnimatedValue from './AnimatedValue';
|
|
19
|
+
import AnimatedWithChildren from './AnimatedWithChildren';
|
|
20
|
+
|
|
21
|
+
export default class AnimatedSubtraction extends AnimatedWithChildren {
|
|
22
22
|
_a: AnimatedNode;
|
|
23
23
|
_b: AnimatedNode;
|
|
24
24
|
|
|
@@ -62,5 +62,3 @@ class AnimatedSubtraction extends AnimatedWithChildren {
|
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
|
|
66
|
-
module.exports = AnimatedSubtraction;
|
|
@@ -10,17 +10,14 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const AnimatedValue = require('./AnimatedValue');
|
|
14
|
-
const AnimatedNode = require('./AnimatedNode');
|
|
15
|
-
const {
|
|
16
|
-
generateNewAnimationId,
|
|
17
|
-
shouldUseNativeDriver,
|
|
18
|
-
} = require('../NativeAnimatedHelper');
|
|
19
|
-
|
|
20
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
21
14
|
import type {EndCallback} from '../animations/Animation';
|
|
15
|
+
import type AnimatedValue from './AnimatedValue';
|
|
16
|
+
|
|
17
|
+
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
18
|
+
import AnimatedNode from './AnimatedNode';
|
|
22
19
|
|
|
23
|
-
class AnimatedTracking extends AnimatedNode {
|
|
20
|
+
export default class AnimatedTracking extends AnimatedNode {
|
|
24
21
|
_value: AnimatedValue;
|
|
25
22
|
_parent: AnimatedNode;
|
|
26
23
|
_callback: ?EndCallback;
|
|
@@ -40,7 +37,8 @@ class AnimatedTracking extends AnimatedNode {
|
|
|
40
37
|
this._parent = parent;
|
|
41
38
|
this._animationClass = animationClass;
|
|
42
39
|
this._animationConfig = animationConfig;
|
|
43
|
-
this._useNativeDriver =
|
|
40
|
+
this._useNativeDriver =
|
|
41
|
+
NativeAnimatedHelper.shouldUseNativeDriver(animationConfig);
|
|
44
42
|
this._callback = callback;
|
|
45
43
|
this.__attach();
|
|
46
44
|
}
|
|
@@ -93,12 +91,10 @@ class AnimatedTracking extends AnimatedNode {
|
|
|
93
91
|
const animationConfig = animation.__getNativeAnimationConfig();
|
|
94
92
|
return {
|
|
95
93
|
type: 'tracking',
|
|
96
|
-
animationId: generateNewAnimationId(),
|
|
94
|
+
animationId: NativeAnimatedHelper.generateNewAnimationId(),
|
|
97
95
|
animationConfig,
|
|
98
96
|
toValue: this._parent.__getNativeTag(),
|
|
99
97
|
value: this._value.__getNativeTag(),
|
|
100
98
|
};
|
|
101
99
|
}
|
|
102
100
|
}
|
|
103
|
-
|
|
104
|
-
module.exports = AnimatedTracking;
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
16
|
+
import AnimatedNode from './AnimatedNode';
|
|
17
|
+
import AnimatedWithChildren from './AnimatedWithChildren';
|
|
18
18
|
|
|
19
|
-
class AnimatedTransform extends AnimatedWithChildren {
|
|
19
|
+
export default class AnimatedTransform extends AnimatedWithChildren {
|
|
20
20
|
_transforms: $ReadOnlyArray<Object>;
|
|
21
21
|
|
|
22
22
|
constructor(transforms: $ReadOnlyArray<Object>) {
|
|
@@ -37,34 +37,11 @@ class AnimatedTransform extends AnimatedWithChildren {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
__getValue(): $ReadOnlyArray<Object> {
|
|
40
|
-
return this.
|
|
41
|
-
const result: {[string]: any} = {};
|
|
42
|
-
for (const key in transform) {
|
|
43
|
-
const value = transform[key];
|
|
44
|
-
if (value instanceof AnimatedNode) {
|
|
45
|
-
result[key] = value.__getValue();
|
|
46
|
-
} else {
|
|
47
|
-
result[key] = value;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return result;
|
|
51
|
-
});
|
|
40
|
+
return this._get(animatedNode => animatedNode.__getValue());
|
|
52
41
|
}
|
|
53
42
|
|
|
54
43
|
__getAnimatedValue(): $ReadOnlyArray<Object> {
|
|
55
|
-
return this.
|
|
56
|
-
const result: {[string]: any} = {};
|
|
57
|
-
for (const key in transform) {
|
|
58
|
-
const value = transform[key];
|
|
59
|
-
if (value instanceof AnimatedNode) {
|
|
60
|
-
result[key] = value.__getAnimatedValue();
|
|
61
|
-
} else {
|
|
62
|
-
// All transform components needed to recompose matrix
|
|
63
|
-
result[key] = value;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return result;
|
|
67
|
-
});
|
|
44
|
+
return this._get(animatedNode => animatedNode.__getAnimatedValue());
|
|
68
45
|
}
|
|
69
46
|
|
|
70
47
|
__attach(): void {
|
|
@@ -118,6 +95,36 @@ class AnimatedTransform extends AnimatedWithChildren {
|
|
|
118
95
|
transforms: transConfigs,
|
|
119
96
|
};
|
|
120
97
|
}
|
|
121
|
-
}
|
|
122
98
|
|
|
123
|
-
|
|
99
|
+
_get(getter: AnimatedNode => any): $ReadOnlyArray<Object> {
|
|
100
|
+
return this._transforms.map(transform => {
|
|
101
|
+
const result: {[string]: any} = {};
|
|
102
|
+
for (const key in transform) {
|
|
103
|
+
const value = transform[key];
|
|
104
|
+
if (value instanceof AnimatedNode) {
|
|
105
|
+
result[key] = getter(value);
|
|
106
|
+
} else if (Array.isArray(value)) {
|
|
107
|
+
result[key] = value.map(element => {
|
|
108
|
+
if (element instanceof AnimatedNode) {
|
|
109
|
+
return getter(element);
|
|
110
|
+
} else {
|
|
111
|
+
return element;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
} else if (typeof value === 'object') {
|
|
115
|
+
result[key] = {};
|
|
116
|
+
for (const [nestedKey, nestedValue] of Object.entries(value)) {
|
|
117
|
+
if (nestedValue instanceof AnimatedNode) {
|
|
118
|
+
result[key][nestedKey] = getter(nestedValue);
|
|
119
|
+
} else {
|
|
120
|
+
result[key][nestedKey] = nestedValue;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
} else {
|
|
124
|
+
result[key] = value;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return result;
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
@@ -10,16 +10,16 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const AnimatedInterpolation = require('./AnimatedInterpolation');
|
|
14
|
-
const AnimatedWithChildren = require('./AnimatedWithChildren');
|
|
15
|
-
const InteractionManager = require('../../Interaction/InteractionManager');
|
|
16
|
-
const NativeAnimatedHelper = require('../NativeAnimatedHelper');
|
|
17
|
-
|
|
18
|
-
import type AnimatedNode from './AnimatedNode';
|
|
19
13
|
import type Animation, {EndCallback} from '../animations/Animation';
|
|
20
14
|
import type {InterpolationConfigType} from './AnimatedInterpolation';
|
|
15
|
+
import type AnimatedNode from './AnimatedNode';
|
|
21
16
|
import type AnimatedTracking from './AnimatedTracking';
|
|
22
17
|
|
|
18
|
+
import InteractionManager from '../../Interaction/InteractionManager';
|
|
19
|
+
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
20
|
+
import AnimatedInterpolation from './AnimatedInterpolation';
|
|
21
|
+
import AnimatedWithChildren from './AnimatedWithChildren';
|
|
22
|
+
|
|
23
23
|
export type AnimatedValueConfig = $ReadOnly<{
|
|
24
24
|
useNativeDriver: boolean,
|
|
25
25
|
}>;
|
|
@@ -49,7 +49,7 @@ const NativeAnimatedAPI = NativeAnimatedHelper.API;
|
|
|
49
49
|
* transform which can receive values from multiple parents.
|
|
50
50
|
*/
|
|
51
51
|
function _flush(rootNode: AnimatedValue): void {
|
|
52
|
-
const animatedStyles = new Set();
|
|
52
|
+
const animatedStyles = new Set<AnimatedValue | AnimatedNode>();
|
|
53
53
|
function findAnimatedStyles(node: AnimatedValue | AnimatedNode) {
|
|
54
54
|
/* $FlowFixMe[prop-missing] (>=0.68.0 site=react_native_fb) This comment
|
|
55
55
|
* suppresses an error found when Flow v0.68 was deployed. To see the error
|
|
@@ -84,13 +84,14 @@ function _executeAsAnimatedBatch(id: string, operation: () => void) {
|
|
|
84
84
|
*
|
|
85
85
|
* See https://reactnative.dev/docs/animatedvalue
|
|
86
86
|
*/
|
|
87
|
-
class AnimatedValue extends AnimatedWithChildren {
|
|
87
|
+
export default class AnimatedValue extends AnimatedWithChildren {
|
|
88
88
|
_value: number;
|
|
89
89
|
_startingValue: number;
|
|
90
90
|
_offset: number;
|
|
91
91
|
_animation: ?Animation;
|
|
92
92
|
_tracking: ?AnimatedTracking;
|
|
93
93
|
|
|
94
|
+
// $FlowFixMe[missing-local-annot]
|
|
94
95
|
constructor(value: number, config?: ?AnimatedValueConfig) {
|
|
95
96
|
super();
|
|
96
97
|
if (typeof value !== 'number') {
|
|
@@ -303,5 +304,3 @@ class AnimatedValue extends AnimatedWithChildren {
|
|
|
303
304
|
};
|
|
304
305
|
}
|
|
305
306
|
}
|
|
306
|
-
|
|
307
|
-
module.exports = AnimatedValue;
|
|
@@ -12,10 +12,9 @@
|
|
|
12
12
|
|
|
13
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const invariant = require('invariant');
|
|
15
|
+
import AnimatedValue from './AnimatedValue';
|
|
16
|
+
import AnimatedWithChildren from './AnimatedWithChildren';
|
|
17
|
+
import invariant from 'invariant';
|
|
19
18
|
|
|
20
19
|
export type AnimatedValueXYConfig = $ReadOnly<{
|
|
21
20
|
useNativeDriver: boolean,
|
|
@@ -34,7 +33,7 @@ let _uniqueId = 1;
|
|
|
34
33
|
*
|
|
35
34
|
* See https://reactnative.dev/docs/animatedvaluexy
|
|
36
35
|
*/
|
|
37
|
-
class AnimatedValueXY extends AnimatedWithChildren {
|
|
36
|
+
export default class AnimatedValueXY extends AnimatedWithChildren {
|
|
38
37
|
x: AnimatedValue;
|
|
39
38
|
y: AnimatedValue;
|
|
40
39
|
_listeners: {
|
|
@@ -249,5 +248,3 @@ class AnimatedValueXY extends AnimatedWithChildren {
|
|
|
249
248
|
super.__makeNative(platformConfig);
|
|
250
249
|
}
|
|
251
250
|
}
|
|
252
|
-
|
|
253
|
-
module.exports = AnimatedValueXY;
|
|
@@ -11,10 +11,11 @@
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
|
-
const AnimatedNode = require('./AnimatedNode');
|
|
15
|
-
const NativeAnimatedHelper = require('../NativeAnimatedHelper');
|
|
16
14
|
|
|
17
|
-
|
|
15
|
+
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
16
|
+
import AnimatedNode from './AnimatedNode';
|
|
17
|
+
|
|
18
|
+
export default class AnimatedWithChildren extends AnimatedNode {
|
|
18
19
|
_children: Array<AnimatedNode>;
|
|
19
20
|
|
|
20
21
|
constructor() {
|
|
@@ -85,5 +86,3 @@ class AnimatedWithChildren extends AnimatedNode {
|
|
|
85
86
|
}
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
|
-
|
|
89
|
-
module.exports = AnimatedWithChildren;
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
import AnimatedProps from './nodes/AnimatedProps';
|
|
14
|
-
import {AnimatedEvent} from './AnimatedEvent';
|
|
15
13
|
import useRefEffect from '../Utilities/useRefEffect';
|
|
14
|
+
import {AnimatedEvent} from './AnimatedEvent';
|
|
16
15
|
import NativeAnimatedHelper from './NativeAnimatedHelper';
|
|
16
|
+
import AnimatedProps from './nodes/AnimatedProps';
|
|
17
17
|
import {
|
|
18
18
|
useCallback,
|
|
19
19
|
useEffect,
|
|
@@ -21,7 +21,6 @@ import {
|
|
|
21
21
|
useMemo,
|
|
22
22
|
useReducer,
|
|
23
23
|
useRef,
|
|
24
|
-
useState,
|
|
25
24
|
} from 'react';
|
|
26
25
|
|
|
27
26
|
type ReducedProps<TProps> = {
|
|
@@ -31,12 +30,10 @@ type ReducedProps<TProps> = {
|
|
|
31
30
|
};
|
|
32
31
|
type CallbackRef<T> = T => mixed;
|
|
33
32
|
|
|
34
|
-
let animatedComponentNextId = 1;
|
|
35
|
-
|
|
36
33
|
export default function useAnimatedProps<TProps: {...}, TInstance>(
|
|
37
34
|
props: TProps,
|
|
38
35
|
): [ReducedProps<TProps>, CallbackRef<TInstance | null>] {
|
|
39
|
-
const [, scheduleUpdate] = useReducer(count => count + 1, 0);
|
|
36
|
+
const [, scheduleUpdate] = useReducer<number, void>(count => count + 1, 0);
|
|
40
37
|
const onUpdateRef = useRef<?() => void>(null);
|
|
41
38
|
|
|
42
39
|
// TODO: Only invalidate `node` if animated props or `style` change. In the
|
|
@@ -63,7 +60,7 @@ export default function useAnimatedProps<TProps: {...}, TInstance>(
|
|
|
63
60
|
// But there is no way to transparently compose three separate callback refs,
|
|
64
61
|
// so we just combine them all into one for now.
|
|
65
62
|
const refEffect = useCallback(
|
|
66
|
-
instance => {
|
|
63
|
+
(instance: TInstance) => {
|
|
67
64
|
// NOTE: This may be called more often than necessary (e.g. when `props`
|
|
68
65
|
// changes), but `setNativeView` already optimizes for that.
|
|
69
66
|
node.setNativeView(instance);
|
|
@@ -141,16 +138,11 @@ function useAnimatedPropsLifecycle(node: AnimatedProps): void {
|
|
|
141
138
|
const prevNodeRef = useRef<?AnimatedProps>(null);
|
|
142
139
|
const isUnmountingRef = useRef<boolean>(false);
|
|
143
140
|
|
|
144
|
-
const [animatedComponentId] = useState(
|
|
145
|
-
() => `${animatedComponentNextId++}:animatedComponent`,
|
|
146
|
-
);
|
|
147
|
-
|
|
148
|
-
useLayoutEffect(() => {
|
|
149
|
-
NativeAnimatedHelper.API.setWaitingForIdentifier(animatedComponentId);
|
|
150
|
-
});
|
|
151
|
-
|
|
152
141
|
useEffect(() => {
|
|
153
|
-
|
|
142
|
+
// It is ok for multiple components to call `flushQueue` because it noops
|
|
143
|
+
// if the queue is empty. When multiple animated components are mounted at
|
|
144
|
+
// the same time. Only first component flushes the queue and the others will noop.
|
|
145
|
+
NativeAnimatedHelper.API.flushQueue();
|
|
154
146
|
});
|
|
155
147
|
|
|
156
148
|
useLayoutEffect(() => {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type {Animated} from './Animated';
|
|
11
|
+
|
|
12
|
+
export function useAnimatedValue(
|
|
13
|
+
initialValue: number,
|
|
14
|
+
config?: Animated.AnimatedConfig,
|
|
15
|
+
): Animated.Value;
|
|
@@ -0,0 +1,25 @@
|
|
|
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
|
+
import type {AnimatedValueConfig} from './nodes/AnimatedValue';
|
|
12
|
+
|
|
13
|
+
import Animated from './Animated';
|
|
14
|
+
import {useRef} from 'react';
|
|
15
|
+
|
|
16
|
+
export default function useAnimatedValue(
|
|
17
|
+
initialValue: number,
|
|
18
|
+
config?: ?AnimatedValueConfig,
|
|
19
|
+
): Animated.Value {
|
|
20
|
+
const ref = useRef<null | Animated.Value>(null);
|
|
21
|
+
if (ref.current == null) {
|
|
22
|
+
ref.current = new Animated.Value(initialValue, config);
|
|
23
|
+
}
|
|
24
|
+
return ref.current;
|
|
25
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @format
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import {NativeEventSubscription} from '../EventEmitter/RCTNativeAppEventEmitter';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* AppState can tell you if the app is in the foreground or background,
|
|
14
|
+
* and notify you when the state changes.
|
|
15
|
+
*
|
|
16
|
+
* AppState is frequently used to determine the intent and proper behavior
|
|
17
|
+
* when handling push notifications.
|
|
18
|
+
*
|
|
19
|
+
* App State Events
|
|
20
|
+
* change - This even is received when the app state has changed.
|
|
21
|
+
* focus [Android] - Received when the app gains focus (the user is interacting with the app).
|
|
22
|
+
* blur [Android] - Received when the user is not actively interacting with the app.
|
|
23
|
+
*
|
|
24
|
+
* App States
|
|
25
|
+
* active - The app is running in the foreground
|
|
26
|
+
* background - The app is running in the background. The user is either in another app or on the home screen
|
|
27
|
+
* inactive [iOS] - This is a transition state that currently never happens for typical React Native apps.
|
|
28
|
+
* unknown [iOS] - Initial value until the current app state is determined
|
|
29
|
+
* extension [iOS] - The app is running as an app extension
|
|
30
|
+
*
|
|
31
|
+
* For more information, see Apple's documentation: https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html
|
|
32
|
+
*
|
|
33
|
+
* @see https://reactnative.dev/docs/appstate#app-states
|
|
34
|
+
*/
|
|
35
|
+
export type AppStateEvent = 'change' | 'memoryWarning' | 'blur' | 'focus';
|
|
36
|
+
export type AppStateStatus =
|
|
37
|
+
| 'active'
|
|
38
|
+
| 'background'
|
|
39
|
+
| 'inactive'
|
|
40
|
+
| 'unknown'
|
|
41
|
+
| 'extension';
|
|
42
|
+
|
|
43
|
+
export interface AppStateStatic {
|
|
44
|
+
currentState: AppStateStatus;
|
|
45
|
+
isAvailable: boolean;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Add a handler to AppState changes by listening to the change event
|
|
49
|
+
* type and providing the handler
|
|
50
|
+
*/
|
|
51
|
+
addEventListener(
|
|
52
|
+
type: AppStateEvent,
|
|
53
|
+
listener: (state: AppStateStatus) => void,
|
|
54
|
+
): NativeEventSubscription;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export const AppState: AppStateStatic;
|
|
58
|
+
export type AppState = AppStateStatic;
|
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import {type EventSubscription} from '../vendor/emitter/EventEmitter';
|
|
12
11
|
import NativeEventEmitter from '../EventEmitter/NativeEventEmitter';
|
|
13
12
|
import logError from '../Utilities/logError';
|
|
14
|
-
import NativeAppState from './NativeAppState';
|
|
15
13
|
import Platform from '../Utilities/Platform';
|
|
14
|
+
import {type EventSubscription} from '../vendor/emitter/EventEmitter';
|
|
15
|
+
import NativeAppState from './NativeAppState';
|
|
16
16
|
|
|
17
17
|
export type AppStateValues = 'inactive' | 'background' | 'active';
|
|
18
18
|
|
|
@@ -76,17 +76,13 @@ class AppState {
|
|
|
76
76
|
// It's possible that the state will have changed here & listeners need to be notified
|
|
77
77
|
if (!eventUpdated && this.currentState !== appStateData.app_state) {
|
|
78
78
|
this.currentState = appStateData.app_state;
|
|
79
|
+
// $FlowFixMe[incompatible-call]
|
|
79
80
|
emitter.emit('appStateDidChange', appStateData);
|
|
80
81
|
}
|
|
81
82
|
}, logError);
|
|
82
83
|
}
|
|
83
84
|
}
|
|
84
85
|
|
|
85
|
-
// TODO: now that AppState is a subclass of NativeEventEmitter, we could
|
|
86
|
-
// deprecate `addEventListener` and `removeEventListener` and just use
|
|
87
|
-
// addListener` and `listener.remove()` directly. That will be a breaking
|
|
88
|
-
// change though, as both the method and event names are different
|
|
89
|
-
// (addListener events are currently required to be globally unique).
|
|
90
86
|
/**
|
|
91
87
|
* Add a handler to AppState changes by listening to the `change` event type
|
|
92
88
|
* and providing the handler.
|
|
@@ -241,7 +241,7 @@ class MessageQueue {
|
|
|
241
241
|
params: mixed[],
|
|
242
242
|
onFail: ?(...mixed[]) => void,
|
|
243
243
|
onSucc: ?(...mixed[]) => void,
|
|
244
|
-
) {
|
|
244
|
+
): void {
|
|
245
245
|
this.processCallbacks(moduleID, methodID, params, onFail, onSucc);
|
|
246
246
|
|
|
247
247
|
this._queue[MODULE_IDS].push(moduleID);
|
|
@@ -252,7 +252,7 @@ class MessageQueue {
|
|
|
252
252
|
// folly-convertible. As a special case, if a prop value is a
|
|
253
253
|
// function it is permitted here, and special-cased in the
|
|
254
254
|
// conversion.
|
|
255
|
-
const isValidArgument = (val: mixed) => {
|
|
255
|
+
const isValidArgument = (val: mixed): boolean => {
|
|
256
256
|
switch (typeof val) {
|
|
257
257
|
case 'undefined':
|
|
258
258
|
case 'boolean':
|
|
@@ -321,6 +321,7 @@ class MessageQueue {
|
|
|
321
321
|
}
|
|
322
322
|
Systrace.counterEvent('pending_js_to_native_queue', this._queue[0].length);
|
|
323
323
|
if (__DEV__ && this.__spy && isFinite(moduleID)) {
|
|
324
|
+
// $FlowFixMe[not-a-function]
|
|
324
325
|
this.__spy({
|
|
325
326
|
type: TO_NATIVE,
|
|
326
327
|
module: this._remoteModuleTable[moduleID],
|
|
@@ -380,7 +381,7 @@ class MessageQueue {
|
|
|
380
381
|
return (
|
|
381
382
|
// $FlowFixMe[cannot-resolve-name]
|
|
382
383
|
typeof DebuggerInternal !== 'undefined' &&
|
|
383
|
-
DebuggerInternal.shouldPauseOnThrow === true
|
|
384
|
+
DebuggerInternal.shouldPauseOnThrow === true
|
|
384
385
|
);
|
|
385
386
|
}
|
|
386
387
|
|
|
@@ -408,9 +409,12 @@ class MessageQueue {
|
|
|
408
409
|
const callableModuleNames = Object.keys(this._lazyCallableModules);
|
|
409
410
|
const n = callableModuleNames.length;
|
|
410
411
|
const callableModuleNameList = callableModuleNames.join(', ');
|
|
412
|
+
|
|
413
|
+
// TODO(T122225939): Remove after investigation: Why are we getting to this line in bridgeless mode?
|
|
414
|
+
const isBridgelessMode = global.RN$Bridgeless === true ? 'true' : 'false';
|
|
411
415
|
invariant(
|
|
412
416
|
false,
|
|
413
|
-
`Failed to call into JavaScript module method ${module}.${method}(). Module has not been registered as callable. Registered callable JavaScript modules (n = ${n}): ${callableModuleNameList}.
|
|
417
|
+
`Failed to call into JavaScript module method ${module}.${method}(). Module has not been registered as callable. Bridgeless Mode: ${isBridgelessMode}. Registered callable JavaScript modules (n = ${n}): ${callableModuleNameList}.
|
|
414
418
|
A frequent cause of the error is that the application entry file path is incorrect. This can also happen when the JS bundle is corrupt or there is an early initialization error when loading React Native.`,
|
|
415
419
|
);
|
|
416
420
|
}
|
|
@@ -424,7 +428,7 @@ class MessageQueue {
|
|
|
424
428
|
Systrace.endEvent();
|
|
425
429
|
}
|
|
426
430
|
|
|
427
|
-
__invokeCallback(cbID: number, args: mixed[]) {
|
|
431
|
+
__invokeCallback(cbID: number, args: mixed[]): void {
|
|
428
432
|
this._lastFlush = Date.now();
|
|
429
433
|
this._eventLoopStartTime = this._lastFlush;
|
|
430
434
|
|
|
@@ -0,0 +1,25 @@
|
|
|
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
|
+
* Interface for NativeModules which allows to augment NativeModules with type informations.
|
|
12
|
+
* See react-native-sensor-manager for example.
|
|
13
|
+
*/
|
|
14
|
+
interface NativeModulesStatic {
|
|
15
|
+
[name: string]: any;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Native Modules written in ObjectiveC/Swift/Java exposed via the RCTBridge
|
|
20
|
+
* Define lazy getters for each module. These will return the module if already loaded, or load it if not.
|
|
21
|
+
* See https://reactnative.dev/docs/native-modules-ios
|
|
22
|
+
* @example
|
|
23
|
+
* const MyModule = NativeModules.ModuleName
|
|
24
|
+
*/
|
|
25
|
+
export const NativeModules: NativeModulesStatic;
|
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
const BlobRegistry = require('./BlobRegistry');
|
|
11
|
+
import type {BlobCollector, BlobData, BlobOptions} from './BlobTypes';
|
|
13
12
|
|
|
14
|
-
import type {BlobData, BlobOptions, BlobCollector} from './BlobTypes';
|
|
15
13
|
import NativeBlobModule from './NativeBlobModule';
|
|
16
14
|
import invariant from 'invariant';
|
|
17
15
|
|
|
16
|
+
const Blob = require('./Blob');
|
|
17
|
+
const BlobRegistry = require('./BlobRegistry');
|
|
18
|
+
|
|
18
19
|
/*eslint-disable no-bitwise */
|
|
19
20
|
/*eslint-disable eqeqeq */
|
|
20
21
|
|
|
@@ -110,6 +111,7 @@ class BlobManager {
|
|
|
110
111
|
*/
|
|
111
112
|
static createFromOptions(options: BlobData): Blob {
|
|
112
113
|
BlobRegistry.register(options.blobId);
|
|
114
|
+
// $FlowFixMe[prop-missing]
|
|
113
115
|
return Object.assign(Object.create(Blob.prototype), {
|
|
114
116
|
data:
|
|
115
117
|
// Reuse the collector instance when creating from an existing blob.
|