{"version":3,"file":"novo-elements-elements-icon.mjs","sources":["../../../projects/novo-elements/src/elements/icon/Icon.ts","../../../projects/novo-elements/src/elements/icon/Icon.module.ts","../../../projects/novo-elements/src/elements/icon/novo-elements-elements-icon.ts"],"sourcesContent":["import { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { BooleanInput } from 'novo-elements/utils';\nimport { TypographySize } from 'novo-elements/elements/common';\n\n@Component({\n    selector: 'novo-icon',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    template: `\n    <i [class]=\"iconName\"\n      ><span (cdkObserveContent)=\"projectContentChanged($event)\"><ng-content></ng-content></span\n    ></i>\n  `,\n    styleUrls: ['./Icon.scss'],\n    host: {\n        class: 'novo-icon',\n    },\n    standalone: false,\n})\nexport class NovoIconComponent implements AfterViewInit {\n  @HostBinding('class.novo-icon-raised')\n  @Input()\n  public raised: boolean;\n\n  @HostBinding('attr.theme')\n  @Input()\n  public theme: string;\n\n  @HostBinding('attr.shape')\n  @Input()\n  public shape: string = 'box';\n\n  @Input()\n  public color: string;\n\n  @HostBinding('attr.role')\n  public role: string = 'img';\n\n  @HostBinding('attr.aria-label')\n  public ariaLabel: string;\n\n  @Input()\n  public size: TypographySize;\n\n  @HostBinding('class.icon-size-smaller')\n  @Input()\n  @BooleanInput()\n  public smaller: boolean;\n\n  @HostBinding('class.icon-size-larger')\n  @Input()\n  @BooleanInput()\n  public larger: boolean;\n\n  @Input()\n  set alt(value: string) {\n    this.ariaLabel = value;\n  }\n\n  get alt(): string {\n    return this.ariaLabel;\n  }\n\n  @Input()\n  set name(iconName: string) {\n    this.iconName = `bhi-${iconName}`;\n  }\n\n  get name(): string {\n    return this.iconName;\n  }\n\n  @HostBinding('class')\n  get hb_classBinding(): string {\n    return [this.color ? `text-color-${this.color}` : null, this.size ? `text-size-${this.size}` : null].filter(Boolean).join(' ');\n  }\n\n  public iconName: string;\n\n  constructor(public element: ElementRef, private cdr: ChangeDetectorRef) {}\n\n  public ngAfterViewInit(): void {\n    if (this.element.nativeElement.textContent.trim()) {\n      Promise.resolve().then(() => {\n        this.name = this.element.nativeElement.textContent.trim();\n        this.cdr.markForCheck();\n      });\n    }\n  }\n\n  public projectContentChanged(record: MutationRecord) {\n    this.name = this.element.nativeElement.textContent.trim();\n    this.cdr.detectChanges();\n  }\n}\n","import { ObserversModule } from '@angular/cdk/observers';\nimport { NgModule } from '@angular/core';\nimport { NovoIconComponent } from './Icon';\n\n@NgModule({\n  imports: [ObserversModule],\n  exports: [NovoIconComponent],\n  declarations: [NovoIconComponent],\n})\nexport class NovoIconModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}