react-native 0.0.0-263478b91 → 0.0.0-268efb102
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/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -1
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -0
- package/Libraries/Animated/AnimatedEvent.js +23 -4
- package/Libraries/Animated/AnimatedMock.js +1 -7
- package/Libraries/Animated/NativeAnimatedHelper.js +3 -3
- package/Libraries/Animated/animations/Animation.js +1 -0
- package/Libraries/Animated/animations/DecayAnimation.js +2 -0
- package/Libraries/Animated/animations/SpringAnimation.js +1 -0
- package/Libraries/Animated/animations/TimingAnimation.js +3 -0
- package/Libraries/Animated/createAnimatedComponent.js +5 -1
- package/Libraries/Animated/createAnimatedComponentInjection.js +48 -0
- package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +48 -0
- package/Libraries/Animated/nodes/AnimatedValue.js +6 -0
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -0
- package/Libraries/Animated/useAnimatedProps.js +211 -0
- package/Libraries/BatchedBridge/MessageQueue.js +15 -10
- package/Libraries/BatchedBridge/NativeModules.js +5 -1
- package/Libraries/Blob/FileReader.js +1 -1
- package/Libraries/Blob/RCTBlobManager.h +2 -1
- package/Libraries/Blob/RCTBlobManager.mm +1 -3
- package/Libraries/Blob/React-RCTBlob.podspec +1 -1
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/BugReporting/BugReporting.js +2 -0
- package/Libraries/BugReporting/getReactData.js +1 -1
- package/Libraries/Components/Button.js +18 -2
- package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +3 -6
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -7
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +18 -15
- package/Libraries/Components/ScrollView/ScrollView.js +22 -5
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +1 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -0
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +268 -252
- package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +2 -0
- package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +14 -6
- package/Libraries/Components/Slider/Slider.js +13 -1
- package/Libraries/Components/StatusBar/StatusBar.js +6 -14
- package/Libraries/Components/Switch/Switch.js +18 -6
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +4 -4
- package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +1 -0
- package/Libraries/Components/TextInput/TextInput.js +32 -4
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/Touchable/Touchable.js +14 -0
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +11 -2
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +131 -64
- package/Libraries/Components/View/ViewAccessibility.js +2 -0
- package/Libraries/Components/View/ViewNativeComponent.js +0 -10
- package/Libraries/Core/Devtools/parseErrorStack.js +0 -10
- package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +49 -39
- package/Libraries/{Components/View/ViewInjection.js → Core/ExtendedError.js} +8 -2
- package/Libraries/Core/ReactFiberErrorDialog.js +44 -34
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +37 -28
- package/Libraries/Core/Timers/immediateShim.js +67 -0
- package/Libraries/Core/Timers/queueMicrotask.js +41 -0
- package/Libraries/Core/polyfillPromise.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +1 -1
- package/Libraries/Core/setUpGlobals.js +2 -0
- package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
- package/Libraries/Core/setUpTimers.js +65 -6
- package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.android.js +131 -0
- package/Libraries/DeprecatedPropTypes/{DeprecatedImagePropType.js → DeprecatedImagePropType.ios.js} +0 -0
- package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +5 -5
- package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +1 -0
- package/Libraries/EventEmitter/NativeEventEmitter.js +2 -0
- package/Libraries/Image/Image.android.js +20 -130
- package/Libraries/Image/Image.ios.js +12 -7
- package/Libraries/Image/ImageBackground.js +10 -8
- package/Libraries/Image/ImageInjection.js +28 -0
- package/Libraries/Image/ImageProps.js +28 -0
- package/Libraries/Image/ImageSource.js +108 -65
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/Inspector/Inspector.js +6 -0
- package/Libraries/Interaction/InteractionManager.js +3 -0
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/Lists/CellRenderMask.js +145 -0
- package/Libraries/Lists/FlatList.js +43 -26
- package/Libraries/Lists/VirtualizedList.js +3 -1
- package/Libraries/Lists/VirtualizedSectionList.js +3 -0
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +4 -4
- package/Libraries/LogBox/Data/LogBoxData.js +21 -19
- package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
- package/Libraries/Modal/Modal.js +1 -0
- package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -1
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +1 -1
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +32 -28
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/Network/RCTHTTPRequestHandler.h +5 -0
- package/Libraries/Network/RCTHTTPRequestHandler.mm +19 -7
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/Network/XMLHttpRequest.js +4 -1
- package/Libraries/NewAppScreen/components/Header.js +1 -0
- package/Libraries/NewAppScreen/components/logo.png +0 -0
- package/Libraries/Performance/QuickPerformanceLogger.js +3 -1
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +6 -0
- package/Libraries/Pressability/Pressability.js +1 -0
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +0 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/ReactNative/AppContainer.js +1 -0
- package/Libraries/ReactNative/AppRegistry.js +3 -1
- package/Libraries/ReactNative/I18nManager.js +12 -3
- package/Libraries/ReactNative/PaperUIManager.js +1 -0
- package/Libraries/ReactNative/renderApplication.js +8 -3
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -3
- package/Libraries/Reliability/UserFlow.js +7 -0
- package/Libraries/Renderer/REVISION +1 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +5686 -4572
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +4324 -3826
- package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +2196 -1859
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +196 -210
- package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +2694 -2070
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +647 -375
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +5474 -4460
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +4109 -3636
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +1375 -1166
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +162 -193
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +2197 -1708
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +618 -364
- package/Libraries/Renderer/shims/ReactFabric.js +5 -4
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
- package/Libraries/Renderer/shims/ReactNative.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeTypes.js +7 -4
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/Settings/Settings.ios.js +4 -0
- package/Libraries/Storage/AsyncStorage.js +1 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +16 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +8 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +2 -0
- package/Libraries/StyleSheet/StyleSheet.js +3 -5
- package/Libraries/StyleSheet/normalizeColor.js +2 -2
- package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +1 -1
- package/Libraries/Text/Text.js +11 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.m +10 -12
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
- package/Libraries/Text/TextProps.js +5 -7
- package/Libraries/TurboModule/TurboModuleRegistry.js +1 -10
- package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
- package/Libraries/UTFSequence.js +1 -1
- package/Libraries/Utilities/Dimensions.js +9 -14
- package/Libraries/Utilities/FeatureDetection.js +31 -0
- package/Libraries/Utilities/HMRClient.js +13 -6
- package/Libraries/Utilities/MatrixMath.js +1 -1
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -1
- package/Libraries/Utilities/PerformanceLoggerContext.js +1 -1
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -0
- package/Libraries/Utilities/deprecatedPropType.js +2 -2
- package/Libraries/Utilities/useMergeRefs.js +44 -0
- package/Libraries/Utilities/useRefEffect.js +45 -0
- package/Libraries/Utilities/useWindowDimensions.js +7 -2
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -0
- package/Libraries/promiseRejectionTrackingOptions.js +2 -0
- package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
- package/README.md +5 -5
- package/React/Base/RCTAssert.h +11 -11
- package/React/Base/RCTBridge+Private.h +8 -2
- package/React/Base/RCTBridge.h +12 -3
- package/React/Base/RCTBridge.m +24 -12
- package/React/Base/RCTBridgeModule.h +36 -12
- package/React/Base/RCTBundleURLProvider.h +26 -1
- package/React/Base/RCTBundleURLProvider.mm +79 -15
- package/React/Base/RCTCallableJSModules.m +47 -0
- package/React/Base/RCTConstants.h +6 -7
- package/React/Base/RCTConstants.m +12 -12
- package/React/Base/RCTConvert.h +1 -1
- package/React/Base/RCTConvert.m +31 -7
- package/React/Base/RCTCxxConvert.h +1 -1
- package/React/Base/RCTDefines.h +12 -3
- package/React/Base/RCTEventDispatcherProtocol.h +3 -2
- package/React/{Views/RCTPickerManager.h → Base/RCTInitializing.h} +4 -2
- package/React/Base/RCTJSThread.h +29 -0
- package/React/Base/RCTJSThread.m +19 -0
- package/React/Base/RCTModuleData.h +7 -3
- package/React/Base/RCTModuleData.mm +41 -1
- package/React/Base/RCTMultipartStreamReader.m +0 -2
- package/React/Base/RCTRootView.h +15 -0
- package/React/Base/RCTRootView.m +15 -0
- package/React/Base/RCTTouchHandler.m +4 -9
- package/React/Base/RCTUtils.h +3 -0
- package/React/Base/RCTUtils.m +14 -7
- package/React/Base/RCTVersion.m +1 -1
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +12 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +45 -1
- package/React/CoreModules/BUCK +4 -3
- package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
- package/React/CoreModules/RCTActionSheetManager.mm +14 -5
- package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
- package/React/CoreModules/RCTDevLoadingView.mm +6 -21
- package/React/CoreModules/RCTDevMenu.mm +8 -11
- package/React/CoreModules/RCTDevSettings.h +2 -1
- package/React/CoreModules/RCTDevSettings.mm +63 -53
- package/React/CoreModules/RCTDevSplitBundleLoader.mm +1 -6
- package/React/CoreModules/RCTDeviceInfo.mm +4 -4
- package/React/CoreModules/RCTEventDispatcher.h +2 -1
- package/React/CoreModules/RCTEventDispatcher.mm +17 -28
- package/React/CoreModules/RCTKeyboardObserver.mm +1 -1
- package/React/CoreModules/RCTLogBox.mm +14 -10
- package/React/CoreModules/RCTPerfMonitor.mm +9 -4
- package/React/CoreModules/RCTRedBox.mm +1 -5
- package/React/CoreModules/RCTTiming.h +2 -1
- package/React/CoreModules/RCTTiming.mm +1 -3
- package/React/CoreModules/React-CoreModules.podspec +1 -1
- package/React/CxxBridge/RCTCxxBridge.mm +49 -12
- package/React/DevSupport/RCTPackagerConnection.h +3 -0
- package/React/DevSupport/RCTPackagerConnection.mm +19 -8
- package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +12 -4
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +1 -2
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +0 -1
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +97 -85
- package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +1 -0
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +45 -17
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +109 -5
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -0
- package/React/Fabric/Mounting/RCTMountingManager.h +3 -0
- package/React/Fabric/Mounting/RCTMountingManager.mm +22 -3
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +2 -0
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +12 -0
- package/React/Fabric/RCTConversions.h +3 -0
- package/React/Fabric/RCTScheduler.mm +23 -7
- package/React/Fabric/RCTSurfacePresenter.mm +28 -37
- package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +4 -2
- package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -1
- package/React/Fabric/RCTSurfaceRegistry.h +1 -1
- package/React/Fabric/RCTSurfaceTouchHandler.mm +6 -20
- package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
- package/React/Modules/RCTEventEmitter.h +1 -2
- package/React/Modules/RCTEventEmitter.m +8 -11
- package/React/Modules/RCTI18nUtil.h +14 -6
- package/React/Modules/RCTI18nUtil.m +1 -47
- package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
- package/React/React-RCTFabric.podspec +3 -3
- package/React/Views/RCTFont.mm +54 -38
- package/React/Views/RCTModalHostView.h +1 -1
- package/React/Views/RCTModalHostView.m +16 -0
- package/React/Views/RCTModalHostViewManager.m +1 -0
- package/React/Views/RCTView.h +7 -7
- package/React/Views/RCTView.m +32 -49
- package/React/Views/RCTViewManager.m +14 -4
- package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
- package/React/Views/ScrollView/RCTScrollView.h +1 -0
- package/React/Views/ScrollView/RCTScrollView.m +123 -36
- package/React/Views/ScrollView/RCTScrollViewManager.m +4 -7
- package/React/Views/UIView+React.m +2 -11
- package/React/third-party.xcconfig +1 -1
- package/React-Core.podspec +2 -2
- package/ReactAndroid/Android-prebuilt.mk +8 -0
- package/ReactAndroid/README.md +1 -1
- package/ReactAndroid/build.gradle +82 -18
- package/ReactAndroid/gradle.properties +5 -5
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -2
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
- package/ReactAndroid/src/androidTest/js/BUCK +26 -0
- package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -12
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +123 -64
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +25 -3
- package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +3 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +33 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +40 -36
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +275 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +163 -328
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -72
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxHandler.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +6 -67
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +154 -74
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +36 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +14 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +129 -40
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +18 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +22 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +53 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +27 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +136 -35
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +35 -7
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +10 -6
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
- package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -9
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +39 -11
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +9 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +14 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +10 -13
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +5 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingProhibitedView.java +26 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +9 -9
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +6 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +53 -19
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +236 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +20 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +34 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/ViewProps.java +9 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.cpp +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.h +10 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +7 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +15 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +42 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +18 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +9 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +4 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +6 -8
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +59 -44
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +23 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +41 -59
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +20 -51
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +31 -12
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +31 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TypefaceStyle.java +72 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +16 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +117 -62
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +49 -2
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -7
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +8 -4
- package/ReactAndroid/src/main/jni/react/jni/Android.mk +5 -3
- package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +64 -3
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +9 -2
- package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
- package/{ReactCommon/react/renderer/components/picker/iospicker/primitives.h → ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h} +6 -10
- package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
- package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
- package/{ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerComponentDescriptor.h → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +8 -7
- package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +1 -0
- package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +3 -1
- package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +0 -1
- package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +26 -26
- package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +5 -5
- package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -1
- package/ReactAndroid/src/main/res/views/uimanager/values/strings_unlocalized.xml +0 -12
- package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
- package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +2 -2
- package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +4 -4
- package/ReactAndroid/src/main/third-party/java/okio/BUCK +2 -2
- package/ReactAndroid/src/main/third-party/java/robolectric/{4.4/BUCK → BUCK} +0 -0
- package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
- package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +2 -2
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +1 -1
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
- package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
- package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
- package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +4 -0
- package/ReactCommon/React-Fabric.podspec +11 -11
- package/ReactCommon/ReactCommon.podspec +3 -2
- package/ReactCommon/callinvoker/BUCK +2 -2
- package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
- package/ReactCommon/cxxreact/Android.mk +2 -1
- package/ReactCommon/cxxreact/BUCK +1 -3
- package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
- package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
- package/ReactCommon/cxxreact/Instance.cpp +5 -8
- package/ReactCommon/cxxreact/Instance.h +1 -1
- package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -3
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/hermes/React-hermes.podspec +2 -2
- package/ReactCommon/hermes/executor/Android.mk +4 -4
- package/ReactCommon/hermes/inspector/Android.mk +1 -2
- package/ReactCommon/hermes/inspector/tools/msggen/package.json +7 -4
- package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +13 -10
- package/ReactCommon/jsi/Android.mk +1 -1
- package/ReactCommon/jsi/BUCK +0 -2
- package/ReactCommon/jsi/React-jsi.podspec +3 -3
- package/ReactCommon/jsi/jsi/jsilib-posix.cpp +1 -11
- package/ReactCommon/jsiexecutor/Android.mk +2 -2
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +2 -2
- package/ReactCommon/logger/Android.mk +23 -0
- package/ReactCommon/logger/BUCK +43 -0
- package/ReactCommon/logger/React-logger.podspec +40 -0
- package/ReactCommon/logger/react_native_log.cpp +52 -0
- package/ReactCommon/logger/react_native_log.h +33 -0
- package/ReactCommon/react/nativemodule/core/Android.mk +2 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +37 -1
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +24 -22
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -8
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -5
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +61 -42
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +55 -35
- package/ReactCommon/react/nativemodule/samples/BUCK +2 -2
- package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +1 -1
- package/ReactCommon/react/renderer/animations/BUCK +1 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +5 -27
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -14
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +920 -1127
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +80 -245
- package/ReactCommon/react/renderer/animations/conversions.h +212 -0
- package/ReactCommon/react/renderer/animations/primitives.h +104 -0
- package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +18 -10
- package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
- package/ReactCommon/react/renderer/animations/utils.h +80 -0
- package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
- package/ReactCommon/react/renderer/attributedstring/conversions.h +162 -11
- package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +12 -6
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
- package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -1
- package/ReactCommon/react/renderer/components/image/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
- package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
- package/ReactCommon/react/renderer/components/image/conversions.h +9 -2
- package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +2 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
- package/ReactCommon/react/renderer/components/root/BUCK +1 -0
- package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
- package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -1
- package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
- package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +35 -3
- package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
- package/ReactCommon/react/renderer/components/scrollview/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +54 -4
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +10 -5
- package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
- package/ReactCommon/react/renderer/components/text/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +2 -3
- package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +1 -16
- package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +10 -4
- package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +3 -3
- package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +36 -2
- package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
- package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/TextShadowNode.h +23 -0
- package/ReactCommon/react/renderer/components/textinput/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
- package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +19 -7
- package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
- package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
- package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +4 -2
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
- package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +28 -0
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
- package/ReactCommon/react/renderer/components/view/Android.mk +3 -2
- package/ReactCommon/react/renderer/components/view/BUCK +1 -0
- package/ReactCommon/react/renderer/components/view/Touch.h +1 -32
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +19 -5
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -1
- package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
- package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
- package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
- package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
- package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -10
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -12
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +58 -33
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +2 -8
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
- package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +77 -6
- package/ReactCommon/react/renderer/components/view/conversions.h +57 -14
- package/ReactCommon/react/renderer/components/view/primitives.h +5 -4
- package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +7 -2
- package/ReactCommon/react/renderer/core/Android.mk +1 -1
- package/ReactCommon/react/renderer/core/BUCK +1 -0
- package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -34
- package/ReactCommon/react/renderer/core/BatchedEventQueue.h +2 -9
- package/ReactCommon/react/renderer/core/ComponentDescriptor.h +5 -2
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +19 -21
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +4 -0
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +5 -10
- package/ReactCommon/react/renderer/core/EventDispatcher.h +3 -8
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +21 -11
- package/ReactCommon/react/renderer/core/EventEmitter.h +6 -1
- package/ReactCommon/react/renderer/core/EventPipe.h +2 -0
- package/ReactCommon/react/renderer/core/EventQueue.cpp +35 -32
- package/ReactCommon/react/renderer/core/EventQueue.h +12 -6
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +82 -0
- package/ReactCommon/react/renderer/core/EventQueueProcessor.h +36 -0
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +1 -1
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +0 -6
- package/ReactCommon/react/renderer/core/Props.cpp +10 -2
- package/ReactCommon/react/renderer/core/Props.h +6 -1
- package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
- package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
- package/ReactCommon/react/renderer/core/RawEvent.h +40 -3
- package/ReactCommon/react/renderer/core/RawProps.cpp +2 -1
- package/ReactCommon/react/renderer/core/RawProps.h +3 -1
- package/ReactCommon/react/renderer/core/RawPropsKey.cpp +10 -2
- package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +1 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +1 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
- package/ReactCommon/react/renderer/core/ReactEventPriority.h +43 -0
- package/ReactCommon/react/renderer/core/ReactPrimitives.h +0 -2
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +9 -12
- package/ReactCommon/react/renderer/core/ShadowNode.h +4 -0
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +1 -0
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +17 -1
- package/ReactCommon/react/renderer/core/propsConversions.h +19 -9
- package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +134 -0
- package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +97 -29
- package/ReactCommon/react/renderer/core/tests/TestComponent.h +6 -2
- package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +31 -0
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +9 -9
- package/ReactCommon/react/renderer/graphics/Android.mk +5 -2
- package/ReactCommon/react/renderer/graphics/BUCK +12 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +3 -2
- package/ReactCommon/react/renderer/graphics/Transform.cpp +2 -2
- package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
- package/ReactCommon/react/renderer/graphics/conversions.h +34 -19
- package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
- package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +8 -0
- package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +1 -0
- package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +8 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +43 -1
- package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
- package/ReactCommon/react/renderer/imagemanager/BUCK +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
- package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +6 -9
- package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -4
- package/ReactCommon/react/renderer/mapbuffer/BUCK +2 -2
- package/ReactCommon/react/renderer/mounting/Android.mk +2 -1
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +3 -10
- package/ReactCommon/react/renderer/mounting/Differentiator.h +1 -2
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +1 -7
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
- package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +7 -5
- package/ReactCommon/react/renderer/mounting/ShadowTree.h +2 -1
- package/ReactCommon/react/renderer/mounting/ShadowView.cpp +2 -0
- package/ReactCommon/react/renderer/mounting/ShadowView.h +1 -0
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -0
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +10 -1
- package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +10 -3
- package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +1 -1
- package/ReactCommon/react/renderer/mounting/stubs.cpp +3 -3
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +22 -21
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +12 -5
- package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +2 -2
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -3
- package/ReactCommon/react/renderer/runtimescheduler/Android.mk +2 -1
- package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +75 -33
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +54 -10
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +8 -7
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +8 -5
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +11 -5
- package/ReactCommon/react/renderer/runtimescheduler/Task.h +5 -3
- package/ReactCommon/react/renderer/runtimescheduler/primitives.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +157 -0
- package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +6 -0
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +13 -12
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +4 -4
- package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.cpp → scheduler/InspectorData.h} +10 -2
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +64 -37
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +18 -3
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +9 -1
- package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +1 -6
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +49 -35
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +12 -12
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +1 -0
- package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +11 -4
- package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +4 -1
- package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +5 -5
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
- package/ReactCommon/react/renderer/timeline/BUCK +6 -6
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +29 -16
- package/ReactCommon/react/renderer/uimanager/UIManager.h +3 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +61 -2
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +13 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +10 -2
- package/ReactCommon/react/test_utils/BUCK +3 -0
- package/ReactCommon/react/{renderer/core/Constants.h → test_utils/MockSurfaceHandler.h} +9 -7
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +18 -4
- package/ReactCommon/react/utils/Android.mk +3 -1
- package/ReactCommon/react/utils/BUCK +1 -0
- package/ReactCommon/react/utils/ContextContainer.h +0 -27
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
- package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +12 -0
- package/ReactCommon/yoga/yoga/Yoga.cpp +2 -6
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar +0 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha512 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module +272 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.0.0-263478b91/react-native-0.0.0-263478b91.pom → 0.0.0-268efb102/react-native-0.0.0-268efb102.pom} +22 -11
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha512 +1 -0
- package/android/com/facebook/react/react-native/maven-metadata.xml +4 -3
- package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -0
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -0
- package/flow/HermesInternalType.js +114 -0
- package/flow/global.js +68 -0
- package/flow-typed/npm/react-test-renderer_v16.x.x.js +79 -0
- package/index.js +65 -40
- package/jest/preprocessor.js +75 -7
- package/jest/renderer.js +3 -7
- package/jest/setup.js +2 -1
- package/package.json +58 -19
- package/react.gradle +47 -25
- package/scripts/find-node.sh +6 -0
- package/scripts/generate-specs-cli.js +20 -2
- package/scripts/ios-configure-glog.sh +4 -0
- package/scripts/react-native-xcode.sh +5 -1
- package/scripts/react_native_pods.rb +213 -43
- package/template/_flowconfig +1 -1
- package/template/_gitignore +1 -0
- package/template/android/app/build.gradle +12 -7
- package/template/android/app/src/main/res/values/styles.xml +0 -1
- package/template/android/build.gradle +5 -6
- package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/template/android/gradle.properties +1 -1
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
- package/template/ios/Podfile +1 -0
- package/template/package.json +3 -4
- package/third-party-podspecs/RCT-Folly.podspec +14 -10
- package/third-party-podspecs/boost.podspec +23 -0
- package/Libraries/BUCK +0 -24
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -87
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
- package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -83
- package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -82
- package/Libraries/Components/Picker/Picker.js +0 -168
- package/Libraries/Components/Picker/PickerAndroid.android.js +0 -143
- package/Libraries/Components/Picker/PickerAndroid.ios.js +0 -12
- package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
- package/Libraries/Components/Picker/PickerIOS.ios.js +0 -163
- package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -86
- package/Libraries/Components/StaticContainer.react.js +0 -51
- package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -38
- package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -25
- package/Libraries/Interaction/InteractionMixin.js +0 -53
- package/Libraries/ReactNative/queryLayoutByID.js +0 -58
- package/Libraries/StyleSheet/StyleSheetValidation.js +0 -100
- package/Libraries/Text/TextInjection.js +0 -15
- package/React/Base/RCTJSInvokerModule.h +0 -17
- package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.h +0 -19
- package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.mm +0 -206
- package/React/Views/RCTPicker.h +0 -23
- package/React/Views/RCTPicker.m +0 -122
- package/React/Views/RCTPickerManager.m +0 -59
- package/ReactAndroid/release.gradle +0 -87
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactPickerTestCase.java +0 -196
- package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
- package/ReactAndroid/src/androidTest/js/PickerAndroidTestModule.js +0 -89
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerImpl.java +0 -82
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -153
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerMode.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
- package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerDelegate.java +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerInterface.java +0 -23
- package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerDelegate.java +0 -48
- package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerInterface.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/BUCK +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDialogPickerManager.java +0 -51
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDropdownPickerManager.java +0 -50
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +0 -196
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +0 -95
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +0 -43
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +0 -99
- package/ReactAndroid/src/main/java/com/facebook/react/views/picker/events/PickerItemSelectEvent.java +0 -42
- package/ReactCommon/react/renderer/components/picker/Android.mk +0 -37
- package/ReactCommon/react/renderer/components/picker/BUCK +0 -98
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.cpp +0 -23
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.h +0 -27
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.cpp +0 -28
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.h +0 -77
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.h +0 -29
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerComponentDescriptor.h +0 -21
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.cpp +0 -23
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.h +0 -27
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.cpp +0 -28
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.h +0 -77
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.cpp +0 -17
- package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.h +0 -29
- package/ReactCommon/react/renderer/components/picker/iospicker/BUCK +0 -59
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerComponentDescriptor.h +0 -26
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.cpp +0 -23
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.h +0 -28
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.cpp +0 -46
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.h +0 -36
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.cpp +0 -16
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.h +0 -33
- package/ReactCommon/react/renderer/components/picker/iospicker/PickerState.h +0 -19
- package/ReactCommon/react/renderer/components/picker/iospicker/conversions.h +0 -48
- package/ReactCommon/react/renderer/core/Constants.cpp +0 -24
- package/ReactCommon/react/renderer/mounting/DifferentiatorFlatteningClassic.cpp +0 -1564
- package/ReactCommon/react/renderer/mounting/DifferentiatorFlatteningClassic.h +0 -45
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeatV2.cpp +0 -58
- package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeatV2.h +0 -41
- package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar +0 -0
- package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.pom.md5 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.pom.sha1 +0 -1
- package/scripts/generate-specs.sh +0 -100
- package/template/_editorconfig +0 -3
- package/template/_gitattributes +0 -3
package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
package com.facebook.react.fabric.mounting;
|
|
9
9
|
|
|
10
10
|
import static com.facebook.infer.annotation.ThreadConfined.ANY;
|
|
11
|
+
import static com.facebook.infer.annotation.ThreadConfined.UI;
|
|
11
12
|
|
|
12
13
|
import android.view.View;
|
|
13
14
|
import android.view.ViewGroup;
|
|
@@ -18,14 +19,17 @@ import androidx.annotation.UiThread;
|
|
|
18
19
|
import com.facebook.common.logging.FLog;
|
|
19
20
|
import com.facebook.infer.annotation.Assertions;
|
|
20
21
|
import com.facebook.infer.annotation.ThreadConfined;
|
|
21
|
-
import com.facebook.react.bridge.
|
|
22
|
+
import com.facebook.react.bridge.ReactNoCrashSoftException;
|
|
23
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
22
24
|
import com.facebook.react.bridge.ReadableArray;
|
|
23
25
|
import com.facebook.react.bridge.ReadableMap;
|
|
24
26
|
import com.facebook.react.bridge.RetryableMountingLayerException;
|
|
25
27
|
import com.facebook.react.bridge.SoftAssertions;
|
|
26
28
|
import com.facebook.react.bridge.UiThreadUtil;
|
|
27
29
|
import com.facebook.react.common.build.ReactBuildConfig;
|
|
30
|
+
import com.facebook.react.config.ReactFeatureFlags;
|
|
28
31
|
import com.facebook.react.fabric.events.EventEmitterWrapper;
|
|
32
|
+
import com.facebook.react.fabric.mounting.MountingManager.MountItemExecutor;
|
|
29
33
|
import com.facebook.react.fabric.mounting.mountitems.MountItem;
|
|
30
34
|
import com.facebook.react.touch.JSResponderHandler;
|
|
31
35
|
import com.facebook.react.uimanager.IllegalViewOperationException;
|
|
@@ -60,11 +64,10 @@ public class SurfaceMountingManager {
|
|
|
60
64
|
private JSResponderHandler mJSResponderHandler;
|
|
61
65
|
private ViewManagerRegistry mViewManagerRegistry;
|
|
62
66
|
private RootViewManager mRootViewManager;
|
|
63
|
-
private
|
|
67
|
+
private MountItemExecutor mMountItemExecutor;
|
|
64
68
|
|
|
65
69
|
// This is null *until* StopSurface is called.
|
|
66
70
|
private Set<Integer> mTagSetForStoppedSurface;
|
|
67
|
-
private long mLastSuccessfulQueryTime = -1;
|
|
68
71
|
|
|
69
72
|
private final int mSurfaceId;
|
|
70
73
|
|
|
@@ -73,13 +76,13 @@ public class SurfaceMountingManager {
|
|
|
73
76
|
@NonNull JSResponderHandler jsResponderHandler,
|
|
74
77
|
@NonNull ViewManagerRegistry viewManagerRegistry,
|
|
75
78
|
@NonNull RootViewManager rootViewManager,
|
|
76
|
-
@NonNull
|
|
79
|
+
@NonNull MountItemExecutor mountItemExecutor) {
|
|
77
80
|
mSurfaceId = surfaceId;
|
|
78
81
|
|
|
79
82
|
mJSResponderHandler = jsResponderHandler;
|
|
80
83
|
mViewManagerRegistry = viewManagerRegistry;
|
|
81
84
|
mRootViewManager = rootViewManager;
|
|
82
|
-
|
|
85
|
+
mMountItemExecutor = mountItemExecutor;
|
|
83
86
|
}
|
|
84
87
|
|
|
85
88
|
public boolean isStopped() {
|
|
@@ -139,7 +142,6 @@ public class SurfaceMountingManager {
|
|
|
139
142
|
// deleted. This helps distinguish between scenarios where an invalid tag is referenced, vs
|
|
140
143
|
// race conditions where an imperative method is called on a tag during/just after StopSurface.
|
|
141
144
|
if (mTagSetForStoppedSurface != null && mTagSetForStoppedSurface.contains(tag)) {
|
|
142
|
-
mLastSuccessfulQueryTime = System.currentTimeMillis();
|
|
143
145
|
return true;
|
|
144
146
|
}
|
|
145
147
|
if (mTagToViewState == null) {
|
|
@@ -172,7 +174,7 @@ public class SurfaceMountingManager {
|
|
|
172
174
|
}
|
|
173
175
|
|
|
174
176
|
if (rootView.getId() == mSurfaceId) {
|
|
175
|
-
|
|
177
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
176
178
|
TAG,
|
|
177
179
|
new IllegalViewOperationException(
|
|
178
180
|
"Race condition in addRootView detected. Trying to set an id of ["
|
|
@@ -208,11 +210,9 @@ public class SurfaceMountingManager {
|
|
|
208
210
|
}
|
|
209
211
|
|
|
210
212
|
@UiThread
|
|
213
|
+
@ThreadConfined(UI)
|
|
211
214
|
private void executeViewAttachMountItems() {
|
|
212
|
-
|
|
213
|
-
MountItem item = mOnViewAttachItems.poll();
|
|
214
|
-
item.execute(mMountingManager);
|
|
215
|
-
}
|
|
215
|
+
mMountItemExecutor.executeItems(mOnViewAttachItems);
|
|
216
216
|
}
|
|
217
217
|
|
|
218
218
|
/**
|
|
@@ -251,19 +251,29 @@ public class SurfaceMountingManager {
|
|
|
251
251
|
viewState.mStateWrapper.destroyState();
|
|
252
252
|
viewState.mStateWrapper = null;
|
|
253
253
|
}
|
|
254
|
+
if (ReactFeatureFlags.enableAggressiveEventEmitterCleanup) {
|
|
255
|
+
if (viewState.mEventEmitter != null) {
|
|
256
|
+
viewState.mEventEmitter.destroy();
|
|
257
|
+
viewState.mEventEmitter = null;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
254
260
|
}
|
|
255
261
|
|
|
256
262
|
Runnable runnable =
|
|
257
263
|
new Runnable() {
|
|
258
264
|
@Override
|
|
259
265
|
public void run() {
|
|
266
|
+
// We must call `onDropViewInstance` on all remaining Views
|
|
267
|
+
for (ViewState viewState : mTagToViewState.values()) {
|
|
268
|
+
onViewStateDeleted(viewState);
|
|
269
|
+
}
|
|
270
|
+
|
|
260
271
|
// Evict all views from cache and memory
|
|
261
|
-
mLastSuccessfulQueryTime = System.currentTimeMillis();
|
|
262
272
|
mTagSetForStoppedSurface = mTagToViewState.keySet();
|
|
263
273
|
mTagToViewState = null;
|
|
264
274
|
mJSResponderHandler = null;
|
|
265
275
|
mRootViewManager = null;
|
|
266
|
-
|
|
276
|
+
mMountItemExecutor = null;
|
|
267
277
|
mOnViewAttachItems.clear();
|
|
268
278
|
}
|
|
269
279
|
};
|
|
@@ -312,7 +322,7 @@ public class SurfaceMountingManager {
|
|
|
312
322
|
if (viewParent != null) {
|
|
313
323
|
int actualParentId =
|
|
314
324
|
viewParent instanceof ViewGroup ? ((ViewGroup) viewParent).getId() : View.NO_ID;
|
|
315
|
-
|
|
325
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
316
326
|
TAG,
|
|
317
327
|
new IllegalStateException(
|
|
318
328
|
"addViewAt: cannot insert view ["
|
|
@@ -370,7 +380,7 @@ public class SurfaceMountingManager {
|
|
|
370
380
|
|
|
371
381
|
// TODO: throw exception here?
|
|
372
382
|
if (parentViewState == null) {
|
|
373
|
-
|
|
383
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
374
384
|
MountingManager.TAG,
|
|
375
385
|
new IllegalStateException(
|
|
376
386
|
"Unable to find viewState for tag: [" + parentTag + "] for removeViewAt"));
|
|
@@ -447,7 +457,7 @@ public class SurfaceMountingManager {
|
|
|
447
457
|
// If we can fix the bug there, or remove the need for LayoutAnimation index adjustment
|
|
448
458
|
// entirely, we can just throw this exception without regression user experience.
|
|
449
459
|
logViewHierarchy(parentView, true);
|
|
450
|
-
|
|
460
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
451
461
|
TAG,
|
|
452
462
|
new IllegalStateException(
|
|
453
463
|
"Tried to remove view ["
|
|
@@ -524,14 +534,49 @@ public class SurfaceMountingManager {
|
|
|
524
534
|
int reactTag,
|
|
525
535
|
@Nullable ReadableMap props,
|
|
526
536
|
@Nullable StateWrapper stateWrapper,
|
|
537
|
+
@Nullable EventEmitterWrapper eventEmitterWrapper,
|
|
527
538
|
boolean isLayoutable) {
|
|
528
539
|
if (isStopped()) {
|
|
529
540
|
return;
|
|
530
541
|
}
|
|
542
|
+
// We treat this as a perf problem and not a logical error. View Preallocation or unexpected
|
|
543
|
+
// changes to Differ or C++ Binding could cause some redundant Create instructions.
|
|
544
|
+
// This is a NoCrash soft exception because we know there are cases where preallocation happens
|
|
545
|
+
// and a node is recreated: if a node is preallocated and then committed with revision 2+,
|
|
546
|
+
// an extra CREATE instruction will be generated.
|
|
547
|
+
// This represents a perf issue only, not a correctness issue. In the future we need to
|
|
548
|
+
// refactor View preallocation to correct the currently incorrect assumptions.
|
|
531
549
|
if (getNullableViewState(reactTag) != null) {
|
|
550
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
551
|
+
TAG,
|
|
552
|
+
new ReactNoCrashSoftException(
|
|
553
|
+
"Cannot CREATE view with tag [" + reactTag + "], already exists."));
|
|
532
554
|
return;
|
|
533
555
|
}
|
|
534
556
|
|
|
557
|
+
createViewUnsafe(
|
|
558
|
+
componentName, reactTag, props, stateWrapper, eventEmitterWrapper, isLayoutable);
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
/**
|
|
562
|
+
* Perform view creation without any safety checks. You must ensure safety before calling this
|
|
563
|
+
* method (see existing callsites).
|
|
564
|
+
*
|
|
565
|
+
* @param componentName
|
|
566
|
+
* @param reactTag
|
|
567
|
+
* @param props
|
|
568
|
+
* @param stateWrapper
|
|
569
|
+
* @param eventEmitterWrapper
|
|
570
|
+
* @param isLayoutable
|
|
571
|
+
*/
|
|
572
|
+
@UiThread
|
|
573
|
+
public void createViewUnsafe(
|
|
574
|
+
@NonNull String componentName,
|
|
575
|
+
int reactTag,
|
|
576
|
+
@Nullable ReadableMap props,
|
|
577
|
+
@Nullable StateWrapper stateWrapper,
|
|
578
|
+
@Nullable EventEmitterWrapper eventEmitterWrapper,
|
|
579
|
+
boolean isLayoutable) {
|
|
535
580
|
View view = null;
|
|
536
581
|
ViewManager viewManager = null;
|
|
537
582
|
|
|
@@ -551,6 +596,7 @@ public class SurfaceMountingManager {
|
|
|
551
596
|
ViewState viewState = new ViewState(reactTag, view, viewManager);
|
|
552
597
|
viewState.mCurrentProps = propsDiffMap;
|
|
553
598
|
viewState.mStateWrapper = stateWrapper;
|
|
599
|
+
viewState.mEventEmitter = eventEmitterWrapper;
|
|
554
600
|
|
|
555
601
|
mTagToViewState.put(reactTag, viewState);
|
|
556
602
|
}
|
|
@@ -759,7 +805,13 @@ public class SurfaceMountingManager {
|
|
|
759
805
|
viewState = new ViewState(reactTag, null, null);
|
|
760
806
|
mTagToViewState.put(reactTag, viewState);
|
|
761
807
|
}
|
|
808
|
+
EventEmitterWrapper previousEventEmitterWrapper = viewState.mEventEmitter;
|
|
762
809
|
viewState.mEventEmitter = eventEmitter;
|
|
810
|
+
|
|
811
|
+
// Immediately destroy native side of wrapper, instead of waiting for Java GC.
|
|
812
|
+
if (previousEventEmitterWrapper != eventEmitter && previousEventEmitterWrapper != null) {
|
|
813
|
+
previousEventEmitterWrapper.destroy();
|
|
814
|
+
}
|
|
763
815
|
}
|
|
764
816
|
|
|
765
817
|
@UiThread
|
|
@@ -794,6 +846,29 @@ public class SurfaceMountingManager {
|
|
|
794
846
|
mJSResponderHandler.setJSResponder(initialReactTag, view.getParent());
|
|
795
847
|
}
|
|
796
848
|
|
|
849
|
+
@UiThread
|
|
850
|
+
private void onViewStateDeleted(ViewState viewState) {
|
|
851
|
+
// Destroy state immediately instead of waiting for Java GC.
|
|
852
|
+
if (viewState.mStateWrapper != null) {
|
|
853
|
+
viewState.mStateWrapper.destroyState();
|
|
854
|
+
viewState.mStateWrapper = null;
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
// Destroy EventEmitterWrapper immediately instead of waiting for Java GC.
|
|
858
|
+
// Notably, this is also required to ensure that the EventEmitterWrapper is deallocated
|
|
859
|
+
// before the JS VM is deallocated, since it holds onto a JSI::Pointer.
|
|
860
|
+
if (viewState.mEventEmitter != null) {
|
|
861
|
+
viewState.mEventEmitter.destroy();
|
|
862
|
+
viewState.mEventEmitter = null;
|
|
863
|
+
}
|
|
864
|
+
|
|
865
|
+
// For non-root views we notify viewmanager with {@link ViewManager#onDropInstance}
|
|
866
|
+
ViewManager viewManager = viewState.mViewManager;
|
|
867
|
+
if (!viewState.mIsRoot && viewManager != null) {
|
|
868
|
+
viewManager.onDropViewInstance(viewState.mView);
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
|
|
797
872
|
@UiThread
|
|
798
873
|
public void deleteView(int reactTag) {
|
|
799
874
|
UiThreadUtil.assertOnUiThread();
|
|
@@ -804,7 +879,7 @@ public class SurfaceMountingManager {
|
|
|
804
879
|
ViewState viewState = getNullableViewState(reactTag);
|
|
805
880
|
|
|
806
881
|
if (viewState == null) {
|
|
807
|
-
|
|
882
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
808
883
|
MountingManager.TAG,
|
|
809
884
|
new IllegalStateException(
|
|
810
885
|
"Unable to find viewState for tag: " + reactTag + " for deleteView"));
|
|
@@ -816,17 +891,7 @@ public class SurfaceMountingManager {
|
|
|
816
891
|
// or StopSurface being called, so we do not handle deleting descendents of the View.
|
|
817
892
|
mTagToViewState.remove(reactTag);
|
|
818
893
|
|
|
819
|
-
|
|
820
|
-
if (viewState.mStateWrapper != null) {
|
|
821
|
-
viewState.mStateWrapper.destroyState();
|
|
822
|
-
viewState.mStateWrapper = null;
|
|
823
|
-
}
|
|
824
|
-
|
|
825
|
-
// For non-root views we notify viewmanager with {@link ViewManager#onDropInstance}
|
|
826
|
-
ViewManager viewManager = viewState.mViewManager;
|
|
827
|
-
if (!viewState.mIsRoot && viewManager != null) {
|
|
828
|
-
viewManager.onDropViewInstance(viewState.mView);
|
|
829
|
-
}
|
|
894
|
+
onViewStateDeleted(viewState);
|
|
830
895
|
}
|
|
831
896
|
|
|
832
897
|
@UiThread
|
|
@@ -835,18 +900,25 @@ public class SurfaceMountingManager {
|
|
|
835
900
|
int reactTag,
|
|
836
901
|
@Nullable ReadableMap props,
|
|
837
902
|
@Nullable StateWrapper stateWrapper,
|
|
903
|
+
@Nullable EventEmitterWrapper eventEmitterWrapper,
|
|
838
904
|
boolean isLayoutable) {
|
|
839
905
|
UiThreadUtil.assertOnUiThread();
|
|
906
|
+
|
|
840
907
|
if (isStopped()) {
|
|
841
908
|
return;
|
|
842
909
|
}
|
|
843
|
-
|
|
910
|
+
// We treat this as a perf problem and not a logical error. View Preallocation or unexpected
|
|
911
|
+
// changes to Differ or C++ Binding could cause some redundant Create instructions.
|
|
844
912
|
if (getNullableViewState(reactTag) != null) {
|
|
845
|
-
|
|
846
|
-
|
|
913
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
914
|
+
TAG,
|
|
915
|
+
new IllegalStateException(
|
|
916
|
+
"Cannot Preallocate view with tag [" + reactTag + "], already exists."));
|
|
917
|
+
return;
|
|
847
918
|
}
|
|
848
919
|
|
|
849
|
-
|
|
920
|
+
createViewUnsafe(
|
|
921
|
+
componentName, reactTag, props, stateWrapper, eventEmitterWrapper, isLayoutable);
|
|
850
922
|
}
|
|
851
923
|
|
|
852
924
|
@AnyThread
|
|
@@ -856,11 +928,21 @@ public class SurfaceMountingManager {
|
|
|
856
928
|
return viewState == null ? null : viewState.mEventEmitter;
|
|
857
929
|
}
|
|
858
930
|
|
|
859
|
-
@
|
|
860
|
-
|
|
931
|
+
@UiThread
|
|
932
|
+
public View getView(int reactTag) {
|
|
933
|
+
ViewState state = getNullableViewState(reactTag);
|
|
934
|
+
View view = state == null ? null : state.mView;
|
|
935
|
+
if (view == null) {
|
|
936
|
+
throw new IllegalViewOperationException(
|
|
937
|
+
"Trying to resolve view with tag " + reactTag + " which doesn't exist");
|
|
938
|
+
}
|
|
939
|
+
return view;
|
|
940
|
+
}
|
|
941
|
+
|
|
942
|
+
private @NonNull ViewState getViewState(int tag) {
|
|
861
943
|
ViewState viewState = mTagToViewState.get(tag);
|
|
862
944
|
if (viewState == null) {
|
|
863
|
-
throw new RetryableMountingLayerException("Unable to find viewState
|
|
945
|
+
throw new RetryableMountingLayerException("Unable to find viewState for tag " + tag);
|
|
864
946
|
}
|
|
865
947
|
return viewState;
|
|
866
948
|
}
|
|
@@ -881,6 +963,25 @@ public class SurfaceMountingManager {
|
|
|
881
963
|
return (ViewGroupManager<ViewGroup>) viewState.mViewManager;
|
|
882
964
|
}
|
|
883
965
|
|
|
966
|
+
public void printSurfaceState() {
|
|
967
|
+
FLog.e(TAG, "Views created for surface {%d}:", getSurfaceId());
|
|
968
|
+
for (ViewState viewState : mTagToViewState.values()) {
|
|
969
|
+
String viewManagerName =
|
|
970
|
+
viewState.mViewManager != null ? viewState.mViewManager.getName() : null;
|
|
971
|
+
@Nullable View view = viewState.mView;
|
|
972
|
+
@Nullable View parent = view != null ? (View) view.getParent() : null;
|
|
973
|
+
@Nullable Integer parentTag = parent != null ? parent.getId() : null;
|
|
974
|
+
|
|
975
|
+
FLog.e(
|
|
976
|
+
TAG,
|
|
977
|
+
"<%s id=%d parentTag=%s isRoot=%b />",
|
|
978
|
+
viewManagerName,
|
|
979
|
+
viewState.mReactTag,
|
|
980
|
+
parentTag,
|
|
981
|
+
viewState.mIsRoot);
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
|
|
884
985
|
/**
|
|
885
986
|
* This class holds view state for react tags. Objects of this class are stored into the {@link
|
|
886
987
|
* #mTagToViewState}, and they should be updated in the same thread.
|
|
@@ -142,6 +142,7 @@ public class IntBufferBatchMountItem implements MountItem {
|
|
|
142
142
|
mIntBuffer[i++],
|
|
143
143
|
castToProps(mObjBuffer[j++]),
|
|
144
144
|
castToState(mObjBuffer[j++]),
|
|
145
|
+
castToEventEmitter(mObjBuffer[j++]),
|
|
145
146
|
mIntBuffer[i++] == 1);
|
|
146
147
|
} else if (type == INSTRUCTION_DELETE) {
|
|
147
148
|
surfaceMountingManager.deleteView(mIntBuffer[i++]);
|
|
@@ -202,7 +203,7 @@ public class IntBufferBatchMountItem implements MountItem {
|
|
|
202
203
|
for (int k = 0; k < numInstructions; k++) {
|
|
203
204
|
if (type == INSTRUCTION_CREATE) {
|
|
204
205
|
String componentName = getFabricComponentName((String) mObjBuffer[j++]);
|
|
205
|
-
j +=
|
|
206
|
+
j += 3;
|
|
206
207
|
s.append(
|
|
207
208
|
String.format(
|
|
208
209
|
"CREATE [%d] - layoutable:%d - %s\n",
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
|
|
8
8
|
package com.facebook.react.fabric.mounting.mountitems;
|
|
9
9
|
|
|
10
|
-
import static com.facebook.react.fabric.FabricUIManager.ENABLE_FABRIC_LOGS;
|
|
11
10
|
import static com.facebook.react.fabric.FabricUIManager.IS_DEVELOPMENT_ENVIRONMENT;
|
|
12
11
|
import static com.facebook.react.fabric.FabricUIManager.TAG;
|
|
13
12
|
|
|
@@ -15,6 +14,7 @@ import androidx.annotation.NonNull;
|
|
|
15
14
|
import androidx.annotation.Nullable;
|
|
16
15
|
import com.facebook.common.logging.FLog;
|
|
17
16
|
import com.facebook.react.bridge.ReadableMap;
|
|
17
|
+
import com.facebook.react.fabric.events.EventEmitterWrapper;
|
|
18
18
|
import com.facebook.react.fabric.mounting.MountingManager;
|
|
19
19
|
import com.facebook.react.fabric.mounting.SurfaceMountingManager;
|
|
20
20
|
import com.facebook.react.uimanager.StateWrapper;
|
|
@@ -27,6 +27,7 @@ public class PreAllocateViewMountItem implements MountItem {
|
|
|
27
27
|
private final int mReactTag;
|
|
28
28
|
private final @Nullable ReadableMap mProps;
|
|
29
29
|
private final @Nullable StateWrapper mStateWrapper;
|
|
30
|
+
private final @Nullable EventEmitterWrapper mEventEmitterWrapper;
|
|
30
31
|
private final boolean mIsLayoutable;
|
|
31
32
|
|
|
32
33
|
public PreAllocateViewMountItem(
|
|
@@ -35,11 +36,13 @@ public class PreAllocateViewMountItem implements MountItem {
|
|
|
35
36
|
@NonNull String component,
|
|
36
37
|
@Nullable ReadableMap props,
|
|
37
38
|
@NonNull StateWrapper stateWrapper,
|
|
39
|
+
@Nullable EventEmitterWrapper eventEmitterWrapper,
|
|
38
40
|
boolean isLayoutable) {
|
|
39
41
|
mComponent = component;
|
|
40
42
|
mSurfaceId = surfaceId;
|
|
41
43
|
mProps = props;
|
|
42
44
|
mStateWrapper = stateWrapper;
|
|
45
|
+
mEventEmitterWrapper = eventEmitterWrapper;
|
|
43
46
|
mReactTag = reactTag;
|
|
44
47
|
mIsLayoutable = isLayoutable;
|
|
45
48
|
}
|
|
@@ -51,9 +54,6 @@ public class PreAllocateViewMountItem implements MountItem {
|
|
|
51
54
|
|
|
52
55
|
@Override
|
|
53
56
|
public void execute(@NonNull MountingManager mountingManager) {
|
|
54
|
-
if (ENABLE_FABRIC_LOGS) {
|
|
55
|
-
FLog.d(TAG, "Executing pre-allocation of: " + toString());
|
|
56
|
-
}
|
|
57
57
|
SurfaceMountingManager surfaceMountingManager = mountingManager.getSurfaceManager(mSurfaceId);
|
|
58
58
|
if (surfaceMountingManager == null) {
|
|
59
59
|
FLog.e(
|
|
@@ -62,7 +62,7 @@ public class PreAllocateViewMountItem implements MountItem {
|
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
surfaceMountingManager.preallocateView(
|
|
65
|
-
mComponent, mReactTag, mProps, mStateWrapper, mIsLayoutable);
|
|
65
|
+
mComponent, mReactTag, mProps, mStateWrapper, mEventEmitterWrapper, mIsLayoutable);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
@Override
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
package com.facebook.react.fabric.mounting.mountitems;
|
|
9
9
|
|
|
10
10
|
import androidx.annotation.NonNull;
|
|
11
|
-
import com.facebook.react.bridge.
|
|
11
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
12
12
|
import com.facebook.react.bridge.RetryableMountingLayerException;
|
|
13
13
|
import com.facebook.react.fabric.mounting.MountingManager;
|
|
14
14
|
|
|
@@ -38,7 +38,7 @@ public class SendAccessibilityEvent implements MountItem {
|
|
|
38
38
|
// due to race conditions (like the view disappearing after the event is
|
|
39
39
|
// queued and before it executes), we log a soft exception and continue along.
|
|
40
40
|
// Other categories of errors will still cause a hard crash.
|
|
41
|
-
|
|
41
|
+
ReactSoftExceptionLogger.logSoftException(TAG, e);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
|
|
@@ -15,7 +15,7 @@ LOCAL_C_INCLUDES := $(LOCAL_PATH)
|
|
|
15
15
|
|
|
16
16
|
LOCAL_CFLAGS += -fvisibility=hidden -fexceptions -frtti
|
|
17
17
|
|
|
18
|
-
LOCAL_STATIC_LIBRARIES :=
|
|
19
|
-
LOCAL_SHARED_LIBRARIES := libfolly_json libfb libfbjni libreactnativejni
|
|
18
|
+
LOCAL_STATIC_LIBRARIES := libjsireact jscruntime
|
|
19
|
+
LOCAL_SHARED_LIBRARIES := libfolly_json libfb libfbjni libreactnativejni libjsi
|
|
20
20
|
|
|
21
21
|
include $(BUILD_SHARED_LIBRARY)
|
|
@@ -11,7 +11,7 @@ import android.os.Handler;
|
|
|
11
11
|
import android.util.SparseArray;
|
|
12
12
|
import com.facebook.infer.annotation.Assertions;
|
|
13
13
|
import com.facebook.react.bridge.ReactContext;
|
|
14
|
-
import com.facebook.react.bridge.
|
|
14
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
15
15
|
import com.facebook.react.bridge.UiThreadUtil;
|
|
16
16
|
import com.facebook.react.common.LifecycleState;
|
|
17
17
|
import com.facebook.react.modules.appregistry.AppRegistry;
|
|
@@ -112,7 +112,7 @@ public class HeadlessJsTaskContext {
|
|
|
112
112
|
.getJSModule(AppRegistry.class)
|
|
113
113
|
.startHeadlessTask(taskId, taskConfig.getTaskKey(), taskConfig.getData());
|
|
114
114
|
} else {
|
|
115
|
-
|
|
115
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
116
116
|
"HeadlessJsTaskContext",
|
|
117
117
|
new RuntimeException("Cannot start headless task, CatalystInstance not available"));
|
|
118
118
|
}
|
|
@@ -19,5 +19,5 @@ rn_android_library(
|
|
|
19
19
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
20
20
|
react_native_target("java/com/facebook/react/modules/core:core"),
|
|
21
21
|
],
|
|
22
|
-
exported_deps = [react_native_root_target("
|
|
22
|
+
exported_deps = [react_native_root_target(":FBReactNativeSpec")],
|
|
23
23
|
)
|
|
@@ -17,5 +17,5 @@ rn_android_library(
|
|
|
17
17
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
18
18
|
react_native_target("java/com/facebook/react/modules/core:core"),
|
|
19
19
|
],
|
|
20
|
-
exported_deps = [react_native_root_target("
|
|
20
|
+
exported_deps = [react_native_root_target(":FBReactNativeSpec")],
|
|
21
21
|
)
|
|
@@ -17,5 +17,5 @@ rn_android_library(
|
|
|
17
17
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
18
18
|
react_native_target("java/com/facebook/react/modules/core:core"),
|
|
19
19
|
],
|
|
20
|
-
exported_deps = [react_native_root_target("
|
|
20
|
+
exported_deps = [react_native_root_target(":FBReactNativeSpec")],
|
|
21
21
|
)
|
|
@@ -20,9 +20,15 @@ import com.facebook.react.bridge.ReactContext;
|
|
|
20
20
|
import java.io.FileNotFoundException;
|
|
21
21
|
import java.io.IOException;
|
|
22
22
|
import java.io.OutputStream;
|
|
23
|
+
import java.util.concurrent.ExecutorService;
|
|
24
|
+
import java.util.concurrent.Executors;
|
|
23
25
|
|
|
24
26
|
public final class BlobProvider extends ContentProvider {
|
|
25
27
|
|
|
28
|
+
private static final int PIPE_CAPACITY = 65536;
|
|
29
|
+
|
|
30
|
+
private ExecutorService executor = Executors.newSingleThreadExecutor();
|
|
31
|
+
|
|
26
32
|
@Override
|
|
27
33
|
public boolean onCreate() {
|
|
28
34
|
return true;
|
|
@@ -72,7 +78,7 @@ public final class BlobProvider extends ContentProvider {
|
|
|
72
78
|
throw new RuntimeException("No blob module associated with BlobProvider");
|
|
73
79
|
}
|
|
74
80
|
|
|
75
|
-
byte[] data = blobModule.resolve(uri);
|
|
81
|
+
final byte[] data = blobModule.resolve(uri);
|
|
76
82
|
if (data == null) {
|
|
77
83
|
throw new FileNotFoundException("Cannot open " + uri.toString() + ", blob not found.");
|
|
78
84
|
}
|
|
@@ -84,12 +90,34 @@ public final class BlobProvider extends ContentProvider {
|
|
|
84
90
|
return null;
|
|
85
91
|
}
|
|
86
92
|
ParcelFileDescriptor readSide = pipe[0];
|
|
87
|
-
ParcelFileDescriptor writeSide = pipe[1];
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
+
final ParcelFileDescriptor writeSide = pipe[1];
|
|
94
|
+
|
|
95
|
+
if (data.length <= PIPE_CAPACITY) {
|
|
96
|
+
// If the blob length is less than or equal to pipe capacity (64 KB),
|
|
97
|
+
// we can write the data synchronously to the pipe buffer.
|
|
98
|
+
try (OutputStream outputStream = new ParcelFileDescriptor.AutoCloseOutputStream(writeSide)) {
|
|
99
|
+
outputStream.write(data);
|
|
100
|
+
} catch (IOException exception) {
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
} else {
|
|
104
|
+
// For blobs larger than 64 KB, a synchronous write would fill up the whole buffer
|
|
105
|
+
// and block forever, because there are no readers to empty the buffer.
|
|
106
|
+
// Writing from a separate thread allows us to return the read side descriptor
|
|
107
|
+
// immediately so that both writer and reader can work concurrently.
|
|
108
|
+
// Reading from the pipe empties the buffer and allows the next chunks to be written.
|
|
109
|
+
Runnable writer =
|
|
110
|
+
new Runnable() {
|
|
111
|
+
public void run() {
|
|
112
|
+
try (OutputStream outputStream =
|
|
113
|
+
new ParcelFileDescriptor.AutoCloseOutputStream(writeSide)) {
|
|
114
|
+
outputStream.write(data);
|
|
115
|
+
} catch (IOException exception) {
|
|
116
|
+
// no-op
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
executor.submit(writer);
|
|
93
121
|
}
|
|
94
122
|
|
|
95
123
|
return readSide;
|
|
@@ -15,7 +15,7 @@ LOCAL_C_INCLUDES := $(LOCAL_PATH)
|
|
|
15
15
|
|
|
16
16
|
LOCAL_CFLAGS += -fvisibility=hidden -fexceptions -frtti
|
|
17
17
|
|
|
18
|
-
LOCAL_STATIC_LIBRARIES :=
|
|
19
|
-
LOCAL_SHARED_LIBRARIES := libfolly_json libfb libfbjni libreactnativejni
|
|
18
|
+
LOCAL_STATIC_LIBRARIES := libjsireact
|
|
19
|
+
LOCAL_SHARED_LIBRARIES := libfolly_json libfb libfbjni libreactnativejni libjsi
|
|
20
20
|
|
|
21
21
|
include $(BUILD_SHARED_LIBRARY)
|
|
@@ -18,5 +18,5 @@ rn_android_library(
|
|
|
18
18
|
react_native_target("java/com/facebook/react/devsupport:interfaces"),
|
|
19
19
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
20
20
|
],
|
|
21
|
-
exported_deps = [react_native_root_target("
|
|
21
|
+
exported_deps = [react_native_root_target(":FBReactNativeSpec")],
|
|
22
22
|
)
|
|
@@ -10,7 +10,7 @@ package com.facebook.react.modules.core;
|
|
|
10
10
|
import com.facebook.react.bridge.WritableArray;
|
|
11
11
|
|
|
12
12
|
/** An interface used by {@link JavaTimerManager} to access and call JS timers from Java. */
|
|
13
|
-
public interface
|
|
13
|
+
public interface JavaScriptTimerExecutor {
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Calls the JS callback(s) associated with the timer ID(s). Also unregisters the callback if the
|