react-native-tvos 0.85.2-0 → 0.86.0-0rc2
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/Animated/AnimatedImplementation.js +6 -6
- package/Libraries/Animated/NativeAnimatedAllowlist.js +21 -0
- package/Libraries/Animated/components/AnimatedImage.js +3 -3
- package/Libraries/Animated/components/AnimatedText.js +3 -3
- package/Libraries/Animated/createAnimatedComponent.js +7 -7
- package/Libraries/Animated/nodes/AnimatedAddition.js +1 -1
- package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +1 -1
- package/Libraries/Animated/nodes/AnimatedDivision.js +1 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +22 -24
- package/Libraries/Animated/nodes/AnimatedModulo.js +1 -1
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +1 -1
- package/Libraries/Animated/nodes/AnimatedStyle.js +2 -2
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +1 -1
- package/Libraries/Animated/nodes/AnimatedTracking.js +1 -1
- package/Libraries/Animated/nodes/AnimatedValue.js +2 -2
- package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +4 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.h +5 -5
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +2 -2
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/BatchedBridge/NativeModules.js +1 -1
- package/Libraries/Blob/RCTBlobCollector.h +1 -1
- package/Libraries/Blob/RCTBlobCollector.mm +14 -26
- package/Libraries/Blob/RCTBlobManager.mm +11 -3
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +29 -23
- package/Libraries/Components/Keyboard/Keyboard.js +4 -2
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -27
- package/Libraries/Components/Pressable/Pressable.d.ts +1 -0
- package/Libraries/Components/Pressable/Pressable.js +2 -2
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +7 -8
- package/Libraries/Components/ScrollView/ScrollView.js +3 -3
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +2 -2
- package/Libraries/Components/Switch/Switch.js +1 -1
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +25 -1
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -2
- package/Libraries/Components/TextInput/TextInput.d.ts +24 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +24 -0
- package/Libraries/Components/TextInput/TextInput.js +5 -5
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +5 -5
- package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
- package/Libraries/Components/Touchable/PooledClass.js +4 -4
- package/Libraries/Components/Touchable/Touchable.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -10
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +10 -2
- package/Libraries/Components/View/View.js +96 -91
- package/Libraries/Components/View/ViewPropTypes.js +3 -1
- package/Libraries/Core/Devtools/loadBundleFromServer.js +8 -0
- package/Libraries/Core/ExceptionsManager.js +2 -8
- package/Libraries/Core/InitializeCore.js +0 -13
- package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
- package/Libraries/Core/ReactNativeVersion.js +3 -3
- package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +2 -2
- package/Libraries/Core/Timers/immediateShim.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +1 -1
- package/Libraries/Core/setUpSegmentFetcher.js +1 -1
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +9 -5
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -2
- package/Libraries/Image/Image.android.js +15 -35
- package/Libraries/Image/RCTImageLoader.mm +4 -2
- package/Libraries/Image/RelativeImageStub.js +2 -2
- package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -12
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +1 -1
- package/Libraries/LogBox/LogBox.js +2 -2
- package/Libraries/LogBox/LogBoxInspectorContainer.js +24 -2
- package/Libraries/LogBox/LogBoxNotificationContainer.js +27 -4
- package/Libraries/LogBox/UI/LogBoxButton.js +47 -33
- package/Libraries/LogBox/UI/LogBoxInspector.js +61 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -0
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +3 -1
- package/Libraries/LogBox/UI/LogBoxNotification.js +2 -0
- package/Libraries/Modal/Modal.js +12 -7
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
- package/Libraries/NativeComponent/BaseViewConfig.android.js +15 -0
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +17 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
- package/Libraries/NativeComponent/ViewConfigIgnore.js +4 -2
- package/Libraries/Network/RCTNetworking.android.js +1 -1
- package/Libraries/Network/RCTNetworking.ios.js +1 -1
- package/Libraries/Network/RCTNetworking.js.flow +1 -1
- package/Libraries/Network/RCTNetworking.mm +1 -2
- package/Libraries/Network/XMLHttpRequest.js +29 -12
- package/Libraries/Pressability/Pressability.js +2 -2
- package/Libraries/ReactNative/AppContainer-dev.js +2 -3
- package/Libraries/ReactNative/AppContainer-prod.js +1 -2
- package/Libraries/ReactNative/AppContainer.js +0 -1
- package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
- package/Libraries/ReactNative/AppRegistry.flow.js +1 -2
- package/Libraries/ReactNative/AppRegistryImpl.js +16 -16
- package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
- package/Libraries/ReactNative/FabricUIManager.js +6 -0
- package/Libraries/{Utilities → ReactNative}/IPerformanceLogger.d.ts +8 -5
- package/Libraries/{Utilities/IPerformanceLogger.js → ReactNative/IPerformanceLogger.flow.js} +12 -9
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +14 -14
- package/Libraries/ReactNative/RendererImplementation.js +26 -143
- package/Libraries/ReactNative/RendererProxy.js +4 -15
- package/Libraries/ReactNative/renderApplication.js +33 -59
- package/Libraries/ReactNative/requireNativeComponent.js +3 -3
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -0
- package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -32
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +3 -3
- package/Libraries/StyleSheet/StyleSheet.js +1 -1
- package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
- package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
- package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +6 -8
- package/Libraries/StyleSheet/StyleSheetTypes.js +11 -11
- package/Libraries/StyleSheet/flattenStyle.js +1 -1
- package/Libraries/StyleSheet/private/_TransformStyle.js +1 -1
- package/Libraries/StyleSheet/processBackgroundImage.js +19 -9
- package/Libraries/StyleSheet/processBackgroundSize.js +7 -12
- package/Libraries/StyleSheet/processBoxShadow.js +9 -47
- package/Libraries/StyleSheet/processFilter.js +16 -8
- package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
- package/Libraries/Text/Text.js +4 -4
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +16 -2
- package/Libraries/Text/TextNativeComponent.js +4 -4
- package/Libraries/TurboModule/RCTExport.js +1 -1
- package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
- package/Libraries/Types/CodegenTypes.js +7 -4
- package/Libraries/Types/ReactDevToolsTypes.js +1 -1
- package/Libraries/Utilities/BackHandler.android.js +11 -3
- package/Libraries/Utilities/BackHandler.d.ts +11 -1
- package/Libraries/Utilities/BackHandler.ios.js +3 -1
- package/Libraries/Utilities/BackHandler.js.flow +6 -1
- package/Libraries/Utilities/HMRClient.js +28 -1
- package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
- package/Libraries/Utilities/ReactNativeTestTools.js +4 -4
- package/Libraries/Utilities/binaryToBase64.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +2 -2
- package/Libraries/Utilities/codegenNativeComponent.js +4 -4
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -2
- package/Libraries/Utilities/stringifySafe.js +1 -1
- package/Libraries/promiseRejectionTrackingOptions.js +1 -1
- package/Libraries/vendor/core/ErrorUtils.js +4 -4
- package/Libraries/vendor/emitter/EventEmitter.js +27 -13
- package/React/Base/RCTBundleURLProvider.h +19 -1
- package/React/Base/RCTBundleURLProvider.mm +82 -0
- package/React/Base/RCTDefines.h +1 -1
- package/React/Base/RCTMultipartDataTask.h +1 -1
- package/React/Base/RCTMultipartDataTask.m +0 -3
- package/React/Base/RCTRootView.h +4 -0
- package/React/Base/RCTRootViewDelegate.h +5 -2
- package/React/Base/RCTVersion.m +3 -3
- package/React/Base/Surface/RCTSurface.h +3 -0
- package/React/Base/Surface/RCTSurfaceDelegate.h +7 -3
- package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
- package/React/Base/Surface/RCTSurfaceView.mm +2 -1
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +0 -3
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -1
- package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
- package/React/CoreModules/RCTJscSafeUrl+Internal.h +23 -0
- package/React/CoreModules/RCTJscSafeUrl.mm +38 -0
- package/React/CoreModules/RCTRedBox+Internal.h +42 -0
- package/React/CoreModules/RCTRedBox.mm +30 -471
- package/React/CoreModules/RCTRedBox2AnsiParser+Internal.h +22 -0
- package/React/CoreModules/RCTRedBox2AnsiParser.mm +55 -0
- package/React/CoreModules/RCTRedBox2Controller+Internal.h +34 -0
- package/React/CoreModules/RCTRedBox2Controller.mm +764 -0
- package/React/CoreModules/RCTRedBox2ErrorParser+Internal.h +46 -0
- package/React/CoreModules/RCTRedBox2ErrorParser.mm +57 -0
- package/React/CoreModules/RCTRedBoxController+Internal.h +31 -0
- package/React/CoreModules/RCTRedBoxController.mm +447 -0
- package/React/CoreModules/RCTRedBoxHMRClient+Internal.h +26 -0
- package/React/CoreModules/RCTRedBoxHMRClient.mm +125 -0
- package/React/CoreModules/RCTWebSocketModule.mm +45 -6
- package/React/CoreModules/React-CoreModules.podspec +1 -0
- package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -1
- package/React/DevSupport/RCTFrameTimingsObserver.h +24 -0
- package/React/DevSupport/RCTFrameTimingsObserver.mm +298 -0
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -0
- package/React/DevSupport/RCTPackagerConnection.mm +13 -11
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +148 -43
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
- package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +1 -1
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +70 -8
- package/React/Fabric/RCTConversions.h +14 -0
- package/React/Fabric/RCTScheduler.mm +18 -0
- package/React/Fabric/RCTSurfacePointerHandler.mm +8 -2
- package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -0
- package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
- package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
- package/React/Modules/RCTUIManager.mm +1 -1
- package/React/Profiler/RCTProfile.h +5 -0
- package/React/Profiler/RCTProfile.m +2 -1
- package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
- package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
- package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +5 -5
- package/React/Views/RCTLayout.m +4 -3
- package/React/Views/ScrollView/RCTScrollView.h +6 -2
- package/ReactAndroid/api/ReactAndroid.api +37 -27
- package/ReactAndroid/build.gradle.kts +28 -21
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/hermes-engine/build.gradle.kts +17 -0
- package/ReactAndroid/publish.gradle +20 -46
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +40 -110
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +32 -87
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +9 -99
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +7 -28
- package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +2 -19
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +36 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +9 -34
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +135 -35
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +10 -10
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +15 -13
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +139 -43
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +223 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +34 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +104 -65
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +9 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +172 -36
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +71 -29
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +121 -51
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +25 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +26 -12
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +134 -57
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +25 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -9
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +40 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +10 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +59 -62
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +45 -36
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +68 -15
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +8 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +21 -19
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +77 -72
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +7 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +20 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +18 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +11 -71
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -17
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +29 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -9
- package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +27 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +18 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +20 -21
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +19 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +14 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +5 -162
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +71 -97
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +7 -13
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +40 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +84 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +41 -65
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +85 -13
- package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +5 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +3 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +39 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +20 -12
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +101 -0
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +17 -1
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +22 -0
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +2 -0
- package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
- package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +47 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +20 -6
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +24 -1
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -0
- package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
- package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +167 -69
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +36 -15
- package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
- package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
- package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
- package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +24 -0
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +25 -4
- package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
- package/ReactCommon/React-Fabric.podspec +13 -0
- package/ReactCommon/React-FabricComponents.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
- package/ReactCommon/jsc/JSCRuntime.cpp +9 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -0
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
- package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
- package/ReactCommon/jsi/jsi/decorator.h +93 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
- package/ReactCommon/jsi/jsi/jsi.cpp +208 -27
- package/ReactCommon/jsi/jsi/jsi.h +553 -224
- package/ReactCommon/jsi/jsi/test/testlib.cpp +453 -0
- package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +1 -1
- package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
- package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +46 -1
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +7 -1
- package/ReactCommon/jsinspector-modern/HostTarget.h +50 -0
- package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +1 -1
- package/ReactCommon/jsinspector-modern/HostTargetTracing.h +4 -4
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +18 -2
- package/ReactCommon/jsinspector-modern/InspectorFlags.h +17 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -2
- package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +3 -0
- package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +1 -1
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +19 -0
- package/ReactCommon/jsinspector-modern/RuntimeAgent.h +7 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +33 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +6 -0
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +10 -0
- package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +12 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +3 -2
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +1 -0
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +10 -0
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +3 -1
- package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +1 -0
- package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +7 -3
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +52 -29
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.h +6 -6
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracerSection.h +113 -0
- package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +12 -5
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +3 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +42 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.h +7 -0
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +0 -1
- package/ReactCommon/logger/react_native_log.cpp +0 -1
- package/ReactCommon/react/bridging/Array.h +1 -1
- package/ReactCommon/react/debug/CMakeLists.txt +2 -1
- package/ReactCommon/react/debug/React-debug.podspec +7 -1
- package/ReactCommon/react/debug/redbox/AnsiParser.cpp +139 -0
- package/ReactCommon/react/debug/redbox/AnsiParser.h +35 -0
- package/ReactCommon/react/debug/redbox/JscSafeUrl.cpp +179 -0
- package/ReactCommon/react/debug/redbox/JscSafeUrl.h +27 -0
- package/ReactCommon/react/debug/redbox/RedBoxErrorParser.cpp +171 -0
- package/ReactCommon/react/debug/redbox/RedBoxErrorParser.h +40 -0
- package/ReactCommon/react/debug/redbox/tests/AnsiParserTest.cpp +97 -0
- package/ReactCommon/react/debug/redbox/tests/JscSafeUrlTest.cpp +173 -0
- package/ReactCommon/react/debug/redbox/tests/RedBoxErrorParserTest.cpp +107 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +49 -21
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +60 -25
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +267 -141
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +28 -14
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +48 -20
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +106 -43
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -3
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +14 -7
- package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
- package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -9
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +0 -1
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +2 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +14 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +2 -0
- package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +2 -2
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +60 -25
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +25 -11
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -2
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +4 -0
- package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +66 -0
- package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
- package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
- package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
- package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
- package/ReactCommon/react/networking/NetworkReporter.h +0 -1
- package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
- package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
- package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +18 -6
- package/ReactCommon/react/performance/timeline/PerformanceObserver.h +2 -0
- package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -12
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +1 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +3 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -3
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +4 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +1 -1
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +0 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
- package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
- package/ReactCommon/react/renderer/animations/utils.h +12 -1
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
- package/ReactCommon/react/renderer/attributedstring/conversions.h +104 -3
- package/ReactCommon/react/renderer/components/image/conversions.h +2 -3
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
- package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
- package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +531 -21
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -0
- package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -0
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +8 -0
- package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
- package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
- package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +5 -0
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +33 -28
- package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
- package/ReactCommon/react/renderer/components/view/conversions.h +44 -28
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +53 -5
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
- package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
- package/ReactCommon/react/renderer/{graphics/DoubleConversions.h → components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h} +2 -4
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
- package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
- package/ReactCommon/react/renderer/components/view/propsConversions.h +8 -2
- package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +86 -0
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +34 -0
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +67 -2
- package/ReactCommon/react/renderer/core/EventEmitter.h +25 -0
- package/ReactCommon/react/renderer/core/EventPipe.h +3 -1
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +18 -10
- package/ReactCommon/react/renderer/core/EventTarget.cpp +8 -5
- package/ReactCommon/react/renderer/core/LayoutContext.h +9 -2
- package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
- package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
- package/ReactCommon/react/renderer/core/Props.cpp +20 -0
- package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
- package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
- package/ReactCommon/react/renderer/core/ShadowNode.h +2 -2
- package/ReactCommon/react/renderer/core/conversions.h +4 -0
- package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
- package/ReactCommon/react/renderer/core/propsConversions.h +1 -1
- package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
- package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
- package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +1 -1
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
- package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
- package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
- package/ReactCommon/react/renderer/graphics/BlendMode.h +5 -0
- package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
- package/ReactCommon/react/renderer/graphics/LinearGradient.h +3 -0
- package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -0
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
- package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +0 -5
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +2 -2
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +0 -4
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +5 -1
- package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +12 -4
- package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +307 -4
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +27 -2
- package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +95 -0
- package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +212 -0
- package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +154 -0
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +314 -18
- package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +38 -20
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +20 -22
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +76 -3
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +12 -0
- package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +5 -0
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -7
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +2 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +16 -1
- package/ReactCommon/react/renderer/uimanager/UIManager.h +8 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +347 -5
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +5 -3
- package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +5 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
- package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
- package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +520 -0
- package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +161 -0
- package/ReactCommon/react/runtime/TimerManager.cpp +4 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +152 -0
- package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
- package/ReactCommon/react/timing/React-timing.podspec +2 -0
- package/ReactCommon/react/timing/primitives.h +33 -1
- package/ReactCommon/{jsinspector-modern → react/utils}/Base64.h +2 -2
- package/ReactCommon/yoga/yoga/YGEnums.cpp +32 -0
- package/ReactCommon/yoga/yoga/YGEnums.h +20 -4
- package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
- package/ReactCommon/yoga/yoga/YGNode.h +1 -1
- package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
- package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +40 -9
- package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +106 -14
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
- package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
- package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
- package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
- package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
- package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
- package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
- package/ReactCommon/yoga/yoga/event/event.h +1 -0
- package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
- package/ReactCommon/yoga/yoga/node/Node.h +4 -4
- package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
- package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
- package/ReactCommon/yoga/yoga/style/Style.h +261 -71
- package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -1
- package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
- package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
- package/cli.js +1 -1
- package/flow/HermesInternalType.js +1 -1
- package/flow/bom.js.flow +95 -3
- package/flow/dom.js.flow +89 -89
- package/gradle/libs.versions.toml +3 -1
- package/index.js +30 -3
- package/index.js.flow +23 -1
- package/package.json +13 -13
- package/react-native.config.js +3 -3
- package/scripts/cocoapods/rncore.rb +65 -11
- package/scripts/cocoapods/rndependencies.rb +65 -11
- package/scripts/cocoapods/utils.rb +53 -0
- package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +13 -4
- package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +17 -6
- package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +1 -1
- package/scripts/codegen/generate-artifacts-executor/index.js +2 -0
- package/scripts/codegen/generate-artifacts-executor/utils.js +1 -1
- package/scripts/codegen/generate-specs-cli-executor.js +1 -1
- package/scripts/generate-codegen-artifacts.js +20 -2
- package/scripts/generate-provider-cli.js +1 -1
- package/scripts/react_native_pods.rb +26 -2
- package/scripts/react_native_pods_utils/script_phases.rb +9 -3
- package/scripts/replace-rncore-version.js +91 -14
- package/scripts/xcode/with-environment.sh +7 -1
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-utils.rb +92 -5
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/animated/NativeAnimatedValidation.js +1 -1
- package/src/private/animated/createAnimatedPropsHook.js +2 -2
- package/src/private/components/virtualcollection/FlingConstants.js +21 -0
- package/src/private/components/virtualcollection/Virtual.js +62 -0
- package/src/private/components/virtualcollection/VirtualCollectionView.js +238 -0
- package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
- package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
- package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +13 -0
- package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
- package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
- package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
- package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
- package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
- package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +1 -1
- package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +1 -1
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
- package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +66 -37
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -7
- package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
- package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
- package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
- package/src/private/renderer/events/ReactNativeResponder.js +687 -0
- package/src/private/renderer/events/ResponderEvent.js +40 -0
- package/src/private/renderer/events/ResponderTouchHistoryStore.js +258 -0
- package/src/private/renderer/events/dispatchNativeEvent.js +83 -0
- package/src/private/setup/setUpDOM.js +20 -0
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
- package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAppState.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +2 -2
- package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeVibration.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +2 -2
- package/src/private/styles/composeStyles.js +1 -1
- package/src/private/types/HostComponent.js +1 -1
- package/src/private/utilities/toExtendedError.js +1 -1
- package/src/private/viewtransition/specs/NativeViewTransition.js +33 -0
- package/src/private/webapis/dom/events/Event.js +10 -1
- package/src/private/webapis/dom/events/EventTarget.js +60 -18
- package/src/private/webapis/dom/events/internals/EventInternals.js +18 -1
- package/src/private/webapis/dom/events/internals/EventTargetInternals.js +12 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +24 -0
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +4 -6
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +70 -1
- package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +1 -1
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +5 -9
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +2 -2
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +2 -2
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +2 -2
- package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
- package/src/private/webapis/structuredClone/structuredClone.js +1 -1
- package/src/private/webapis/webidl/PlatformObjects.js +4 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19669
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11129
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12930
- package/Libraries/Renderer/shims/ReactNative.js +0 -27
- package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
- package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
- package/Libraries/Utilities/createPerformanceLogger.js +0 -329
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -442
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
- package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
|
@@ -29,6 +29,8 @@
|
|
|
29
29
|
#include <yoga/enums/Unit.h>
|
|
30
30
|
#include <yoga/enums/Wrap.h>
|
|
31
31
|
#include <yoga/numeric/FloatOptional.h>
|
|
32
|
+
#include <yoga/style/GridLine.h>
|
|
33
|
+
#include <yoga/style/GridTrack.h>
|
|
32
34
|
#include <yoga/style/StyleLength.h>
|
|
33
35
|
#include <yoga/style/StyleSizeLength.h>
|
|
34
36
|
#include <yoga/style/StyleValuePool.h>
|
|
@@ -65,6 +67,20 @@ class YG_EXPORT Style {
|
|
|
65
67
|
justifyContent_ = value;
|
|
66
68
|
}
|
|
67
69
|
|
|
70
|
+
Justify justifyItems() const {
|
|
71
|
+
return justifyItems_;
|
|
72
|
+
}
|
|
73
|
+
void setJustifyItems(Justify value) {
|
|
74
|
+
justifyItems_ = value;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
Justify justifySelf() const {
|
|
78
|
+
return justifySelf_;
|
|
79
|
+
}
|
|
80
|
+
void setJustifySelf(Justify value) {
|
|
81
|
+
justifySelf_ = value;
|
|
82
|
+
}
|
|
83
|
+
|
|
68
84
|
Align alignContent() const {
|
|
69
85
|
return alignContent_;
|
|
70
86
|
}
|
|
@@ -191,13 +207,99 @@ class YG_EXPORT Style {
|
|
|
191
207
|
pool_.store(minDimensions_[yoga::to_underlying(axis)], value);
|
|
192
208
|
}
|
|
193
209
|
|
|
210
|
+
// Grid Container Properties
|
|
211
|
+
const GridTrackList& gridTemplateColumns() const {
|
|
212
|
+
return gridTemplateColumns_;
|
|
213
|
+
}
|
|
214
|
+
void setGridTemplateColumns(GridTrackList value) {
|
|
215
|
+
gridTemplateColumns_ = std::move(value);
|
|
216
|
+
}
|
|
217
|
+
void resizeGridTemplateColumns(size_t count) {
|
|
218
|
+
gridTemplateColumns_.resize(count);
|
|
219
|
+
}
|
|
220
|
+
void setGridTemplateColumnAt(size_t index, GridTrackSize value) {
|
|
221
|
+
gridTemplateColumns_[index] = value;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
const GridTrackList& gridTemplateRows() const {
|
|
225
|
+
return gridTemplateRows_;
|
|
226
|
+
}
|
|
227
|
+
void setGridTemplateRows(GridTrackList value) {
|
|
228
|
+
gridTemplateRows_ = std::move(value);
|
|
229
|
+
}
|
|
230
|
+
void resizeGridTemplateRows(size_t count) {
|
|
231
|
+
gridTemplateRows_.resize(count);
|
|
232
|
+
}
|
|
233
|
+
void setGridTemplateRowAt(size_t index, GridTrackSize value) {
|
|
234
|
+
gridTemplateRows_[index] = value;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
const GridTrackList& gridAutoColumns() const {
|
|
238
|
+
return gridAutoColumns_;
|
|
239
|
+
}
|
|
240
|
+
void setGridAutoColumns(GridTrackList value) {
|
|
241
|
+
gridAutoColumns_ = std::move(value);
|
|
242
|
+
}
|
|
243
|
+
void resizeGridAutoColumns(size_t count) {
|
|
244
|
+
gridAutoColumns_.resize(count);
|
|
245
|
+
}
|
|
246
|
+
void setGridAutoColumnAt(size_t index, GridTrackSize value) {
|
|
247
|
+
gridAutoColumns_[index] = value;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
const GridTrackList& gridAutoRows() const {
|
|
251
|
+
return gridAutoRows_;
|
|
252
|
+
}
|
|
253
|
+
void setGridAutoRows(GridTrackList value) {
|
|
254
|
+
gridAutoRows_ = std::move(value);
|
|
255
|
+
}
|
|
256
|
+
void resizeGridAutoRows(size_t count) {
|
|
257
|
+
gridAutoRows_.resize(count);
|
|
258
|
+
}
|
|
259
|
+
void setGridAutoRowAt(size_t index, GridTrackSize value) {
|
|
260
|
+
gridAutoRows_[index] = value;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
// Grid Item Properties
|
|
264
|
+
const GridLine& gridColumnStart() const {
|
|
265
|
+
return gridColumnStart_;
|
|
266
|
+
}
|
|
267
|
+
void setGridColumnStart(GridLine value) {
|
|
268
|
+
gridColumnStart_ = value;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
const GridLine& gridColumnEnd() const {
|
|
272
|
+
return gridColumnEnd_;
|
|
273
|
+
}
|
|
274
|
+
void setGridColumnEnd(GridLine value) {
|
|
275
|
+
gridColumnEnd_ = value;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
const GridLine& gridRowStart() const {
|
|
279
|
+
return gridRowStart_;
|
|
280
|
+
}
|
|
281
|
+
void setGridRowStart(GridLine value) {
|
|
282
|
+
gridRowStart_ = value;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
const GridLine& gridRowEnd() const {
|
|
286
|
+
return gridRowEnd_;
|
|
287
|
+
}
|
|
288
|
+
void setGridRowEnd(GridLine value) {
|
|
289
|
+
gridRowEnd_ = value;
|
|
290
|
+
}
|
|
291
|
+
|
|
194
292
|
FloatOptional resolvedMinDimension(
|
|
195
293
|
Direction direction,
|
|
196
294
|
Dimension axis,
|
|
197
295
|
float referenceLength,
|
|
198
296
|
float ownerWidth) const {
|
|
199
|
-
|
|
200
|
-
if (
|
|
297
|
+
const auto handle = minDimensions_[yoga::to_underlying(axis)];
|
|
298
|
+
if (handle.isUndefined()) {
|
|
299
|
+
return FloatOptional{};
|
|
300
|
+
}
|
|
301
|
+
FloatOptional value = resolve(handle, referenceLength);
|
|
302
|
+
if (boxSizing() == BoxSizing::BorderBox || !value.isDefined()) {
|
|
201
303
|
return value;
|
|
202
304
|
}
|
|
203
305
|
|
|
@@ -221,8 +323,12 @@ class YG_EXPORT Style {
|
|
|
221
323
|
Dimension axis,
|
|
222
324
|
float referenceLength,
|
|
223
325
|
float ownerWidth) const {
|
|
224
|
-
|
|
225
|
-
if (
|
|
326
|
+
const auto handle = maxDimensions_[yoga::to_underlying(axis)];
|
|
327
|
+
if (handle.isUndefined()) {
|
|
328
|
+
return FloatOptional{};
|
|
329
|
+
}
|
|
330
|
+
FloatOptional value = resolve(handle, referenceLength);
|
|
331
|
+
if (boxSizing() == BoxSizing::BorderBox || !value.isDefined()) {
|
|
226
332
|
return value;
|
|
227
333
|
}
|
|
228
334
|
|
|
@@ -311,8 +417,7 @@ class YG_EXPORT Style {
|
|
|
311
417
|
FlexDirection axis,
|
|
312
418
|
Direction direction,
|
|
313
419
|
float axisSize) const {
|
|
314
|
-
return computePosition(flexStartEdge(axis), direction)
|
|
315
|
-
.resolve(axisSize)
|
|
420
|
+
return resolve(computePosition(flexStartEdge(axis), direction), axisSize)
|
|
316
421
|
.unwrapOrDefault(0.0f);
|
|
317
422
|
}
|
|
318
423
|
|
|
@@ -320,8 +425,9 @@ class YG_EXPORT Style {
|
|
|
320
425
|
FlexDirection axis,
|
|
321
426
|
Direction direction,
|
|
322
427
|
float axisSize) const {
|
|
323
|
-
return
|
|
324
|
-
|
|
428
|
+
return resolve(
|
|
429
|
+
computePosition(inlineStartEdge(axis, direction), direction),
|
|
430
|
+
axisSize)
|
|
325
431
|
.unwrapOrDefault(0.0f);
|
|
326
432
|
}
|
|
327
433
|
|
|
@@ -329,8 +435,7 @@ class YG_EXPORT Style {
|
|
|
329
435
|
FlexDirection axis,
|
|
330
436
|
Direction direction,
|
|
331
437
|
float axisSize) const {
|
|
332
|
-
return computePosition(flexEndEdge(axis), direction)
|
|
333
|
-
.resolve(axisSize)
|
|
438
|
+
return resolve(computePosition(flexEndEdge(axis), direction), axisSize)
|
|
334
439
|
.unwrapOrDefault(0.0f);
|
|
335
440
|
}
|
|
336
441
|
|
|
@@ -338,8 +443,9 @@ class YG_EXPORT Style {
|
|
|
338
443
|
FlexDirection axis,
|
|
339
444
|
Direction direction,
|
|
340
445
|
float axisSize) const {
|
|
341
|
-
return
|
|
342
|
-
|
|
446
|
+
return resolve(
|
|
447
|
+
computePosition(inlineEndEdge(axis, direction), direction),
|
|
448
|
+
axisSize)
|
|
343
449
|
.unwrapOrDefault(0.0f);
|
|
344
450
|
}
|
|
345
451
|
|
|
@@ -347,8 +453,7 @@ class YG_EXPORT Style {
|
|
|
347
453
|
FlexDirection axis,
|
|
348
454
|
Direction direction,
|
|
349
455
|
float widthSize) const {
|
|
350
|
-
return computeMargin(flexStartEdge(axis), direction)
|
|
351
|
-
.resolve(widthSize)
|
|
456
|
+
return resolve(computeMargin(flexStartEdge(axis), direction), widthSize)
|
|
352
457
|
.unwrapOrDefault(0.0f);
|
|
353
458
|
}
|
|
354
459
|
|
|
@@ -356,8 +461,9 @@ class YG_EXPORT Style {
|
|
|
356
461
|
FlexDirection axis,
|
|
357
462
|
Direction direction,
|
|
358
463
|
float widthSize) const {
|
|
359
|
-
return
|
|
360
|
-
|
|
464
|
+
return resolve(
|
|
465
|
+
computeMargin(inlineStartEdge(axis, direction), direction),
|
|
466
|
+
widthSize)
|
|
361
467
|
.unwrapOrDefault(0.0f);
|
|
362
468
|
}
|
|
363
469
|
|
|
@@ -365,8 +471,7 @@ class YG_EXPORT Style {
|
|
|
365
471
|
FlexDirection axis,
|
|
366
472
|
Direction direction,
|
|
367
473
|
float widthSize) const {
|
|
368
|
-
return computeMargin(flexEndEdge(axis), direction)
|
|
369
|
-
.resolve(widthSize)
|
|
474
|
+
return resolve(computeMargin(flexEndEdge(axis), direction), widthSize)
|
|
370
475
|
.unwrapOrDefault(0.0f);
|
|
371
476
|
}
|
|
372
477
|
|
|
@@ -374,36 +479,36 @@ class YG_EXPORT Style {
|
|
|
374
479
|
FlexDirection axis,
|
|
375
480
|
Direction direction,
|
|
376
481
|
float widthSize) const {
|
|
377
|
-
return
|
|
378
|
-
|
|
482
|
+
return resolve(
|
|
483
|
+
computeMargin(inlineEndEdge(axis, direction), direction),
|
|
484
|
+
widthSize)
|
|
379
485
|
.unwrapOrDefault(0.0f);
|
|
380
486
|
}
|
|
381
487
|
|
|
382
488
|
float computeFlexStartBorder(FlexDirection axis, Direction direction) const {
|
|
383
489
|
return maxOrDefined(
|
|
384
|
-
computeBorder(flexStartEdge(axis), direction)
|
|
490
|
+
resolve(computeBorder(flexStartEdge(axis), direction), 0.0f).unwrap(),
|
|
385
491
|
0.0f);
|
|
386
492
|
}
|
|
387
493
|
|
|
388
494
|
float computeInlineStartBorder(FlexDirection axis, Direction direction)
|
|
389
495
|
const {
|
|
390
496
|
return maxOrDefined(
|
|
391
|
-
|
|
392
|
-
|
|
497
|
+
resolve(
|
|
498
|
+
computeBorder(inlineStartEdge(axis, direction), direction), 0.0f)
|
|
393
499
|
.unwrap(),
|
|
394
500
|
0.0f);
|
|
395
501
|
}
|
|
396
502
|
|
|
397
503
|
float computeFlexEndBorder(FlexDirection axis, Direction direction) const {
|
|
398
504
|
return maxOrDefined(
|
|
399
|
-
computeBorder(flexEndEdge(axis), direction)
|
|
505
|
+
resolve(computeBorder(flexEndEdge(axis), direction), 0.0f).unwrap(),
|
|
400
506
|
0.0f);
|
|
401
507
|
}
|
|
402
508
|
|
|
403
509
|
float computeInlineEndBorder(FlexDirection axis, Direction direction) const {
|
|
404
510
|
return maxOrDefined(
|
|
405
|
-
computeBorder(inlineEndEdge(axis, direction), direction)
|
|
406
|
-
.resolve(0.0f)
|
|
511
|
+
resolve(computeBorder(inlineEndEdge(axis, direction), direction), 0.0f)
|
|
407
512
|
.unwrap(),
|
|
408
513
|
0.0f);
|
|
409
514
|
}
|
|
@@ -413,8 +518,7 @@ class YG_EXPORT Style {
|
|
|
413
518
|
Direction direction,
|
|
414
519
|
float widthSize) const {
|
|
415
520
|
return maxOrDefined(
|
|
416
|
-
computePadding(flexStartEdge(axis), direction)
|
|
417
|
-
.resolve(widthSize)
|
|
521
|
+
resolve(computePadding(flexStartEdge(axis), direction), widthSize)
|
|
418
522
|
.unwrap(),
|
|
419
523
|
0.0f);
|
|
420
524
|
}
|
|
@@ -424,8 +528,9 @@ class YG_EXPORT Style {
|
|
|
424
528
|
Direction direction,
|
|
425
529
|
float widthSize) const {
|
|
426
530
|
return maxOrDefined(
|
|
427
|
-
|
|
428
|
-
|
|
531
|
+
resolve(
|
|
532
|
+
computePadding(inlineStartEdge(axis, direction), direction),
|
|
533
|
+
widthSize)
|
|
429
534
|
.unwrap(),
|
|
430
535
|
0.0f);
|
|
431
536
|
}
|
|
@@ -435,8 +540,7 @@ class YG_EXPORT Style {
|
|
|
435
540
|
Direction direction,
|
|
436
541
|
float widthSize) const {
|
|
437
542
|
return maxOrDefined(
|
|
438
|
-
computePadding(flexEndEdge(axis), direction)
|
|
439
|
-
.resolve(widthSize)
|
|
543
|
+
resolve(computePadding(flexEndEdge(axis), direction), widthSize)
|
|
440
544
|
.unwrap(),
|
|
441
545
|
0.0f);
|
|
442
546
|
}
|
|
@@ -446,8 +550,9 @@ class YG_EXPORT Style {
|
|
|
446
550
|
Direction direction,
|
|
447
551
|
float widthSize) const {
|
|
448
552
|
return maxOrDefined(
|
|
449
|
-
|
|
450
|
-
|
|
553
|
+
resolve(
|
|
554
|
+
computePadding(inlineEndEdge(axis, direction), direction),
|
|
555
|
+
widthSize)
|
|
451
556
|
.unwrap(),
|
|
452
557
|
0.0f);
|
|
453
558
|
}
|
|
@@ -512,7 +617,13 @@ class YG_EXPORT Style {
|
|
|
512
617
|
|
|
513
618
|
float computeGapForAxis(FlexDirection axis, float ownerSize) const {
|
|
514
619
|
auto gap = isRow(axis) ? computeColumnGap() : computeRowGap();
|
|
515
|
-
return maxOrDefined(
|
|
620
|
+
return maxOrDefined(resolve(gap, ownerSize).unwrap(), 0.0f);
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
float computeGapForDimension(Dimension dimension, float ownerSize) const {
|
|
624
|
+
auto gap =
|
|
625
|
+
dimension == Dimension::Width ? computeColumnGap() : computeRowGap();
|
|
626
|
+
return maxOrDefined(resolve(gap, ownerSize).unwrap(), 0.0f);
|
|
516
627
|
}
|
|
517
628
|
|
|
518
629
|
bool flexStartMarginIsAuto(FlexDirection axis, Direction direction) const {
|
|
@@ -523,10 +634,20 @@ class YG_EXPORT Style {
|
|
|
523
634
|
return computeMargin(flexEndEdge(axis), direction).isAuto();
|
|
524
635
|
}
|
|
525
636
|
|
|
637
|
+
bool inlineStartMarginIsAuto(FlexDirection axis, Direction direction) const {
|
|
638
|
+
return computeMargin(inlineStartEdge(axis, direction), direction).isAuto();
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
bool inlineEndMarginIsAuto(FlexDirection axis, Direction direction) const {
|
|
642
|
+
return computeMargin(inlineEndEdge(axis, direction), direction).isAuto();
|
|
643
|
+
}
|
|
644
|
+
|
|
526
645
|
bool operator==(const Style& other) const {
|
|
527
646
|
return direction_ == other.direction_ &&
|
|
528
647
|
flexDirection_ == other.flexDirection_ &&
|
|
529
648
|
justifyContent_ == other.justifyContent_ &&
|
|
649
|
+
justifyItems_ == other.justifyItems_ &&
|
|
650
|
+
justifySelf_ == other.justifySelf_ &&
|
|
530
651
|
alignContent_ == other.alignContent_ &&
|
|
531
652
|
alignItems_ == other.alignItems_ && alignSelf_ == other.alignSelf_ &&
|
|
532
653
|
positionType_ == other.positionType_ && flexWrap_ == other.flexWrap_ &&
|
|
@@ -540,12 +661,20 @@ class YG_EXPORT Style {
|
|
|
540
661
|
lengthsEqual(padding_, pool_, other.padding_, other.pool_) &&
|
|
541
662
|
lengthsEqual(border_, pool_, other.border_, other.pool_) &&
|
|
542
663
|
lengthsEqual(gap_, pool_, other.gap_, other.pool_) &&
|
|
543
|
-
|
|
544
|
-
|
|
664
|
+
sizeLengthsEqual(dimensions_, pool_, other.dimensions_, other.pool_) &&
|
|
665
|
+
sizeLengthsEqual(
|
|
545
666
|
minDimensions_, pool_, other.minDimensions_, other.pool_) &&
|
|
546
|
-
|
|
667
|
+
sizeLengthsEqual(
|
|
547
668
|
maxDimensions_, pool_, other.maxDimensions_, other.pool_) &&
|
|
548
|
-
numbersEqual(aspectRatio_, pool_, other.aspectRatio_, other.pool_)
|
|
669
|
+
numbersEqual(aspectRatio_, pool_, other.aspectRatio_, other.pool_) &&
|
|
670
|
+
gridTemplateColumns_ == other.gridTemplateColumns_ &&
|
|
671
|
+
gridTemplateRows_ == other.gridTemplateRows_ &&
|
|
672
|
+
gridAutoColumns_ == other.gridAutoColumns_ &&
|
|
673
|
+
gridAutoRows_ == other.gridAutoRows_ &&
|
|
674
|
+
gridColumnStart_ == other.gridColumnStart_ &&
|
|
675
|
+
gridColumnEnd_ == other.gridColumnEnd_ &&
|
|
676
|
+
gridRowStart_ == other.gridRowStart_ &&
|
|
677
|
+
gridRowEnd_ == other.gridRowEnd_;
|
|
549
678
|
}
|
|
550
679
|
|
|
551
680
|
private:
|
|
@@ -587,79 +716,107 @@ class YG_EXPORT Style {
|
|
|
587
716
|
});
|
|
588
717
|
}
|
|
589
718
|
|
|
590
|
-
|
|
719
|
+
static inline bool sizeLengthsEqual(
|
|
720
|
+
const StyleValueHandle& lhsHandle,
|
|
721
|
+
const StyleValuePool& lhsPool,
|
|
722
|
+
const StyleValueHandle& rhsHandle,
|
|
723
|
+
const StyleValuePool& rhsPool) {
|
|
724
|
+
return (lhsHandle.isUndefined() && rhsHandle.isUndefined()) ||
|
|
725
|
+
(lhsPool.getSize(lhsHandle) == rhsPool.getSize(rhsHandle));
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
template <size_t N>
|
|
729
|
+
static inline bool sizeLengthsEqual(
|
|
730
|
+
const std::array<StyleValueHandle, N>& lhs,
|
|
731
|
+
const StyleValuePool& lhsPool,
|
|
732
|
+
const std::array<StyleValueHandle, N>& rhs,
|
|
733
|
+
const StyleValuePool& rhsPool) {
|
|
734
|
+
return std::equal(
|
|
735
|
+
lhs.begin(),
|
|
736
|
+
lhs.end(),
|
|
737
|
+
rhs.begin(),
|
|
738
|
+
rhs.end(),
|
|
739
|
+
[&](const auto& lhs, const auto& rhs) {
|
|
740
|
+
return sizeLengthsEqual(lhs, lhsPool, rhs, rhsPool);
|
|
741
|
+
});
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
StyleValueHandle computeColumnGap() const {
|
|
591
745
|
if (gap_[yoga::to_underlying(Gutter::Column)].isDefined()) {
|
|
592
|
-
return
|
|
746
|
+
return gap_[yoga::to_underlying(Gutter::Column)];
|
|
593
747
|
} else {
|
|
594
|
-
return
|
|
748
|
+
return gap_[yoga::to_underlying(Gutter::All)];
|
|
595
749
|
}
|
|
596
750
|
}
|
|
597
751
|
|
|
598
|
-
|
|
752
|
+
StyleValueHandle computeRowGap() const {
|
|
599
753
|
if (gap_[yoga::to_underlying(Gutter::Row)].isDefined()) {
|
|
600
|
-
return
|
|
754
|
+
return gap_[yoga::to_underlying(Gutter::Row)];
|
|
601
755
|
} else {
|
|
602
|
-
return
|
|
756
|
+
return gap_[yoga::to_underlying(Gutter::All)];
|
|
603
757
|
}
|
|
604
758
|
}
|
|
605
759
|
|
|
606
|
-
|
|
607
|
-
const
|
|
760
|
+
StyleValueHandle computeLeftEdge(
|
|
761
|
+
const Edges& edges,
|
|
762
|
+
Direction layoutDirection) const {
|
|
608
763
|
if (layoutDirection == Direction::LTR &&
|
|
609
764
|
edges[yoga::to_underlying(Edge::Start)].isDefined()) {
|
|
610
|
-
return
|
|
765
|
+
return edges[yoga::to_underlying(Edge::Start)];
|
|
611
766
|
} else if (
|
|
612
767
|
layoutDirection == Direction::RTL &&
|
|
613
768
|
edges[yoga::to_underlying(Edge::End)].isDefined()) {
|
|
614
|
-
return
|
|
769
|
+
return edges[yoga::to_underlying(Edge::End)];
|
|
615
770
|
} else if (edges[yoga::to_underlying(Edge::Left)].isDefined()) {
|
|
616
|
-
return
|
|
771
|
+
return edges[yoga::to_underlying(Edge::Left)];
|
|
617
772
|
} else if (edges[yoga::to_underlying(Edge::Horizontal)].isDefined()) {
|
|
618
|
-
return
|
|
773
|
+
return edges[yoga::to_underlying(Edge::Horizontal)];
|
|
619
774
|
} else {
|
|
620
|
-
return
|
|
775
|
+
return edges[yoga::to_underlying(Edge::All)];
|
|
621
776
|
}
|
|
622
777
|
}
|
|
623
778
|
|
|
624
|
-
|
|
779
|
+
StyleValueHandle computeTopEdge(const Edges& edges) const {
|
|
625
780
|
if (edges[yoga::to_underlying(Edge::Top)].isDefined()) {
|
|
626
|
-
return
|
|
781
|
+
return edges[yoga::to_underlying(Edge::Top)];
|
|
627
782
|
} else if (edges[yoga::to_underlying(Edge::Vertical)].isDefined()) {
|
|
628
|
-
return
|
|
783
|
+
return edges[yoga::to_underlying(Edge::Vertical)];
|
|
629
784
|
} else {
|
|
630
|
-
return
|
|
785
|
+
return edges[yoga::to_underlying(Edge::All)];
|
|
631
786
|
}
|
|
632
787
|
}
|
|
633
788
|
|
|
634
|
-
|
|
635
|
-
const
|
|
789
|
+
StyleValueHandle computeRightEdge(
|
|
790
|
+
const Edges& edges,
|
|
791
|
+
Direction layoutDirection) const {
|
|
636
792
|
if (layoutDirection == Direction::LTR &&
|
|
637
793
|
edges[yoga::to_underlying(Edge::End)].isDefined()) {
|
|
638
|
-
return
|
|
794
|
+
return edges[yoga::to_underlying(Edge::End)];
|
|
639
795
|
} else if (
|
|
640
796
|
layoutDirection == Direction::RTL &&
|
|
641
797
|
edges[yoga::to_underlying(Edge::Start)].isDefined()) {
|
|
642
|
-
return
|
|
798
|
+
return edges[yoga::to_underlying(Edge::Start)];
|
|
643
799
|
} else if (edges[yoga::to_underlying(Edge::Right)].isDefined()) {
|
|
644
|
-
return
|
|
800
|
+
return edges[yoga::to_underlying(Edge::Right)];
|
|
645
801
|
} else if (edges[yoga::to_underlying(Edge::Horizontal)].isDefined()) {
|
|
646
|
-
return
|
|
802
|
+
return edges[yoga::to_underlying(Edge::Horizontal)];
|
|
647
803
|
} else {
|
|
648
|
-
return
|
|
804
|
+
return edges[yoga::to_underlying(Edge::All)];
|
|
649
805
|
}
|
|
650
806
|
}
|
|
651
807
|
|
|
652
|
-
|
|
808
|
+
StyleValueHandle computeBottomEdge(const Edges& edges) const {
|
|
653
809
|
if (edges[yoga::to_underlying(Edge::Bottom)].isDefined()) {
|
|
654
|
-
return
|
|
810
|
+
return edges[yoga::to_underlying(Edge::Bottom)];
|
|
655
811
|
} else if (edges[yoga::to_underlying(Edge::Vertical)].isDefined()) {
|
|
656
|
-
return
|
|
812
|
+
return edges[yoga::to_underlying(Edge::Vertical)];
|
|
657
813
|
} else {
|
|
658
|
-
return
|
|
814
|
+
return edges[yoga::to_underlying(Edge::All)];
|
|
659
815
|
}
|
|
660
816
|
}
|
|
661
817
|
|
|
662
|
-
|
|
818
|
+
StyleValueHandle computePosition(PhysicalEdge edge, Direction direction)
|
|
819
|
+
const {
|
|
663
820
|
switch (edge) {
|
|
664
821
|
case PhysicalEdge::Left:
|
|
665
822
|
return computeLeftEdge(position_, direction);
|
|
@@ -674,7 +831,7 @@ class YG_EXPORT Style {
|
|
|
674
831
|
}
|
|
675
832
|
}
|
|
676
833
|
|
|
677
|
-
|
|
834
|
+
StyleValueHandle computeMargin(PhysicalEdge edge, Direction direction) const {
|
|
678
835
|
switch (edge) {
|
|
679
836
|
case PhysicalEdge::Left:
|
|
680
837
|
return computeLeftEdge(margin_, direction);
|
|
@@ -689,7 +846,8 @@ class YG_EXPORT Style {
|
|
|
689
846
|
}
|
|
690
847
|
}
|
|
691
848
|
|
|
692
|
-
|
|
849
|
+
StyleValueHandle computePadding(PhysicalEdge edge, Direction direction)
|
|
850
|
+
const {
|
|
693
851
|
switch (edge) {
|
|
694
852
|
case PhysicalEdge::Left:
|
|
695
853
|
return computeLeftEdge(padding_, direction);
|
|
@@ -704,7 +862,7 @@ class YG_EXPORT Style {
|
|
|
704
862
|
}
|
|
705
863
|
}
|
|
706
864
|
|
|
707
|
-
|
|
865
|
+
StyleValueHandle computeBorder(PhysicalEdge edge, Direction direction) const {
|
|
708
866
|
switch (edge) {
|
|
709
867
|
case PhysicalEdge::Left:
|
|
710
868
|
return computeLeftEdge(border_, direction);
|
|
@@ -719,10 +877,32 @@ class YG_EXPORT Style {
|
|
|
719
877
|
}
|
|
720
878
|
}
|
|
721
879
|
|
|
880
|
+
/**
|
|
881
|
+
* Internal resolution of a StyleValueHandle.
|
|
882
|
+
*
|
|
883
|
+
* Part of the handle-based optimization, this function allows the layout
|
|
884
|
+
* engine to resolve stored values (Points, Percents) directly from the pool
|
|
885
|
+
* via handles. This avoids the overhead of materializing an intermediate
|
|
886
|
+
* StyleLength/StyleSizeLength object on the stack during hot-path overhead
|
|
887
|
+
* calculations.
|
|
888
|
+
*/
|
|
889
|
+
FloatOptional resolve(StyleValueHandle handle, float referenceLength) const {
|
|
890
|
+
if (handle.isPoint()) {
|
|
891
|
+
return FloatOptional{pool_.getStoredValue(handle)};
|
|
892
|
+
}
|
|
893
|
+
if (handle.isPercent()) {
|
|
894
|
+
return FloatOptional{
|
|
895
|
+
pool_.getStoredValue(handle) * referenceLength * 0.01f};
|
|
896
|
+
}
|
|
897
|
+
return FloatOptional{};
|
|
898
|
+
}
|
|
899
|
+
|
|
722
900
|
Direction direction_ : bitCount<Direction>() = Direction::Inherit;
|
|
723
901
|
FlexDirection flexDirection_
|
|
724
902
|
: bitCount<FlexDirection>() = FlexDirection::Column;
|
|
725
903
|
Justify justifyContent_ : bitCount<Justify>() = Justify::FlexStart;
|
|
904
|
+
Justify justifyItems_ : bitCount<Justify>() = Justify::Stretch;
|
|
905
|
+
Justify justifySelf_ : bitCount<Justify>() = Justify::Auto;
|
|
726
906
|
Align alignContent_ : bitCount<Align>() = Align::FlexStart;
|
|
727
907
|
Align alignItems_ : bitCount<Align>() = Align::Stretch;
|
|
728
908
|
Align alignSelf_ : bitCount<Align>() = Align::Auto;
|
|
@@ -749,6 +929,16 @@ class YG_EXPORT Style {
|
|
|
749
929
|
Dimensions maxDimensions_{};
|
|
750
930
|
StyleValueHandle aspectRatio_{};
|
|
751
931
|
|
|
932
|
+
// Grid properties
|
|
933
|
+
GridTrackList gridTemplateColumns_{};
|
|
934
|
+
GridTrackList gridTemplateRows_{};
|
|
935
|
+
GridTrackList gridAutoColumns_{};
|
|
936
|
+
GridTrackList gridAutoRows_{};
|
|
937
|
+
GridLine gridColumnStart_{};
|
|
938
|
+
GridLine gridColumnEnd_{};
|
|
939
|
+
GridLine gridRowStart_{};
|
|
940
|
+
GridLine gridRowEnd_{};
|
|
941
|
+
|
|
752
942
|
StyleValuePool pool_;
|
|
753
943
|
};
|
|
754
944
|
|
|
@@ -42,6 +42,12 @@ class StyleSizeLength {
|
|
|
42
42
|
: StyleSizeLength{FloatOptional{value}, Unit::Percent};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
constexpr static StyleSizeLength stretch(float fraction) {
|
|
46
|
+
return yoga::isUndefined(fraction) || yoga::isinf(fraction)
|
|
47
|
+
? undefined()
|
|
48
|
+
: StyleSizeLength{FloatOptional{fraction}, Unit::Stretch};
|
|
49
|
+
}
|
|
50
|
+
|
|
45
51
|
constexpr static StyleSizeLength ofAuto() {
|
|
46
52
|
return StyleSizeLength{{}, Unit::Auto};
|
|
47
53
|
}
|
|
@@ -98,7 +104,7 @@ class StyleSizeLength {
|
|
|
98
104
|
return value_;
|
|
99
105
|
}
|
|
100
106
|
|
|
101
|
-
constexpr FloatOptional resolve(float referenceLength) {
|
|
107
|
+
constexpr FloatOptional resolve(float referenceLength) const {
|
|
102
108
|
#ifdef __clang__
|
|
103
109
|
#pragma clang diagnostic push
|
|
104
110
|
#pragma clang diagnostic ignored "-Wswitch-enum"
|
|
@@ -49,6 +49,14 @@ class StyleValueHandle {
|
|
|
49
49
|
return type() == Type::Auto;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
constexpr bool isPercent() const {
|
|
53
|
+
return type() == Type::Percent;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
constexpr bool isPoint() const {
|
|
57
|
+
return type() == Type::Point;
|
|
58
|
+
}
|
|
59
|
+
|
|
52
60
|
private:
|
|
53
61
|
friend class StyleValuePool;
|
|
54
62
|
|
|
@@ -121,6 +121,16 @@ class StyleValuePool {
|
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
+
float getStoredValue(StyleValueHandle handle) const {
|
|
125
|
+
assert(
|
|
126
|
+
handle.type() == StyleValueHandle::Type::Point ||
|
|
127
|
+
handle.type() == StyleValueHandle::Type::Percent ||
|
|
128
|
+
handle.type() == StyleValueHandle::Type::Number);
|
|
129
|
+
return handle.isValueIndexed()
|
|
130
|
+
? std::bit_cast<float>(buffer_.get32(handle.value()))
|
|
131
|
+
: unpackInlineInteger(handle.value());
|
|
132
|
+
}
|
|
133
|
+
|
|
124
134
|
private:
|
|
125
135
|
void storeValue(
|
|
126
136
|
StyleValueHandle& handle,
|
package/cli.js
CHANGED
|
@@ -108,7 +108,7 @@ declare type $HermesInternalType = {
|
|
|
108
108
|
/**
|
|
109
109
|
* Enqueue a JavaScript callback function as a Job into the engine Job queue.
|
|
110
110
|
*/
|
|
111
|
-
+enqueueJob?: <TArguments
|
|
111
|
+
+enqueueJob?: <TArguments extends Array<unknown>>(
|
|
112
112
|
jobCallback: (...args: TArguments) => unknown,
|
|
113
113
|
) => void,
|
|
114
114
|
};
|