[WCiOS17] Update PaymentsRow
to not use NavigationLink
API
#16195
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.
Closes WOOMOB-1301
Closes WOOMOB-1304
Description
This PR updates the
PaymentsRow
component from Menu > Settings to not use deprecatedNavigationLink(isActive:)
API for navigation. It also removes the remaining iOS17 availability checks, mainly in previews.Changes
The only usage of navigation link with
isActive
binding across the existing payment rows is in 2 instances:The rest of rows either use a
.sheet
, or are wrapped in a button. Since the parent view (InPersonPaymentsMenu
is already wrapped in aNavigationStack
, we can simplify the view and handle the rows as we already handle the rest via.navigationDestination
in the parent.Testing information
Order Card Reader
andCard Reader Manuals
rowsTested on iPhone 16 plus - iOS 18.3 simulator, and iPhone 14 18.6.2 physical device