From 8041e410e3b8ea135dc5f08daddd5ceface24439 Mon Sep 17 00:00:00 2001 From: Riccardo Cipolleschi Date: Mon, 9 Sep 2024 16:57:24 +0100 Subject: [PATCH] [LOCAL] Make ScrollView compatible with React 18.3.1 --- .../Libraries/Components/ScrollView/ScrollView.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/react-native/Libraries/Components/ScrollView/ScrollView.js b/packages/react-native/Libraries/Components/ScrollView/ScrollView.js index fc330dfd5c5..cf8896f08ff 100644 --- a/packages/react-native/Libraries/Components/ScrollView/ScrollView.js +++ b/packages/react-native/Libraries/Components/ScrollView/ScrollView.js @@ -1931,19 +1931,18 @@ function createRefForwarder( return state; } +// TODO: After migrating to React 19, remove `forwardRef` from this component. // NOTE: This wrapper component is necessary because `ScrollView` is a class // component and we need to map `ref` to a differently named prop. This can be // removed when `ScrollView` is a functional component. -function Wrapper({ - ref, - ...props -}: { - ...Props, +const Wrapper = React.forwardRef(function Wrapper( + props: Props, ref: React.RefSetter, -}): React.Node { +): React.Node { return ; -} +}); Wrapper.displayName = 'ScrollView'; +// $FlowExpectedError[prop-missing] Wrapper.Context = ScrollViewContext; module.exports = ((Wrapper: $FlowFixMe): React.AbstractComponent<