@office-iss/react-native-win32 0.0.0-canary.284 → 0.0.0-canary.285
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.json +40 -1
- package/CHANGELOG.md +20 -8
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +38 -17
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
- package/Libraries/Alert/Alert.flow.js +62 -0
- package/Libraries/Alert/Alert.js +4 -27
- package/Libraries/Alert/Alert.win32.js +5 -27
- package/Libraries/Alert/NativeAlertManager.js +2 -2
- package/Libraries/Alert/RCTAlertManager.flow.js +20 -0
- package/Libraries/Animated/NativeAnimatedModule.js +2 -2
- package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
- package/Libraries/Animated/createAnimatedComponent.js +3 -3
- package/Libraries/Animated/useAnimatedProps.js +4 -294
- package/Libraries/AppState/NativeAppState.js +2 -2
- package/Libraries/Blob/FileReader.js +8 -174
- package/Libraries/Blob/FileReader_new.js +231 -0
- package/Libraries/Blob/FileReader_old.js +186 -0
- package/Libraries/Blob/NativeBlobModule.js +2 -2
- package/Libraries/Blob/NativeFileReaderModule.js +2 -2
- package/Libraries/Blob/URLSearchParams.js +1 -2
- package/Libraries/BugReporting/NativeBugReporting.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +2 -2
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -2
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
- package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +2 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +14 -18
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
- package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/InputAccessoryView.js +4 -2
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
- package/Libraries/Components/TextInput/TextInput.flow.js +98 -88
- package/Libraries/Components/TextInput/TextInput.js +103 -96
- package/Libraries/Components/TextInput/TextInput.win32.js +105 -98
- package/Libraries/Components/TextInput/TextInputState.js +3 -1
- package/Libraries/Components/TextInput/TextInputState.win32.js +3 -1
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
- package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
- package/Libraries/Components/Touchable/PooledClass.js +1 -1
- package/Libraries/Components/Touchable/Position.js +1 -1
- package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
- package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +1 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +2 -2
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -1
- package/Libraries/Components/View/View.js +1 -1
- package/Libraries/Components/View/View.win32.js +1 -1
- package/Libraries/Core/Devtools/getDevServer.js +1 -3
- package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
- package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +4 -2
- package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
- package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
- package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
- package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +5 -4
- package/Libraries/Core/ExceptionsManager.js +6 -4
- package/Libraries/Core/InitializeCore.js +5 -2
- package/Libraries/Core/NativeExceptionsManager.js +2 -2
- package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +2 -4
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/Timers/NativeTiming.js +2 -2
- package/Libraries/Core/Timers/immediateShim.js +2 -9
- package/Libraries/Core/setUpBatchedBridge.js +4 -3
- package/Libraries/Core/setUpDeveloperTools.js +2 -7
- package/Libraries/Core/setUpErrorHandling.js +1 -6
- package/Libraries/Core/setUpReactDevTools.js +22 -4
- package/Libraries/Core/setUpTimers.js +17 -17
- package/Libraries/Core/setUpXHR.js +1 -1
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
- package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
- package/Libraries/Image/AssetRegistry.js +3 -1
- package/Libraries/Image/AssetSourceResolver.js +1 -1
- package/Libraries/Image/Image.android.js +3 -1
- package/Libraries/Image/Image.ios.js +1 -1
- package/Libraries/Image/Image.win32.js +1 -1
- package/Libraries/Image/ImageBackground.js +1 -1
- package/Libraries/Image/ImageViewNativeComponent.js +4 -5
- package/Libraries/Image/NativeImageEditor.js +2 -2
- package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
- package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
- package/Libraries/Image/NativeImageLoaderWin32.js +2 -2
- package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
- package/Libraries/Image/NativeImageStoreIOS.js +2 -2
- package/Libraries/Image/RelativeImageStub.js +3 -1
- package/Libraries/Image/nativeImageSource.js +1 -1
- package/Libraries/Image/resolveAssetSource.js +4 -2
- package/Libraries/Interaction/FrameRateLogger.js +1 -1
- package/Libraries/Interaction/InteractionManager.js +8 -6
- package/Libraries/Interaction/InteractionManagerStub.js +1 -1
- package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
- package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
- package/Libraries/Interaction/PanResponder.js +2 -2
- package/Libraries/Interaction/TaskQueue.js +1 -1
- package/Libraries/Interaction/TouchHistoryMath.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Linking/Linking.d.ts +3 -3
- package/Libraries/Linking/Linking.js +10 -8
- package/Libraries/Linking/NativeIntentAndroid.js +2 -2
- package/Libraries/Linking/NativeLinkingManager.js +2 -2
- package/Libraries/Lists/FillRateHelper.js +1 -1
- package/Libraries/Lists/FlatList.js +1 -1
- package/Libraries/Lists/ViewabilityHelper.js +1 -1
- package/Libraries/Lists/VirtualizeUtils.js +1 -3
- package/Libraries/Lists/VirtualizedList.js +1 -1
- package/Libraries/Lists/VirtualizedListContext.js +1 -3
- package/Libraries/Lists/VirtualizedSectionList.js +1 -1
- package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +1 -1
- package/Libraries/Modal/Modal.js +3 -3
- package/Libraries/Modal/NativeModalManager.js +2 -2
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
- package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
- package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
- package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
- package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
- package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
- package/Libraries/Network/NativeNetworkingIOS.js +2 -2
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.win32.js +1 -1
- package/Libraries/Network/XMLHttpRequest.js +11 -685
- package/Libraries/Network/XMLHttpRequest_new.js +790 -0
- package/Libraries/Network/XMLHttpRequest_old.js +697 -0
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +2 -2
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/AppRegistry.js +1 -1
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
- package/Libraries/ReactNative/FabricUIManager.js +18 -8
- package/Libraries/ReactNative/I18nManager.js +1 -1
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
- package/Libraries/ReactNative/NativeI18nManager.js +2 -2
- package/Libraries/ReactNative/NativeUIManager.js +2 -2
- package/Libraries/ReactNative/PaperUIManager.js +2 -3
- package/Libraries/ReactNative/PaperUIManager.win32.js +2 -3
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -31
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +1 -1
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +9 -0
- package/Libraries/ReactNative/UIManager.d.ts +1 -0
- package/Libraries/ReactNative/UIManager.js +3 -3
- package/Libraries/ReactNative/UIManagerProperties.js +1 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +6 -5
- package/Libraries/ReactNative/requireNativeComponent.js +2 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +9 -4
- package/Libraries/Renderer/shims/ReactNativeTypes.js +5 -1
- package/Libraries/Settings/NativeSettingsManager.js +2 -2
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/Settings/Settings.js +1 -1
- package/Libraries/Settings/Settings.win32.js +1 -1
- package/Libraries/Share/NativeShareModule.js +2 -2
- package/Libraries/Share/Share.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js +2 -1
- package/Libraries/StyleSheet/StyleSheet.win32.js +2 -1
- package/Libraries/StyleSheet/processBoxShadow.js +4 -0
- package/Libraries/StyleSheet/processColorArray.js +1 -1
- package/Libraries/Text/Text.js +1 -1
- package/Libraries/Text/Text.win32.js +1 -1
- package/Libraries/Text/TextAncestor.js +1 -1
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
- package/Libraries/Types/CoreEventTypes.js +2 -0
- package/Libraries/Types/CoreEventTypes.win32.js +2 -0
- package/Libraries/Utilities/Appearance.js +0 -8
- package/Libraries/Utilities/NativeAppearance.js +2 -2
- package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
- package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
- package/Libraries/Utilities/NativePlatformConstantsWin.js +2 -2
- package/Libraries/Utilities/ReactNativeTestTools.js +3 -4
- package/Libraries/Utilities/dismissKeyboard.js +2 -1
- package/Libraries/Vibration/NativeVibration.js +2 -2
- package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
- package/Libraries/WebSocket/WebSocket.js +8 -285
- package/Libraries/WebSocket/WebSocketEvent.js +1 -1
- package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
- package/Libraries/WebSocket/WebSocket_new.js +325 -0
- package/Libraries/WebSocket/WebSocket_old.js +297 -0
- package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
- package/index.js +25 -26
- package/index.win32.js +25 -26
- package/jest/mockScrollView.js +1 -1
- package/jest/setup.js +91 -65
- package/overrides.json +30 -42
- package/package.json +16 -16
- package/src/private/animated/createAnimatedPropsHook.js +360 -0
- package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
- package/src/private/components/HScrollViewNativeComponents.js +1 -1
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
- package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
- package/src/private/debugging/ReactDevToolsSettingsManager.win32.js +1 -1
- package/src/private/devmenu/DevMenu.js +1 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +23 -30
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -7
- package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
- package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
- package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +8 -8
- package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +14 -12
- package/{Libraries/Inspector → src/private/inspector}/Inspector.js +18 -15
- package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +5 -5
- package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +12 -10
- package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +35 -20
- package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +5 -5
- package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +9 -8
- package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
- package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +1 -1
- package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +5 -3
- package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +3 -2
- package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -4
- package/src/private/setup/setUpDOM.js +7 -2
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
- package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
- package/src/private/webapis/dom/events/CustomEvent.js +40 -0
- package/src/private/webapis/dom/events/Event.js +236 -0
- package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
- package/src/private/webapis/dom/events/EventTarget.js +436 -0
- package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
- package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
- package/src/private/webapis/dom/nodes/ReactNativeDocument.js +120 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +48 -25
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +6 -5
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +25 -25
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +55 -77
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +43 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
- package/src/private/webapis/html/events/MessageEvent.js +63 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +12 -9
- package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +4 -6
- package/src/private/webapis/websockets/events/CloseEvent.js +54 -0
- package/src/private/webapis/xhr/events/ProgressEvent.js +54 -0
- package/types/index.d.ts +0 -5
- package/Libraries/Animated/AnimatedWeb.js +0 -44
- package/Libraries/Inspector/Inspector.win32.js +0 -212
- package/Libraries/Inspector/InspectorOverlay.win32.js +0 -68
- package/Libraries/JSInspector/InspectorAgent.js +0 -27
- package/Libraries/JSInspector/JSInspector.js +0 -33
- package/Libraries/JSInspector/NetworkAgent.js +0 -296
- package/Libraries/Utilities/DebugEnvironment.js +0 -16
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
- package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -76
- package/src/private/specs/modules/NativeCPUTime.js +0 -24
- package/src/private/specs/modules/NativeFantom.js +0 -43
- /package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfoWin32.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderWin32.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsWin.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeUIManager.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +0 -0
- /package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +0 -0
- /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
- /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
- /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
|
|
11
11
|
// flowlint unsafe-getters-setters:off
|
|
12
12
|
|
|
13
|
-
import type {ArrayLike} from '
|
|
13
|
+
import type {ArrayLike} from '../../utils/ArrayLikeUtils';
|
|
14
14
|
|
|
15
|
-
import {createValueIterator} from '
|
|
15
|
+
import {createValueIterator} from '../../utils/ArrayLikeUtils';
|
|
16
16
|
|
|
17
17
|
// IMPORTANT: The type definition for this module is defined in `HTMLCollection.js.flow`
|
|
18
18
|
// because Flow only supports indexers in classes in declaration files.
|
|
@@ -10,13 +10,13 @@
|
|
|
10
10
|
|
|
11
11
|
// flowlint unsafe-getters-setters:off
|
|
12
12
|
|
|
13
|
-
import type {ArrayLike} from '
|
|
13
|
+
import type {ArrayLike} from '../../utils/ArrayLikeUtils';
|
|
14
14
|
|
|
15
15
|
import {
|
|
16
16
|
createEntriesIterator,
|
|
17
17
|
createKeyIterator,
|
|
18
18
|
createValueIterator,
|
|
19
|
-
} from '
|
|
19
|
+
} from '../../utils/ArrayLikeUtils';
|
|
20
20
|
|
|
21
21
|
// IMPORTANT: The Flow type definition for this module is defined in `NodeList.js.flow`
|
|
22
22
|
// because Flow only supports indexers in classes in declaration files.
|
|
@@ -10,10 +10,10 @@
|
|
|
10
10
|
|
|
11
11
|
// flowlint unsafe-getters-setters:off
|
|
12
12
|
|
|
13
|
-
import type
|
|
14
|
-
import type
|
|
13
|
+
import type {ArrayLike} from '../utils/ArrayLikeUtils';
|
|
14
|
+
import type DOMRectReadOnly from './DOMRectReadOnly';
|
|
15
15
|
|
|
16
|
-
import {createValueIterator} from '
|
|
16
|
+
import {createValueIterator} from '../utils/ArrayLikeUtils';
|
|
17
17
|
|
|
18
18
|
// IMPORTANT: The Flow type definition for this module is defined in `DOMRectList.js.flow`
|
|
19
19
|
// because Flow only supports indexers in classes in declaration files.
|
|
@@ -0,0 +1,63 @@
|
|
|
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
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* This module implements the `MessageEvent` interface from the HTML spec.
|
|
13
|
+
* See https://html.spec.whatwg.org/multipage/comms.html#messageevent.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
// flowlint unsafe-getters-setters:off
|
|
17
|
+
|
|
18
|
+
import type {EventInit} from '../../dom/events/Event';
|
|
19
|
+
|
|
20
|
+
import Event from '../../dom/events/Event';
|
|
21
|
+
|
|
22
|
+
export type MessageEventInit = $ReadOnly<{
|
|
23
|
+
...EventInit,
|
|
24
|
+
data?: mixed,
|
|
25
|
+
origin?: string,
|
|
26
|
+
lastEventId?: string,
|
|
27
|
+
// Unsupported
|
|
28
|
+
// source?: MessageEventSource,
|
|
29
|
+
// Unsupported
|
|
30
|
+
// ports?: Array<MessagePort>,
|
|
31
|
+
}>;
|
|
32
|
+
|
|
33
|
+
export default class MessageEvent extends Event {
|
|
34
|
+
_data: mixed;
|
|
35
|
+
_origin: string;
|
|
36
|
+
_lastEventId: string;
|
|
37
|
+
|
|
38
|
+
constructor(type: string, options?: ?MessageEventInit) {
|
|
39
|
+
const {
|
|
40
|
+
data,
|
|
41
|
+
origin = '',
|
|
42
|
+
lastEventId = '',
|
|
43
|
+
...eventOptions
|
|
44
|
+
} = options ?? {};
|
|
45
|
+
super(type, eventOptions);
|
|
46
|
+
|
|
47
|
+
this._data = data;
|
|
48
|
+
this._origin = String(origin);
|
|
49
|
+
this._lastEventId = String(lastEventId);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
get data(): mixed {
|
|
53
|
+
return this._data;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
get origin(): string {
|
|
57
|
+
return this._origin;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
get lastEventId(): string {
|
|
61
|
+
return this._lastEventId;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import type ReactNativeElement from '../dom/nodes/ReactNativeElement';
|
|
14
14
|
import type {NativeIntersectionObserverEntry} from './specs/NativeIntersectionObserver';
|
|
15
15
|
|
|
16
|
-
import DOMRectReadOnly from '../
|
|
16
|
+
import DOMRectReadOnly from '../geometry/DOMRectReadOnly';
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* The [`IntersectionObserverEntry`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry)
|
|
@@ -26,7 +26,10 @@ import type IntersectionObserverEntry from '../IntersectionObserverEntry';
|
|
|
26
26
|
|
|
27
27
|
import * as Systrace from '../../../../../Libraries/Performance/Systrace';
|
|
28
28
|
import warnOnce from '../../../../../Libraries/Utilities/warnOnce';
|
|
29
|
-
import {
|
|
29
|
+
import {
|
|
30
|
+
getInstanceHandle,
|
|
31
|
+
getNativeNodeReference,
|
|
32
|
+
} from '../../dom/nodes/internals/NodeInternals';
|
|
30
33
|
import {createIntersectionObserverEntry} from '../IntersectionObserverEntry';
|
|
31
34
|
import NativeIntersectionObserver from '../specs/NativeIntersectionObserver';
|
|
32
35
|
|
|
@@ -68,7 +71,7 @@ function setTargetForInstanceHandle(
|
|
|
68
71
|
// also needs to be kept here because React removes the link when unmounting.
|
|
69
72
|
const targetToShadowNodeMap: WeakMap<
|
|
70
73
|
ReactNativeElement,
|
|
71
|
-
ReturnType<typeof
|
|
74
|
+
ReturnType<typeof getNativeNodeReference>,
|
|
72
75
|
> = new WeakMap();
|
|
73
76
|
|
|
74
77
|
/**
|
|
@@ -132,8 +135,8 @@ export function observe({
|
|
|
132
135
|
return false;
|
|
133
136
|
}
|
|
134
137
|
|
|
135
|
-
const
|
|
136
|
-
if (
|
|
138
|
+
const targetNativeNodeReference = getNativeNodeReference(target);
|
|
139
|
+
if (targetNativeNodeReference == null) {
|
|
137
140
|
// The target is disconnected. We can't observe it anymore.
|
|
138
141
|
return false;
|
|
139
142
|
}
|
|
@@ -151,7 +154,7 @@ export function observe({
|
|
|
151
154
|
setTargetForInstanceHandle(instanceHandle, target);
|
|
152
155
|
|
|
153
156
|
// Same for the mapping between the target and its shadow node.
|
|
154
|
-
targetToShadowNodeMap.set(target,
|
|
157
|
+
targetToShadowNodeMap.set(target, targetNativeNodeReference);
|
|
155
158
|
|
|
156
159
|
if (!isConnected) {
|
|
157
160
|
NativeIntersectionObserver.connect(notifyIntersectionObservers);
|
|
@@ -160,7 +163,7 @@ export function observe({
|
|
|
160
163
|
|
|
161
164
|
NativeIntersectionObserver.observe({
|
|
162
165
|
intersectionObserverId,
|
|
163
|
-
targetShadowNode,
|
|
166
|
+
targetShadowNode: targetNativeNodeReference,
|
|
164
167
|
thresholds: registeredObserver.observer.thresholds,
|
|
165
168
|
rootThresholds: registeredObserver.observer.rnRootThresholds,
|
|
166
169
|
});
|
|
@@ -187,8 +190,8 @@ export function unobserve(
|
|
|
187
190
|
return;
|
|
188
191
|
}
|
|
189
192
|
|
|
190
|
-
const
|
|
191
|
-
if (
|
|
193
|
+
const targetNativeNodeReference = targetToShadowNodeMap.get(target);
|
|
194
|
+
if (targetNativeNodeReference == null) {
|
|
192
195
|
console.error(
|
|
193
196
|
'IntersectionObserverManager: could not find registration data for target',
|
|
194
197
|
);
|
|
@@ -197,7 +200,7 @@ export function unobserve(
|
|
|
197
200
|
|
|
198
201
|
NativeIntersectionObserver.unobserve(
|
|
199
202
|
intersectionObserverId,
|
|
200
|
-
|
|
203
|
+
targetNativeNodeReference,
|
|
201
204
|
);
|
|
202
205
|
}
|
|
203
206
|
|
|
@@ -25,11 +25,9 @@ import type MutationObserver, {
|
|
|
25
25
|
import type MutationRecord from '../MutationRecord';
|
|
26
26
|
|
|
27
27
|
import * as Systrace from '../../../../../Libraries/Performance/Systrace';
|
|
28
|
+
import {getPublicInstanceFromInternalInstanceHandle} from '../../../../../Libraries/ReactNative/RendererProxy';
|
|
28
29
|
import warnOnce from '../../../../../Libraries/Utilities/warnOnce';
|
|
29
|
-
import {
|
|
30
|
-
getPublicInstanceFromInternalInstanceHandle,
|
|
31
|
-
getShadowNode,
|
|
32
|
-
} from '../../dom/nodes/ReadOnlyNode';
|
|
30
|
+
import {getNativeNodeReference} from '../../dom/nodes/internals/NodeInternals';
|
|
33
31
|
import {createMutationRecord} from '../MutationRecord';
|
|
34
32
|
import NativeMutationObserver from '../specs/NativeMutationObserver';
|
|
35
33
|
|
|
@@ -47,7 +45,7 @@ const registeredMutationObservers: Map<
|
|
|
47
45
|
// needs to be kept here because React removes the link when unmounting.
|
|
48
46
|
const targetToShadowNodeMap: WeakMap<
|
|
49
47
|
ReactNativeElement,
|
|
50
|
-
ReturnType<typeof
|
|
48
|
+
ReturnType<typeof getNativeNodeReference>,
|
|
51
49
|
> = new WeakMap();
|
|
52
50
|
|
|
53
51
|
/**
|
|
@@ -107,7 +105,7 @@ export function observe({
|
|
|
107
105
|
return false;
|
|
108
106
|
}
|
|
109
107
|
|
|
110
|
-
const targetShadowNode =
|
|
108
|
+
const targetShadowNode = getNativeNodeReference(target);
|
|
111
109
|
if (targetShadowNode == null) {
|
|
112
110
|
// The target is disconnected. We can't observe it anymore.
|
|
113
111
|
return false;
|
|
@@ -0,0 +1,54 @@
|
|
|
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
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* This module implements the `CloseEvent` interface from `WebSocket`.
|
|
13
|
+
* See https://websockets.spec.whatwg.org/#the-closeevent-interface.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
// flowlint unsafe-getters-setters:off
|
|
17
|
+
|
|
18
|
+
import type {EventInit} from '../../dom/events/Event';
|
|
19
|
+
|
|
20
|
+
import Event from '../../dom/events/Event';
|
|
21
|
+
|
|
22
|
+
export type CloseEventInit = $ReadOnly<{
|
|
23
|
+
...EventInit,
|
|
24
|
+
wasClean?: boolean,
|
|
25
|
+
code?: number,
|
|
26
|
+
reason?: string,
|
|
27
|
+
}>;
|
|
28
|
+
|
|
29
|
+
export default class CloseEvent extends Event {
|
|
30
|
+
_wasClean: boolean;
|
|
31
|
+
_code: number;
|
|
32
|
+
_reason: string;
|
|
33
|
+
|
|
34
|
+
constructor(type: string, options?: ?CloseEventInit) {
|
|
35
|
+
const {wasClean, code, reason, ...eventOptions} = options ?? {};
|
|
36
|
+
super(type, eventOptions);
|
|
37
|
+
|
|
38
|
+
this._wasClean = Boolean(wasClean);
|
|
39
|
+
this._code = Number(code) || 0;
|
|
40
|
+
this._reason = reason != null ? String(reason) : '';
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
get wasClean(): boolean {
|
|
44
|
+
return this._wasClean;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
get code(): number {
|
|
48
|
+
return this._code;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
get reason(): string {
|
|
52
|
+
return this._reason;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
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
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* This module implements the `ProgressEvent` interface from `XMLHttpRequest`.
|
|
13
|
+
* See https://xhr.spec.whatwg.org/#interface-progressevent.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
// flowlint unsafe-getters-setters:off
|
|
17
|
+
|
|
18
|
+
import type {EventInit} from '../../dom/events/Event';
|
|
19
|
+
|
|
20
|
+
import Event from '../../dom/events/Event';
|
|
21
|
+
|
|
22
|
+
export type ProgressEventInit = $ReadOnly<{
|
|
23
|
+
...EventInit,
|
|
24
|
+
lengthComputable: boolean,
|
|
25
|
+
loaded: number,
|
|
26
|
+
total: number,
|
|
27
|
+
}>;
|
|
28
|
+
|
|
29
|
+
export default class ProgressEvent extends Event {
|
|
30
|
+
_lengthComputable: boolean;
|
|
31
|
+
_loaded: number;
|
|
32
|
+
_total: number;
|
|
33
|
+
|
|
34
|
+
constructor(type: string, options?: ?ProgressEventInit) {
|
|
35
|
+
const {lengthComputable, loaded, total, ...eventOptions} = options ?? {};
|
|
36
|
+
super(type, eventOptions);
|
|
37
|
+
|
|
38
|
+
this._lengthComputable = Boolean(lengthComputable);
|
|
39
|
+
this._loaded = Number(loaded) || 0;
|
|
40
|
+
this._total = Number(total) || 0;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
get lengthComputable(): boolean {
|
|
44
|
+
return this._lengthComputable;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
get loaded(): number {
|
|
48
|
+
return this._loaded;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
get total(): number {
|
|
52
|
+
return this._total;
|
|
53
|
+
}
|
|
54
|
+
}
|
package/types/index.d.ts
CHANGED
|
@@ -148,7 +148,6 @@ export * from '../Libraries/Utilities/Dimensions';
|
|
|
148
148
|
export * from '../Libraries/Utilities/PixelRatio';
|
|
149
149
|
export * from '../Libraries/Utilities/Platform';
|
|
150
150
|
export * from '../Libraries/Vibration/Vibration';
|
|
151
|
-
export * from '../Libraries/YellowBox/YellowBoxDeprecated';
|
|
152
151
|
export * from '../Libraries/vendor/core/ErrorUtils';
|
|
153
152
|
export {
|
|
154
153
|
EmitterSubscription,
|
|
@@ -184,10 +183,6 @@ declare global {
|
|
|
184
183
|
groupCollapsed(label?: string): void;
|
|
185
184
|
groupEnd(): void;
|
|
186
185
|
group(label?: string): void;
|
|
187
|
-
/**
|
|
188
|
-
* @deprecated Use LogBox.ignoreLogs(patterns) instead
|
|
189
|
-
*/
|
|
190
|
-
ignoredYellowBox: string[];
|
|
191
186
|
}
|
|
192
187
|
|
|
193
188
|
var console: Console;
|
|
@@ -1,44 +0,0 @@
|
|
|
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
|
-
* @flow strict-local
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
'use strict';
|
|
12
|
-
|
|
13
|
-
import type {AnimatedComponentType} from './createAnimatedComponent';
|
|
14
|
-
|
|
15
|
-
import AnimatedImplementation from './AnimatedImplementation';
|
|
16
|
-
import React from 'react';
|
|
17
|
-
|
|
18
|
-
export default {
|
|
19
|
-
...AnimatedImplementation,
|
|
20
|
-
div: AnimatedImplementation.createAnimatedComponent<
|
|
21
|
-
React.PropsOf<'div'>,
|
|
22
|
-
mixed,
|
|
23
|
-
>(
|
|
24
|
-
/* $FlowFixMe[incompatible-call] createAnimatedComponent expects to receive
|
|
25
|
-
* types. Plain intrinsic components can't be typed like this */
|
|
26
|
-
'div',
|
|
27
|
-
) as AnimatedComponentType<React.PropsOf<'div'>>,
|
|
28
|
-
span: AnimatedImplementation.createAnimatedComponent<
|
|
29
|
-
React.PropsOf<'span'>,
|
|
30
|
-
mixed,
|
|
31
|
-
>(
|
|
32
|
-
/* $FlowFixMe[incompatible-call] createAnimatedComponent expects to receive
|
|
33
|
-
* types. Plain intrinsic components can't be typed like this */
|
|
34
|
-
'span',
|
|
35
|
-
) as AnimatedComponentType<React.PropsOf<'span'>>,
|
|
36
|
-
img: AnimatedImplementation.createAnimatedComponent<
|
|
37
|
-
React.PropsOf<'img'>,
|
|
38
|
-
mixed,
|
|
39
|
-
>(
|
|
40
|
-
/* $FlowFixMe[incompatible-call] createAnimatedComponent expects to receive
|
|
41
|
-
* types. Plain intrinsic components can't be typed like this */
|
|
42
|
-
'img',
|
|
43
|
-
) as AnimatedComponentType<React.PropsOf<'img'>>,
|
|
44
|
-
};
|
|
@@ -1,212 +0,0 @@
|
|
|
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
|
-
* @flow
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
'use strict';
|
|
12
|
-
|
|
13
|
-
import type {InspectedViewRef} from '../ReactNative/AppContainer-dev';
|
|
14
|
-
import type {
|
|
15
|
-
InspectorData,
|
|
16
|
-
TouchedViewDataAtPoint,
|
|
17
|
-
} from '../Renderer/shims/ReactNativeTypes';
|
|
18
|
-
import type {ViewStyleProp} from '../StyleSheet/StyleSheet';
|
|
19
|
-
import type {ReactDevToolsAgent} from '../Types/ReactDevToolsTypes';
|
|
20
|
-
|
|
21
|
-
import SafeAreaView from '../../src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE';
|
|
22
|
-
import React from 'react';
|
|
23
|
-
|
|
24
|
-
const PressabilityDebug = require('../Pressability/PressabilityDebug');
|
|
25
|
-
const ReactNative = require('../Renderer/shims/ReactNative').default;
|
|
26
|
-
const {findNodeHandle} = require('../ReactNative/RendererProxy');
|
|
27
|
-
const StyleSheet = require('../StyleSheet/StyleSheet');
|
|
28
|
-
const Platform = require('../Utilities/Platform');
|
|
29
|
-
const View = require('../Components/View/View');
|
|
30
|
-
const getInspectorDataForViewAtPoint = require('./getInspectorDataForViewAtPoint');
|
|
31
|
-
const InspectorOverlay = require('./InspectorOverlay');
|
|
32
|
-
const InspectorPanel = require('./InspectorPanel');
|
|
33
|
-
|
|
34
|
-
const {useState} = React;
|
|
35
|
-
|
|
36
|
-
type PanelPosition = 'top' | 'bottom';
|
|
37
|
-
type SelectedTab =
|
|
38
|
-
| 'elements-inspector'
|
|
39
|
-
| 'network-profiling'
|
|
40
|
-
| 'performance-profiling';
|
|
41
|
-
|
|
42
|
-
export type InspectedElementFrame = TouchedViewDataAtPoint['frame'];
|
|
43
|
-
export type InspectedElement = $ReadOnly<{
|
|
44
|
-
frame: InspectedElementFrame,
|
|
45
|
-
style?: ViewStyleProp,
|
|
46
|
-
}>;
|
|
47
|
-
export type ElementsHierarchy = InspectorData['hierarchy'];
|
|
48
|
-
|
|
49
|
-
type Props = {
|
|
50
|
-
inspectedViewRef: InspectedViewRef,
|
|
51
|
-
onRequestRerenderApp: () => void,
|
|
52
|
-
reactDevToolsAgent?: ReactDevToolsAgent,
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const UIManager = require('../ReactNative/UIManager'); // [Win32]
|
|
56
|
-
|
|
57
|
-
function Inspector({
|
|
58
|
-
inspectedViewRef,
|
|
59
|
-
onRequestRerenderApp,
|
|
60
|
-
reactDevToolsAgent,
|
|
61
|
-
}: Props): React.Node {
|
|
62
|
-
const [selectedTab, setSelectedTab] =
|
|
63
|
-
useState<?SelectedTab>('elements-inspector');
|
|
64
|
-
|
|
65
|
-
const [panelPosition, setPanelPosition] = useState<PanelPosition>('bottom');
|
|
66
|
-
const [inspectedElement, setInspectedElement] =
|
|
67
|
-
useState<?InspectedElement>(null);
|
|
68
|
-
const [selectionIndex, setSelectionIndex] = useState<?number>(null);
|
|
69
|
-
const [elementsHierarchy, setElementsHierarchy] =
|
|
70
|
-
useState<?ElementsHierarchy>(null);
|
|
71
|
-
|
|
72
|
-
const setSelection = (i: number) => {
|
|
73
|
-
const hierarchyItem = elementsHierarchy?.[i];
|
|
74
|
-
if (hierarchyItem == null) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// We pass in findNodeHandle as the method is injected
|
|
79
|
-
const {measure, props} = hierarchyItem.getInspectorData(findNodeHandle);
|
|
80
|
-
|
|
81
|
-
measure((x, y, width, height, left, top) => {
|
|
82
|
-
// $FlowFixMe[incompatible-call] `props` from InspectorData are defined as <string, string> dictionary, which is incompatible with ViewStyleProp
|
|
83
|
-
setInspectedElement({
|
|
84
|
-
frame: {left, top, width, height},
|
|
85
|
-
style: props.style,
|
|
86
|
-
});
|
|
87
|
-
|
|
88
|
-
setSelectionIndex(i);
|
|
89
|
-
});
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
const onTouchPoint = (locationX: number, locationY: number) => {
|
|
93
|
-
const setTouchedViewData = (viewData: TouchedViewDataAtPoint) => {
|
|
94
|
-
const {
|
|
95
|
-
hierarchy,
|
|
96
|
-
props,
|
|
97
|
-
selectedIndex,
|
|
98
|
-
frame,
|
|
99
|
-
pointerY,
|
|
100
|
-
touchedViewTag,
|
|
101
|
-
closestInstance,
|
|
102
|
-
} = viewData;
|
|
103
|
-
|
|
104
|
-
// Sync the touched view with React DevTools.
|
|
105
|
-
// Note: This is Paper only. To support Fabric,
|
|
106
|
-
// DevTools needs to be updated to not rely on view tags.
|
|
107
|
-
if (reactDevToolsAgent) {
|
|
108
|
-
reactDevToolsAgent.selectNode(findNodeHandle(touchedViewTag));
|
|
109
|
-
if (closestInstance != null) {
|
|
110
|
-
reactDevToolsAgent.selectNode(closestInstance);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
// [Win32 Avoid Dimensions call
|
|
115
|
-
const node = ReactNative.findNodeHandle(inspectedViewRef);
|
|
116
|
-
// $FlowFixMe[incompatible-call]
|
|
117
|
-
UIManager.measure(node, (x, y, width, height, left, top) => {
|
|
118
|
-
setPanelPosition(pointerY > height / 2 ? 'top' : 'bottom');
|
|
119
|
-
setSelectionIndex(selectedIndex);
|
|
120
|
-
setElementsHierarchy(hierarchy);
|
|
121
|
-
// $FlowFixMe[incompatible-call] `props` from InspectorData are defined as <string, string> dictionary, which is incompatible with ViewStyleProp
|
|
122
|
-
setInspectedElement({
|
|
123
|
-
frame,
|
|
124
|
-
style: props.style,
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
// ]Win32
|
|
130
|
-
getInspectorDataForViewAtPoint(
|
|
131
|
-
inspectedViewRef.current,
|
|
132
|
-
locationX,
|
|
133
|
-
locationY,
|
|
134
|
-
viewData => {
|
|
135
|
-
setTouchedViewData(viewData);
|
|
136
|
-
return false;
|
|
137
|
-
},
|
|
138
|
-
);
|
|
139
|
-
};
|
|
140
|
-
|
|
141
|
-
const setInspecting = (enabled: boolean) => {
|
|
142
|
-
setSelectedTab(enabled ? 'elements-inspector' : null);
|
|
143
|
-
setInspectedElement(null);
|
|
144
|
-
};
|
|
145
|
-
|
|
146
|
-
const setPerfing = (enabled: boolean) => {
|
|
147
|
-
setSelectedTab(enabled ? 'performance-profiling' : null);
|
|
148
|
-
setInspectedElement(null);
|
|
149
|
-
};
|
|
150
|
-
|
|
151
|
-
const setNetworking = (enabled: boolean) => {
|
|
152
|
-
setSelectedTab(enabled ? 'network-profiling' : null);
|
|
153
|
-
setInspectedElement(null);
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
-
const setTouchTargeting = (val: boolean) => {
|
|
157
|
-
PressabilityDebug.setEnabled(val);
|
|
158
|
-
onRequestRerenderApp();
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
const panelContainerStyle =
|
|
162
|
-
panelPosition === 'bottom'
|
|
163
|
-
? {bottom: 0}
|
|
164
|
-
: Platform.select({ios: {top: 0}, default: {top: 0}});
|
|
165
|
-
|
|
166
|
-
return (
|
|
167
|
-
<View style={styles.container} pointerEvents="box-none">
|
|
168
|
-
{selectedTab === 'elements-inspector' && (
|
|
169
|
-
<InspectorOverlay
|
|
170
|
-
inspected={inspectedElement}
|
|
171
|
-
onTouchPoint={onTouchPoint}
|
|
172
|
-
/>
|
|
173
|
-
)}
|
|
174
|
-
|
|
175
|
-
<SafeAreaView style={[styles.panelContainer, panelContainerStyle]}>
|
|
176
|
-
<InspectorPanel
|
|
177
|
-
devtoolsIsOpen={!!reactDevToolsAgent}
|
|
178
|
-
inspecting={selectedTab === 'elements-inspector'}
|
|
179
|
-
perfing={selectedTab === 'performance-profiling'}
|
|
180
|
-
setPerfing={setPerfing}
|
|
181
|
-
setInspecting={setInspecting}
|
|
182
|
-
inspected={inspectedElement}
|
|
183
|
-
hierarchy={elementsHierarchy}
|
|
184
|
-
selection={selectionIndex}
|
|
185
|
-
setSelection={setSelection}
|
|
186
|
-
touchTargeting={PressabilityDebug.isEnabled()}
|
|
187
|
-
setTouchTargeting={setTouchTargeting}
|
|
188
|
-
networking={selectedTab === 'network-profiling'}
|
|
189
|
-
setNetworking={setNetworking}
|
|
190
|
-
/>
|
|
191
|
-
</SafeAreaView>
|
|
192
|
-
</View>
|
|
193
|
-
);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
const styles = StyleSheet.create({
|
|
197
|
-
container: {
|
|
198
|
-
position: 'absolute',
|
|
199
|
-
backgroundColor: 'transparent',
|
|
200
|
-
top: 0,
|
|
201
|
-
left: 0,
|
|
202
|
-
right: 0,
|
|
203
|
-
bottom: 0,
|
|
204
|
-
},
|
|
205
|
-
panelContainer: {
|
|
206
|
-
position: 'absolute',
|
|
207
|
-
left: 0,
|
|
208
|
-
right: 0,
|
|
209
|
-
},
|
|
210
|
-
});
|
|
211
|
-
|
|
212
|
-
module.exports = Inspector;
|
|
@@ -1,68 +0,0 @@
|
|
|
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
|
-
* @flow
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
'use strict';
|
|
12
|
-
|
|
13
|
-
import type {PressEvent} from '../Types/CoreEventTypes';
|
|
14
|
-
import type {InspectedElement} from './Inspector';
|
|
15
|
-
|
|
16
|
-
import React from 'react';
|
|
17
|
-
// import Dimensions from '../Utilities/Dimensions'; [Win32]
|
|
18
|
-
|
|
19
|
-
const View = require('../Components/View/View');
|
|
20
|
-
const StyleSheet = require('../StyleSheet/StyleSheet');
|
|
21
|
-
const ElementBox = require('./ElementBox');
|
|
22
|
-
|
|
23
|
-
type Props = $ReadOnly<{
|
|
24
|
-
inspected?: ?InspectedElement,
|
|
25
|
-
onTouchPoint: (locationX: number, locationY: number) => void,
|
|
26
|
-
}>;
|
|
27
|
-
|
|
28
|
-
function InspectorOverlay({inspected, onTouchPoint}: Props): React.Node {
|
|
29
|
-
const findViewForTouchEvent = (e: PressEvent) => {
|
|
30
|
-
const {locationX, locationY} = e.nativeEvent.touches[0];
|
|
31
|
-
|
|
32
|
-
onTouchPoint(locationX, locationY);
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const handleStartShouldSetResponder = (e: PressEvent): boolean => {
|
|
36
|
-
findViewForTouchEvent(e);
|
|
37
|
-
return true;
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
let content = null;
|
|
41
|
-
if (inspected) {
|
|
42
|
-
content = <ElementBox frame={inspected.frame} style={inspected.style} />;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// [Win32, height replaced with 100% to avoid Dimensions call]
|
|
46
|
-
return (
|
|
47
|
-
<View
|
|
48
|
-
onStartShouldSetResponder={handleStartShouldSetResponder}
|
|
49
|
-
onResponderMove={findViewForTouchEvent}
|
|
50
|
-
nativeID="inspectorOverlay" /* TODO: T68258846. */
|
|
51
|
-
style={[styles.inspector, {height: '100%'}]}>
|
|
52
|
-
{content}
|
|
53
|
-
</View>
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
const styles = StyleSheet.create({
|
|
58
|
-
inspector: {
|
|
59
|
-
backgroundColor: 'transparent',
|
|
60
|
-
position: 'absolute',
|
|
61
|
-
left: 0,
|
|
62
|
-
top: 0,
|
|
63
|
-
right: 0,
|
|
64
|
-
bottom: 0,
|
|
65
|
-
},
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
module.exports = InspectorOverlay;
|