diff --git a/lib/core/src/lib/icon/icon.directive.spec.ts b/lib/core/src/lib/icon/icon.directive.spec.ts index 87a07ad6aa..7a6bedac12 100644 --- a/lib/core/src/lib/icon/icon.directive.spec.ts +++ b/lib/core/src/lib/icon/icon.directive.spec.ts @@ -84,5 +84,14 @@ describe('IconDirective', () => { expect(await iconHarness.getType()).toBe(IconType.SVG); expect(await iconHarness.getName()).toContain('mock_alias'); }); + + it('should set svg icon if alias map is provided and name matches an alias value directly', async () => { + component.name = 'mock_alias'; + + const iconHarness = await loader.getHarness(MatIconHarness); + + expect(await iconHarness.getType()).toBe(IconType.SVG); + expect(await iconHarness.getName()).toContain('mock_alias'); + }); }); }); diff --git a/lib/core/src/lib/icon/icon.directive.ts b/lib/core/src/lib/icon/icon.directive.ts index 0fe60918e0..64d583f09c 100644 --- a/lib/core/src/lib/icon/icon.directive.ts +++ b/lib/core/src/lib/icon/icon.directive.ts @@ -31,7 +31,7 @@ export class IconDirective implements OnChanges { @Input('adf-icon') name: string; ngOnChanges() { - const iconAlias = this.aliasMap?.[this.name]; + const iconAlias = this.getIconAlias(); iconAlias ? this.setSvgIcon(iconAlias) : this.appendLigatureText(); } @@ -60,4 +60,12 @@ export class IconDirective implements OnChanges { private resetSvgIcon() { this.matIcon.svgIcon = null; } + + private getIconAlias(): string | undefined { + if (!this.aliasMap) { + return undefined; + } + + return this.aliasMap[this.name] ?? (Object.values(this.aliasMap).includes(this.name) ? this.name : undefined); + } } diff --git a/lib/core/src/lib/templates/empty-content/empty-content.component.scss b/lib/core/src/lib/templates/empty-content/empty-content.component.scss index b17f892210..1e96b1ae3a 100644 --- a/lib/core/src/lib/templates/empty-content/empty-content.component.scss +++ b/lib/core/src/lib/templates/empty-content/empty-content.component.scss @@ -8,9 +8,6 @@ width: 100%; &__icon > *:first-child { - font-size: var(--theme-display-3-font-size); - height: var(--theme-display-3-font-size); - width: var(--theme-display-3-font-size); opacity: 0.6; }