Fixes resizable field always being null in React 18.3.
After this React PR for 18.3, ref is included as a normal prop. Because of this, we detect ref as a user-provided prop and break our ref logic. This causes the resizable field of our Resizable component to always read null. To fix this, we add ref to our defined props to ensure that we do not consider it a user-provided prop.
Tradeoffs
There should be no negative effects from this change.
For all users with React < 18.3, it is impossible to pass ref in props as it is removed by React, so this change will not affect them. For all users with React >= 18.3, this will fix the behavior of ref in their resizable component.
Testing Done
Tested accessing the resizable field in both React 18.0 and 18.3. Both work!
Proposed solution
Fixes
resizable
field always beingnull
in React 18.3.After this React PR for 18.3,
ref
is included as a normal prop. Because of this, we detectref
as a user-provided prop and break our ref logic. This causes theresizable
field of our Resizable component to always readnull
. To fix this, we addref
to our defined props to ensure that we do not consider it a user-provided prop.Tradeoffs
There should be no negative effects from this change.
For all users with React < 18.3, it is impossible to pass
ref
inprops
as it is removed by React, so this change will not affect them. For all users with React >= 18.3, this will fix the behavior ofref
in their resizable component.Testing Done
Tested accessing the
resizable
field in both React 18.0 and 18.3. Both work!