feat(angular): Auto-detect component name in TraceDirective
#6223
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.
WIP (Still fighting tests, will come back to it later)
(Also, if we merge this, we'll need to adjust docs)
Thought I'd give this a quick try after working on #6222
This PR adds auto detection of the component name in which
TraceDirective
is used. This makes it unnecessary for users in the future to specifiy a name in the trace directive unless they want to:The auto detection currently takes the component selector name (
app-sample-component
in the example above). We could theoretically also take the class name (see TODO in code). Both approaches are admittedly quite hacky but the selector one is a little bit less hacky, which is why I opted for it right now.In case we cannot auto-obtain the selector, we still fall back to
the UNKNONW_COMPONENT
default.Tested this with all Angular versions from 10 to 15 and it seems to work in my test apps.