Files
angular__angular/goldens/circular-deps/packages.json
T
Andrew Scott 53ca936366 feat(router): Add ability to create UrlTree from any ActivatedRouteSnapshot (#45877)
This exposes a new function from the router public API that allows
developers to create a `UrlTree` from _any_ `ActivatedRouteSnapshot`.
The current Router APIs only support creating a `UrlTree` from an
`ActivatedRoute` which is both active _and_ materially appears in the
`UrlTree` (it cannot be an empty path named outlet). This is because the
implementation of the current way of creating a `UrlTree` attempts to
look up the `UrlSegment` of the `ActivatedRoute` in the currently active
`UrlTree` of the router. When this doesn't work, the `UrlTree` creation
fails.

Note that this API does not replace the current one. That would actually be a
breaking change but should be done at some point in the future (v15). That is,
`router.navigate` should call this new function. At that point, we can
remove `_lastPathIndex`, `_urlSegment`, and `_correctedPathIndex` from
the `ActivatedRoute`, along with all of the logic associated with
determining what those should be. In addition, this would unblock a fix
for #26081 because the `applyRedirects` and `recognize` operations
could be combined into one.  Overall, this would simplify logic in the router
and reduce code size. It also exposes core routing capabilities as a helper function
which were previously private API, which is a necessary step towards #42953.

As a stress test for this new function, it _was_ swapped in as the
default for `UrlTree` creation in #45859 and tested internally. The
results indicate that this function behaves correctly.

resolves #42191 (Tested directly)
resolves #38276 (The test with a guard covers this case)
resolves #22763 (Tested directly)

PR Close #45877
2022-05-24 10:40:24 -07:00

345 lines
12 KiB
JSON

[
[
"packages/animations/browser/src/render/animation_driver.ts",
"packages/animations/browser/src/render/shared.ts"
],
[
"packages/compiler-cli/ngcc/src/packages/configuration.ts",
"packages/compiler-cli/ngcc/src/packages/entry_point.ts"
],
[
"packages/compiler-cli/src/ngtsc/partial_evaluator/src/interface.ts",
"packages/compiler-cli/src/ngtsc/partial_evaluator/src/interpreter.ts"
],
[
"packages/compiler/src/output/output_ast.ts",
"packages/compiler/src/render3/view/i18n/meta.ts"
],
[
"packages/compiler/src/output/output_ast.ts",
"packages/compiler/src/render3/view/i18n/meta.ts",
"packages/compiler/src/render3/view/i18n/util.ts"
],
[
"packages/compiler/src/render3/view/styling_builder.ts",
"packages/compiler/src/render3/view/template.ts"
],
[
"packages/core/src/change_detection/change_detector_ref.ts",
"packages/core/src/render3/view_ref.ts"
],
[
"packages/core/src/change_detection/change_detector_ref.ts",
"packages/core/src/render3/view_ref.ts",
"packages/core/src/linker/view_ref.ts"
],
[
"packages/core/src/change_detection/differs/default_iterable_differ.ts",
"packages/core/src/change_detection/differs/iterable_differs.ts"
],
[
"packages/core/src/change_detection/differs/default_keyvalue_differ.ts",
"packages/core/src/change_detection/differs/keyvalue_differs.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/di/r3_injector.ts",
"packages/core/src/di/injector_compatibility.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/di/r3_injector.ts",
"packages/core/src/di/injector_token.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/di/r3_injector.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/di/r3_injector.ts",
"packages/core/src/di/null_injector.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/create_injector.ts",
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/render3/interfaces/node.ts",
"packages/core/src/render3/interfaces/view.ts",
"packages/core/src/di/injector.ts"
],
[
"packages/core/src/di/injectable.ts",
"packages/core/src/di/jit/injectable.ts"
],
[
"packages/core/src/di/provider_collection.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/di/r3_injector.ts"
],
[
"packages/core/src/di/r3_injector.ts",
"packages/core/src/render3/definition.ts",
"packages/core/src/render3/interfaces/definition.ts"
],
[
"packages/core/src/di/reflective_errors.ts",
"packages/core/src/di/reflective_injector.ts"
],
[
"packages/core/src/linker/component_factory_resolver.ts",
"packages/core/src/linker/component_factory.ts",
"packages/core/src/linker/ng_module_factory.ts"
],
[
"packages/core/src/metadata/directives.ts",
"packages/core/src/render3/jit/directive.ts"
],
[
"packages/core/src/metadata/directives.ts",
"packages/core/src/render3/jit/directive.ts",
"packages/core/src/metadata/resource_loading.ts"
],
[
"packages/core/src/metadata/directives.ts",
"packages/core/src/render3/jit/directive.ts",
"packages/core/src/render3/jit/module.ts"
],
[
"packages/core/src/metadata/directives.ts",
"packages/core/src/render3/jit/pipe.ts"
],
[
"packages/core/src/metadata/ng_module.ts",
"packages/core/src/render3/jit/module.ts"
],
[
"packages/core/src/render3/interfaces/container.ts",
"packages/core/src/render3/interfaces/node.ts",
"packages/core/src/render3/interfaces/view.ts"
],
[
"packages/core/src/render3/interfaces/container.ts",
"packages/core/src/render3/interfaces/view.ts"
],
[
"packages/core/src/render3/interfaces/definition.ts",
"packages/core/src/render3/interfaces/node.ts",
"packages/core/src/render3/interfaces/view.ts"
],
[
"packages/core/src/render3/interfaces/node.ts",
"packages/core/src/render3/interfaces/view.ts"
],
[
"packages/core/src/render3/interfaces/node.ts",
"packages/core/src/render3/interfaces/view.ts",
"packages/core/src/render3/interfaces/query.ts"
],
[
"packages/core/src/render3/interfaces/query.ts",
"packages/core/src/render3/interfaces/view.ts"
],
[
"packages/core/testing/src/r3_test_bed_compiler.ts",
"packages/core/testing/src/test_bed_common.ts",
"packages/core/testing/src/test_bed.ts",
"packages/core/testing/src/r3_test_bed.ts"
],
[
"packages/core/testing/src/r3_test_bed.ts",
"packages/core/testing/src/test_bed.ts"
],
[
"packages/forms/src/directives.ts",
"packages/forms/src/directives/ng_control_status.ts",
"packages/forms/src/directives/abstract_control_directive.ts",
"packages/forms/src/model/abstract_model.ts",
"packages/forms/src/forms.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/ng_control.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/reactive_directives/form_control_name.ts"
],
[
"packages/forms/src/directives/abstract_form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/reactive_directives/form_control_name.ts",
"packages/forms/src/directives/control_container.ts",
"packages/forms/src/directives/form_interface.ts"
],
[
"packages/forms/src/directives/ng_form.ts",
"packages/forms/src/directives/ng_model.ts"
],
[
"packages/forms/src/directives/ng_form.ts",
"packages/forms/src/directives/ng_model.ts",
"packages/forms/src/directives/ng_model_group.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_control_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/reactive_directives/form_control_name.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_control_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_control_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_control_name.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/reactive_directives/form_group_directive.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_group_directive.ts",
"packages/forms/src/directives/shared.ts",
"packages/forms/src/directives/reactive_directives/form_group_name.ts"
],
[
"packages/forms/src/directives/reactive_directives/form_group_name.ts",
"packages/forms/src/directives/shared.ts"
],
[
"packages/forms/src/directives/validators.ts",
"packages/forms/src/model/abstract_model.ts"
],
[
"packages/forms/src/directives/validators.ts",
"packages/forms/src/validators.ts"
],
[
"packages/forms/src/directives/validators.ts",
"packages/forms/src/validators.ts",
"packages/forms/src/model/abstract_model.ts"
],
[
"packages/router/src/directives/router_outlet.ts",
"packages/router/src/router_outlet_context.ts"
],
[
"packages/router/src/models.ts",
"packages/router/src/router_state.ts"
],
[
"packages/router/src/models.ts",
"packages/router/src/url_tree.ts",
"packages/router/src/shared.ts"
],
[
"packages/router/src/operators/activate_routes.ts",
"packages/router/src/router.ts"
],
[
"packages/router/src/operators/apply_redirects.ts",
"packages/router/src/router.ts"
],
[
"packages/router/src/operators/check_guards.ts",
"packages/router/src/router.ts"
],
[
"packages/router/src/operators/recognize.ts",
"packages/router/src/router.ts"
],
[
"packages/router/src/operators/resolve_data.ts",
"packages/router/src/router.ts"
],
[
"packages/router/src/shared.ts",
"packages/router/src/url_tree.ts"
]
]