{"version":3,"file":"ng-zorro-antd-avatar.mjs","sources":["../../components/avatar/avatar.component.ts","../../components/avatar/avatar-group.component.ts","../../components/avatar/avatar.module.ts","../../components/avatar/public-api.ts","../../components/avatar/ng-zorro-antd-avatar.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { PlatformModule } from '@angular/cdk/platform';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnChanges,\n  Output,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\n\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport { NgClassInterface, NumberInput, NzShapeSCType, NzSizeLDSType } from 'ng-zorro-antd/core/types';\nimport { InputNumber } from 'ng-zorro-antd/core/util';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'avatar';\n\n@Component({\n  selector: 'nz-avatar',\n  exportAs: 'nzAvatar',\n  standalone: true,\n  imports: [NzIconModule, PlatformModule],\n  template: `\n    @if (nzIcon && hasIcon) {\n      <span nz-icon [nzType]=\"nzIcon\"></span>\n    }\n    @if (nzSrc && hasSrc) {\n      <img [src]=\"nzSrc\" [attr.srcset]=\"nzSrcSet\" [attr.alt]=\"nzAlt\" (error)=\"imgError($event)\" />\n    }\n    @if (nzText && hasText) {\n      <span class=\"ant-avatar-string\" #textEl>{{ nzText }}</span>\n    }\n  `,\n  host: {\n    class: 'ant-avatar',\n    '[class.ant-avatar-lg]': `nzSize === 'large'`,\n    '[class.ant-avatar-sm]': `nzSize === 'small'`,\n    '[class.ant-avatar-square]': `nzShape === 'square'`,\n    '[class.ant-avatar-circle]': `nzShape === 'circle'`,\n    '[class.ant-avatar-icon]': `nzIcon`,\n    '[class.ant-avatar-image]': `hasSrc `,\n    '[style.width]': 'customSize',\n    '[style.height]': 'customSize',\n    '[style.line-height]': 'customSize',\n    // nzSize type is number when customSize is true\n    '[style.font-size.px]': '(hasIcon && customSize) ? $any(nzSize) / 2 : null'\n  },\n  preserveWhitespaces: false,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None\n})\nexport class NzAvatarComponent implements OnChanges, AfterViewInit {\n  static ngAcceptInputType_nzGap: NumberInput;\n\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n  @Input() @WithConfig() nzShape: NzShapeSCType = 'circle';\n  @Input() @WithConfig() nzSize: NzSizeLDSType | number = 'default';\n  @Input() @WithConfig() @InputNumber() nzGap = 4;\n  @Input() nzText?: string;\n  @Input() nzSrc?: string;\n  @Input() nzSrcSet?: string;\n  @Input() nzAlt?: string;\n  @Input() nzIcon?: string;\n  @Output() readonly nzError = new EventEmitter<Event>();\n\n  hasText: boolean = false;\n  hasSrc: boolean = true;\n  hasIcon: boolean = false;\n  classMap: NgClassInterface = {};\n  customSize: string | null = null;\n\n  @ViewChild('textEl', { static: false }) textEl?: ElementRef<HTMLSpanElement>;\n\n  private el: HTMLElement = this.elementRef.nativeElement;\n\n  constructor(\n    public nzConfigService: NzConfigService,\n    private elementRef: ElementRef,\n    private cdr: ChangeDetectorRef\n  ) {}\n\n  imgError($event: Event): void {\n    this.nzError.emit($event);\n    if (!$event.defaultPrevented) {\n      this.hasSrc = false;\n      this.hasIcon = false;\n      this.hasText = false;\n      if (this.nzIcon) {\n        this.hasIcon = true;\n      } else if (this.nzText) {\n        this.hasText = true;\n      }\n      this.cdr.detectChanges();\n      this.setSizeStyle();\n      this.calcStringSize();\n    }\n  }\n\n  ngOnChanges(): void {\n    this.hasText = !this.nzSrc && !!this.nzText;\n    this.hasIcon = !this.nzSrc && !!this.nzIcon;\n    this.hasSrc = !!this.nzSrc;\n\n    this.setSizeStyle();\n    this.calcStringSize();\n  }\n\n  ngAfterViewInit(): void {\n    this.calcStringSize();\n  }\n\n  private calcStringSize(): void {\n    if (!this.hasText || !this.textEl) {\n      return;\n    }\n\n    const textEl = this.textEl.nativeElement;\n    const childrenWidth = textEl.offsetWidth;\n    const avatarWidth = this.el.getBoundingClientRect?.().width ?? 0;\n    const offset = this.nzGap * 2 < avatarWidth ? this.nzGap * 2 : 8;\n    const scale = avatarWidth - offset < childrenWidth ? (avatarWidth - offset) / childrenWidth : 1;\n\n    textEl.style.transform = `scale(${scale}) translateX(-50%)`;\n    textEl.style.lineHeight = this.customSize || '';\n  }\n\n  private setSizeStyle(): void {\n    if (typeof this.nzSize === 'number') {\n      this.customSize = `${this.nzSize}px`;\n    } else {\n      this.customSize = null;\n    }\n\n    this.cdr.markForCheck();\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n  selector: 'nz-avatar-group',\n  exportAs: 'nzAvatarGroup',\n  standalone: true,\n  template: ` <ng-content></ng-content> `,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: {\n    class: 'ant-avatar-group'\n  }\n})\nexport class NzAvatarGroupComponent {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzAvatarGroupComponent } from './avatar-group.component';\nimport { NzAvatarComponent } from './avatar.component';\n\n@NgModule({\n  exports: [NzAvatarComponent, NzAvatarGroupComponent],\n  imports: [NzAvatarComponent, NzAvatarGroupComponent]\n})\nexport class NzAvatarModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './avatar.component';\nexport * from './avatar-group.component';\nexport * from './avatar.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}