{"version":3,"file":"ng-vagabond-lab-ng-dsv-ds-avatar.mjs","sources":["../../../projects/ng-dsv/ds/avatar/component/avatar.component.ts","../../../projects/ng-dsv/ds/avatar/component/avatar.component.html","../../../projects/ng-dsv/ds/avatar/ng-vagabond-lab-ng-dsv-ds-avatar.ts"],"sourcesContent":["import {\n  Component,\n  effect,\n  HostBinding,\n  HostListener,\n  input,\n  output,\n  signal\n} from '@angular/core';\nimport { isCallback } from '@ng-vagabond-lab/ng-dsv/base';\nimport { BaseColorComponent } from '@ng-vagabond-lab/ng-dsv/ds/color';\n\n@Component({\n  selector: 'dsv-avatar',\n  imports: [],\n  templateUrl: './avatar.component.html',\n  styleUrls: ['./avatar.component.scss'],\n})\nexport class DsvAvatarComponent extends BaseColorComponent {\n  avatar = input<string>('');\n  callback = output<void>();\n\n  avatarLetter = signal<string>('');\n  isImage = signal<boolean>(false);\n  isCallback = signal<boolean>(false);\n\n  constructor() {\n    super();\n    effect(() => {\n      this.isImage.set(this.avatar().startsWith('http'));\n      this.avatarLetter.set(this.avatar().substring(0, 1).toUpperCase() ?? '?');\n      this.isCallback.set(isCallback(this.callback));\n    });\n  }\n\n  @HostBinding('class')\n  get hostClasses(): string {\n    const classes: string[] = [this.color()];\n    this.isCallback() && classes.push('callback');\n    return this.getClasses('dsv-avatar', classes);\n  }\n\n  @HostListener('click')\n  onClick() {\n    this.isCallback() && this.callback?.emit();\n  }\n}\n","@if (isImage()) {\n  <img [src]=\"avatar()\" alt=\"avatar\" />\n} @else {\n  <span>{{ avatarLetter() }}</span>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AAkBM,MAAO,kBAAmB,SAAQ,kBAAkB,CAAA;AACxD,IAAA,MAAM,GAAG,KAAK,CAAS,EAAE,kDAAC;IAC1B,QAAQ,GAAG,MAAM,EAAQ;AAEzB,IAAA,YAAY,GAAG,MAAM,CAAS,EAAE,wDAAC;AACjC,IAAA,OAAO,GAAG,MAAM,CAAU,KAAK,mDAAC;AAChC,IAAA,UAAU,GAAG,MAAM,CAAU,KAAK,sDAAC;AAEnC,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QACP,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC;AACzE,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChD,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,IACI,WAAW,GAAA;QACb,MAAM,OAAO,GAAa,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACxC,IAAI,CAAC,UAAU,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/C;IAGA,OAAO,GAAA;QACL,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE;IAC5C;uGA3BW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,mWClB/B,qHAKA,EAAA,MAAA,EAAA,CAAA,qfAAA,CAAA,EAAA,CAAA;;2FDaa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,WACb,EAAE,EAAA,QAAA,EAAA,qHAAA,EAAA,MAAA,EAAA,CAAA,qfAAA,CAAA,EAAA;;sBAqBV,WAAW;uBAAC,OAAO;;sBAOnB,YAAY;uBAAC,OAAO;;;AE1CvB;;AAEG;;;;"}