fix(router): Ensure all outlets are used when commands has a prefix#39456
fix(router): Ensure all outlets are used when commands has a prefix#39456atscott wants to merge 3 commits intoangular:masterfrom
Conversation
6fabfbf to
0b506b3
Compare
0b506b3 to
896aaf6
Compare
|
My opinion ofc but I think it makes more sense to add the |
|
@alfaproject - That's a fair suggestion and I think different people will have different opinions on the matter. I actually like having a set of tests that are commented out/ignored but can be enabled when a fix becomes available. My feeling is that tests act as a form of documentation and the Either way, I'm not aware of any style guide on this, so I'll just leave it as-is. |
896aaf6 to
9dbd5c6
Compare
This commit has a small refactor of some methods in create_url_tree.ts and adds some test cases, including two that will fail at the moment but should pass. A follow-up commit will make use of the refactorings to fix the test with minimal changes.
When there is a primary outlet present in the outlets map and the object is also prefixed with some other commands, the current logic only uses the primary outlet and ignores the others. This change ensures that all outlets are respected at the segment level when prefixed with other commands.
1bfe4f0 to
5346092
Compare
…39456) When there is a primary outlet present in the outlets map and the object is also prefixed with some other commands, the current logic only uses the primary outlet and ignores the others. This change ensures that all outlets are respected at the segment level when prefixed with other commands. PR Close #39456
…39456) When there is a primary outlet present in the outlets map and the object is also prefixed with some other commands, the current logic only uses the primary outlet and ignores the others. This change ensures that all outlets are respected at the segment level when prefixed with other commands. PR Close #39456
…39456) When there is a primary outlet present in the outlets map and the object is also prefixed with some other commands, the current logic only uses the primary outlet and ignores the others. This change ensures that all outlets are respected at the segment level when prefixed with other commands. PR Close #39456
|
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
Note: Easiest to review is per-commit.
Commit 1: A refactor only. No functional changes. Also documents behavior with tests and coherent example config.
Commit 2: Small change to allow tests from commit 1 to pass.
When there is a primary outlet present in the outlets map and the object is also prefixed
with some other commands, the current logic only uses the primary outlet and ignores
the others. This change ensures that all outlets are respected at the
segment level when prefixed with other commands.
Fixes issue that prevented navigation in #39401.
Partially addressed #13523 - That issue, along with #15718, stem from a general difficulty to change outlets because one has to specify the change using the correct segment 'level' (see tests named
should not clear secondary outlet when at root and prefix is usedandshould not clear non-root secondary outlet when command is targeting root). Additionally, it's still not possible to change two outlets that appear at different levels in the config in a single navigation.