{"version":3,"file":"534.662824ec129c0d43.js","mappings":"wOAcIA,MAAA,SAEIA,MAAA,WAIJA,8BANGA,MAAA,mBAAAC,EAAAC,SAAA,KAAAD,EAAAC,SAAAC,MAEMH,QAGAA,MAHA,MAAAC,EAAAG,MAGAJ,CAHa,SAAAC,EAAAI,OAGbL,CADiB,cAAAC,EAAAK,KAAA,KAAAL,EAAAK,KAAAC,QAAA,EAAAN,EAAAK,KAAAL,EAAAO,kCAItBR,MAAA,gCAGKA,MAHA,MAAAC,EAAAG,MAGAJ,CAHa,SAAAC,EAAAI,OAGbL,CADiB,cAAAC,EAAAK,KAAA,KAAAL,EAAAK,KAAAC,QAAA,EAAAN,EAAAK,KAAAL,EAAAO,UA8CvB,IAAMC,EAAsB,MAA7B,MAAOA,UAA8BC,IAYvCC,WACIC,MAAMD,WACN,IAAIE,EAAOC,KAAKC,IAAIC,cACpBH,EAAKI,MAAMC,aAAeJ,KAAKV,OAAOc,aAAe,MAAMC,QAAQ,IAAK,KAEpEL,KAAKN,QADkC,MAAvCK,EAAKO,QAAQ,uBACE,gBAEA,eAGnB,IAAIC,EAAqB,IAAIC,IAAIR,MAAMV,OAAOmB,UAC1CC,EAA2B,IAAIF,IAAIR,MAAMW,aAAaF,UAAYT,MAAMV,OAAOmB,UACnFG,OACKC,QAAQD,OAAOE,OAAO,GAAIC,IAAaC,gBACvCC,QAAQ,EAAEC,EAAKC,MACZZ,EAAmBa,aAAaC,IAAIH,EAAKC,GACzCT,EAAyBU,aAAaC,IAAIH,EAAKC,EAAK,GAG5DnB,KAAKT,OAAS,CACVwB,IAAaO,WAAWZ,EAA0B,KAAMd,IAAwB2B,aAAaC,QAAU,IACvGT,IAAaO,WAAWf,EAAoB,KAAMX,IAAwB2B,aAAaE,UAAY,KAElGC,KAAK,IACd,CAACC,SAAA3B,KAAA,4DApCQL,KAAqBiC,GAArBjC,EAAqB,GAoC7B,GApC6BgC,SAAA3B,KAAA,UAAA6B,EAAAC,IAAA,MAArBnC,EAAqBoC,UAAA,oBAAAC,SAAA,CAAA9C,OAAA+C,MAAA,EAAAC,KAAA,EAAAC,OAAA,mHAAAC,SAAA,SAAAC,EAAAC,MAAA,EAAAD,GAjD9BnD,MAPA,EAAAqD,EAAA,UAOArD,CAN4C,EAAAsD,EAAA,yBAAAtD,6BAAlBA,MAAtB,aAAAoD,EAAAlD,SAAA,KAAAkD,EAAAlD,SAAAC,KAAsBH,CAAA,WAAAuD,2rBAuDjB9C,CAAsB,KCrDtB+C,EAAkB,MAAzB,MAAOA,EAAkBf,SACpB3B,KAAA2C,WAAa,CAAEC,aAAgBjD,GAAuBgC,SAAA3B,KAAA,mBAAA4B,iBADpDc,EAAkB,EAAAf,SAAA3B,KAAA,UAAA6B,EAAAgB,GAAA,MAAlBH,IAAkBf,SAAA3B,KAAA,UAAA6B,EAAAiB,IAAA,UALvBC,KACAC,IACAC,cAGKP,CAAkB","names":["i0","ctx_r0","settings","link","media","srcset","size","length","imgSize","ImageElementComponent","SettingsSetterDirective","ngOnInit","super","_elm","this","elm","nativeElement","style","aspectRatio","replace","closest","backgroundImageUrl","URL","imageUrl","backgroundImageMobileUrl","mediaMobile","Object","entries","assign","ImgDirective","QUERY_ENTRIES","forEach","key","value","searchParams","set","_sourceSet","SRCSET_SIZES","mobile","desktopM","join","static","__ngFactoryType__","core","VBU","selectors","features","decls","vars","consts","template","rf","ctx","ImageElementComponent_a_0_Template","ImageElementComponent_ng_template_1_Template","imgTemplate_r2","ImageElementModule","components","imageElement","$C","G2t","CommonModule","MediaModule","NavigationModule"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./src/business/grid/image/image.component.ts","./src/business/grid/image/image.module.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { GeneralElementSettings, SettingsSetterDirective } from 'src/business/models/general-element-settings';\nimport { UmbracoImage } from 'src/core-lib/umbraco/umbraco-image.model';\nimport { ImgDirective } from 'src/layout/media/directives/img.directive';\n\nexport interface ImageSettings extends GeneralElementSettings {\n imageMaxWidth?: string;\n alt?: string;\n link?: string;\n}\n\n@Component({\n selector: 'image-element',\n template: `\n \n 0 ? size : imgSize\"/>\n \n \n 0 ? size : imgSize\"/>\n \n `,\n styles: `\n :host {\n background-color: var(--background-color);\n color: var(--color);\n display: flex;\n margin: auto;\n max-width: var(--content-width);\n width: 100%;\n\n &.big {\n width: 100%;\n }\n &.large {\n width: clamp(700px, 80%, 2000px);\n }\n &.medium {\n width: clamp(500px, 60%, 1500px);\n }\n &.small {\n width: clamp(450px, 30%, 700px);\n }\n &.extra-small {\n width: clamp(300px, 20%, 500px);\n }\n }\n\n img {\n display: block;\n margin-left: auto;\n margin-right: auto;\n width: 100%;\n\n\n\n &[src='/dist/assets/no-image.svg'] {\n margin: auto;\n width: 15rem;\n }\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ImageElementComponent extends SettingsSetterDirective {\n media: UmbracoImage;\n mediaMobile?: UmbracoImage;\n size: string;\n declare settings: ImageSettings;\n imgSize: string;\n srcset: string;\n // content-full\n // content-half\n // content-third\n // content-quart\n\n ngOnInit(): void {\n super.ngOnInit()\n let _elm = this.elm.nativeElement;\n _elm.style.aspectRatio = (this.media?.aspectRatio ?? '1')?.replace(':', '/');\n if (_elm.closest('app-carousel-simple') != null)\n this.imgSize = 'content-quart';\n else\n this.imgSize = 'content-full';\n\n\n let backgroundImageUrl = new URL(this?.media?.imageUrl);\n let backgroundImageMobileUrl = new URL(this?.mediaMobile?.imageUrl ?? this?.media?.imageUrl);\n Object\n .entries(Object.assign({}, ImgDirective.QUERY_ENTRIES))\n .forEach(([key, value]) => {\n backgroundImageUrl.searchParams.set(key, value);\n backgroundImageMobileUrl.searchParams.set(key, value);\n });\n\n this.srcset = [\n ImgDirective._sourceSet(backgroundImageMobileUrl, null, SettingsSetterDirective.SRCSET_SIZES.mobile ?? []),\n ImgDirective._sourceSet(backgroundImageUrl, null, SettingsSetterDirective.SRCSET_SIZES.desktopM ?? []),\n ]\n .join(',')\n }\n\n}\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NavigationModule } from 'src/core-lib/navigation/navigation.module';\nimport { MediaModule } from 'src/layout/media/media.module';\nimport { ImageElementComponent } from './image.component';\n\n@NgModule({\n declarations: [\n ImageElementComponent,\n ],\n\n imports: [\n CommonModule,\n MediaModule,\n NavigationModule,\n ],\n})\nexport class ImageElementModule {\n static components = { 'imageElement': ImageElementComponent };\n}\n"],"x_google_ignoreList":[]}