angular/packages/router/test/integration
Andrew Scott 189807ef04 refactor(router): Build out integration with browser Navigation API (#64905)
This further builds out the Router integration with the platform
Navigation API. Key features in this state include:

* History restoration via direct platform APIs rather than markers left on
  `history.state`. This means more guaranteed correctness and less
  internal code to compute traversal restorations.
* Ability to observe navigations triggered outside the Router APIs.
  Practically speaking, this means some navigations can be performed
  through the platform rather than requiring `Router.navigate`. Note
  that because the `NavigateEvent` is never intercepted at this point of
  the implementation, regular anchor tags cannot be used because they
  will still trigger a popstate navigation.

This implementation does _not_ intercept the `NavigateEvent` but future
iterations should. By omitting the interception, we are missing out on
features such as:

* Platform-supported scroll and focus reset
* Holding the navigate event open for the duration of the router
  navigation, allowing for a visual loading indicator in the browser
* Support for intercepting navigations from regular anchor tags (e.g.
  not `RouterLink`s) and converting those to SPA navigations.

PR Close #64905
2025-11-06 17:42:04 +00:00
..
duplicate_in_flight_navigations.spec.ts test(router): This commit removes ZoneJS from the router tests (#61078) 2025-05-05 08:55:01 -07:00
eager_url_update_strategy.spec.ts build: move private testing helpers outside platform-browser/testing (#61472) 2025-05-20 10:00:43 +00:00
guards.spec.ts refactor(router): Add handling for empty observables in guards (#63546) 2025-09-02 11:50:49 -07:00
integration.spec.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
integration_helpers.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
lazy_loading.spec.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
navigation.spec.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
navigation_errors.spec.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
redirects.spec.ts refactor(router): Build out integration with browser Navigation API (#64905) 2025-11-06 17:42:04 +00:00
route_data.spec.ts build: migrate router to use rules_js (#61542) 2025-05-21 09:53:34 +00:00
route_reuse_strategy.spec.ts build: migrate router to use rules_js (#61542) 2025-05-21 09:53:34 +00:00
router_events.spec.ts build: move private testing helpers outside platform-browser/testing (#61472) 2025-05-20 10:00:43 +00:00
router_link_active.spec.ts build: migrate router to use rules_js (#61542) 2025-05-21 09:53:34 +00:00
router_links.spec.ts build: migrate router to use rules_js (#61542) 2025-05-21 09:53:34 +00:00