{"version":3,"file":"ng-vagabond-lab-ng-dsv-ds-img.mjs","sources":["../../../projects/ng-dsv/ds/img/component/img.component.ts","../../../projects/ng-dsv/ds/img/component/img.component.html","../../../projects/ng-dsv/ds/img/ng-vagabond-lab-ng-dsv-ds-img.ts"],"sourcesContent":["import { Component, computed, input, signal } from '@angular/core';\nimport { DsvSekeletonComponent } from '@ng-vagabond-lab/ng-dsv/ds/skeleton';\n\n@Component({\n  selector: 'dsv-img',\n  imports: [DsvSekeletonComponent],\n  templateUrl: './img.component.html',\n  styleUrl: './img.component.scss'\n})\nexport class DsvImgComponent {\n\n  src = input.required<string>();\n  alt = input<string>('description');\n  empty = input<string>('images/empty.svg');\n\n  width = input<number>(500);\n  height = input<number>(750);\n\n  load = signal<boolean>(false);\n  error = signal<boolean>(false);\n\n  aspectRatio = computed<string>(() => this.width() + '/' + this.height());\n\n  doLoad() {\n    this.load.set(true);\n  }\n\n\n  onImageError() {\n    this.error.set(true);\n  }\n}\n","@if (!load() || src() === \"\") {\n  <dsv-skeleton>\n    <svg\n      [attr.viewBox]=\"'0 0 ' + width() + ' ' + height()\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n    ></svg>\n  </dsv-skeleton>\n}\n@if (src() !== \"\" && !error()) {\n  <img\n    [src]=\"src()\"\n    [alt]=\"alt()\"\n    [width]=\"width()\"\n    [height]=\"height()\"\n    (load)=\"doLoad()\"\n    (error)=\"onImageError()\"\n    [style.aspect-ratio]=\"aspectRatio()\"\n    [class.hidden]=\"!load()\"\n  />\n} @else if (error()) {\n  <img\n    [src]=\"empty()\"\n    [alt]=\"alt()\"\n    (load)=\"doLoad()\"\n    [style.aspect-ratio]=\"aspectRatio()\"\n  />\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MASa,eAAe,CAAA;AAE1B,IAAA,GAAG,GAAG,KAAK,CAAC,QAAQ,8CAAU;AAC9B,IAAA,GAAG,GAAG,KAAK,CAAS,aAAa,+CAAC;AAClC,IAAA,KAAK,GAAG,KAAK,CAAS,kBAAkB,iDAAC;AAEzC,IAAA,KAAK,GAAG,KAAK,CAAS,GAAG,iDAAC;AAC1B,IAAA,MAAM,GAAG,KAAK,CAAS,GAAG,kDAAC;AAE3B,IAAA,IAAI,GAAG,MAAM,CAAU,KAAK,gDAAC;AAC7B,IAAA,KAAK,GAAG,MAAM,CAAU,KAAK,iDAAC;AAE9B,IAAA,WAAW,GAAG,QAAQ,CAAS,MAAM,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,uDAAC;IAExE,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACrB;IAGA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;IACtB;uGArBW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECT5B,2nBA2BA,EAAA,MAAA,EAAA,CAAA,iTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDtBY,qBAAqB,EAAA,QAAA,EAAA,cAAA,EAAA,CAAA,EAAA,CAAA;;2FAIpB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;+BACE,SAAS,EAAA,OAAA,EACV,CAAC,qBAAqB,CAAC,EAAA,QAAA,EAAA,2nBAAA,EAAA,MAAA,EAAA,CAAA,iTAAA,CAAA,EAAA;;;AELlC;;AAEG;;;;"}