NavigationBackport
NavigationBackport copied to clipboard
Adds Navigator and navigation utilities
This PR:
- Adds a
Navigatorobject accessible via the environment, which gives access to the current navigation path. - Adds utilities for pushing and popping via the navigator, or directly with an Array or NBNavigationPath.
Usage:
The navigator can be accessed via the environment, e.g. for a NBNavigationPath-backed stack:
@EnvironmentObject var navigator: PathNavigator
Or for an Array-backed stack:
@EnvironmentObject var navigator: Navigator<Screen>
The navigator can then be used in a variety of ways:
navigator.push(Profile(name: "John"))
navigator.pop()
navigator.popToRoot()
navigator.popTo(Profile.self)