Skip to content

Commit 6636e83

Browse files
alan-agius4alxhub
authored andcommitted
fix(core): add additional component metadata to component ID generation (#50203)
This commit add `exportAs`, `signals`, `inputs` and `outputs` into account when generating a component ID. See: #50158 (comment) PR Close #50203
1 parent 822b307 commit 6636e83

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

packages/core/src/render3/definition.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -686,7 +686,7 @@ function getComponentId(componentDef: ComponentDef<unknown>): string {
686686
// https://github.com/angular/components/blob/d9f82c8f95309e77a6d82fd574c65871e91354c2/src/material/core/option/option.ts#L248
687687
// https://github.com/angular/components/blob/285f46dc2b4c5b127d356cb7c4714b221f03ce50/src/material/legacy-core/option/option.ts#L32
688688

689-
const hashSelectors = [
689+
const hashSelectors = JSON.stringify([
690690
componentDef.selectors,
691691
componentDef.ngContentSelectors,
692692
componentDef.hostVars,
@@ -696,12 +696,16 @@ function getComponentId(componentDef: ComponentDef<unknown>): string {
696696
componentDef.decls,
697697
componentDef.encapsulation,
698698
componentDef.standalone,
699+
componentDef.signals,
700+
componentDef.exportAs,
701+
componentDef.inputs,
702+
componentDef.outputs,
699703
// We cannot use 'componentDef.type.name' as the name of the symbol will change and will not
700704
// match in the server and browser bundles.
701705
Object.getOwnPropertyNames(componentDef.type.prototype),
702706
!!componentDef.contentQueries,
703707
!!componentDef.viewQuery,
704-
].join('|');
708+
]);
705709

706710
for (const char of hashSelectors) {
707711
hash = Math.imul(31, hash) + char.charCodeAt(0) << 0;

0 commit comments

Comments
 (0)