Fix/bottom nav use href react 7 #4644
Open
+26,926
−3,303
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
Currently, the Bottom Tab Navigator (react-native-paper/react-navigation) cannot be used with the latest version of react-navigation (7.x) or with the latest expo-router due to changes in the react-navigation API. The issue is that useLinkBuilder now returns an object instead of a builder function.
Related issue
#4601
Test plan
Ran lint, tslint, and tests - in relation to changes, fixed all errors and all passing. There are errors in other components in main that currently don't pass.
Tested with yarn example start and yarn example web
This pull request includes updates to dependencies and improvements to the
MaterialBottomTabView
component in thesrc/react-navigation/views
directory. The most important changes are grouped into dependency updates and component enhancements.Dependency Updates:
@react-navigation/native
to version^7.0.15
inpackage.json
.Component Enhancements:
ColorValue
import fromreact-native
inMaterialBottomTabView.tsx
.RenderTouchableProps
type to improve type safety for therenderTouchable
function.renderTouchable
function to usebuildHref
instead ofbuildLink
and ensuredrippleColor
is applied correctly.getLabelText
function to use the nullish coalescing operator for better readability.onTabLongPress
function for better code readability.