{"version":3,"file":"annuadvent-ngx-cms-cms-image-form.mjs","sources":["../../../projects/ngx-cms/cms-image-form/src/components/cms-image-form/cms-image-form.component.ts","../../../projects/ngx-cms/cms-image-form/src/components/cms-image-form/cms-image-form.component.html","../../../projects/ngx-cms/cms-image-form/src/interfaces/cms-image-form.interface.ts","../../../projects/ngx-cms/cms-image-form/src/cms-image-form.module.ts","../../../projects/ngx-cms/cms-image-form/annuadvent-ngx-cms-cms-image-form.ts"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ImageInfo } from '../../interfaces/cms-image-form.interface';\r\nimport { ImageBrowserService, ImageFileInfo } from '@annuadvent/ngx-tools/fire-storage';\r\nimport { OpenaiService } from '@annuadvent/ngx-tools/openai';\r\nimport { AppConfigService } from '@annuadvent/ngx-core/app-config';\r\n\r\n@Component({\r\n  selector: 'anu-cms-image-form',\r\n  templateUrl: './cms-image-form.component.html',\r\n  styleUrls: ['./cms-image-form.component.scss']\r\n})\r\nexport class CmsImageFormComponent implements OnInit {\r\n  @Input() src: string = '';\r\n  @Input() alt: string = '';\r\n  @Input() enableOpenai: boolean = false;\r\n  @Input() enableImageBrowser: boolean = true;\r\n\r\n  @Output() cancel = new EventEmitter();\r\n  @Output() save = new EventEmitter<ImageInfo>();\r\n\r\n  constructor(\r\n    private imageBrowserService: ImageBrowserService,\r\n    private openaiService: OpenaiService,\r\n    private appConfigService: AppConfigService,\r\n  ) { \r\n    this.imageBrowserService.selected.subscribe((imageFile: ImageFileInfo) => {\r\n      this.src = imageFile && `getImage?imageId=${imageFile.fullPath}` || '';\r\n    })\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.openaiService.initOpenai(this.appConfigService.openai);\r\n  }\r\n\r\n  public cancelClicked(event: any) {\r\n    event.preventDefault();\r\n    this.cancel.emit();\r\n  }\r\n\r\n  public saveClicked(event: any) {\r\n    event.preventDefault();\r\n    this.save.emit({ src: this.src, alt: this.alt } as ImageInfo);\r\n  }\r\n\r\n  public openaiFileUploaded(imageFile: any): void {\r\n    this.src = imageFile && `getImage?imageId=${imageFile.fullPath}` || '';\r\n  }  \r\n}\r\n","<form class=\"container disable-select\">\r\n  <div class=\"container border border-round spacing-half\">\r\n    <label>Image source</label>\r\n    <input type=\"text\" [(ngModel)]=\"src\" name=\"image-src\" />\r\n    <label>Image alt text</label>\r\n    <input type=\"text\" [(ngModel)]=\"alt\" name=\"image-alt\" />\r\n    <div class=\"row spacing\">\r\n      <div class=\"col-6 center\">\r\n        <a class=\"btn primary\" href=\"#\" (click)=\"cancelClicked($event)\"\r\n          >Cancel</a\r\n        >\r\n      </div>\r\n      <div class=\"col-6 center\">\r\n        <a class=\"btn primary\" href=\"#\" (click)=\"saveClicked($event)\">Save</a>\r\n      </div>\r\n    </div>\r\n  </div>\r\n  <anu-collapsible\r\n    *ngIf=\"enableOpenai\"\r\n    [isDropdownStyle]=\"true\"\r\n    [collapsed]=\"false\"\r\n    class=\"spacing spacing-around-v shadow border-radius container\"\r\n    [hamBurgerClassNames]=\"['size-sm']\"\r\n  >\r\n    <anu-collapsible-header>\r\n      <strong>Autogenerate Image</strong>\r\n    </anu-collapsible-header>\r\n    <anu-collapsible-content class=\"spacing\">\r\n      <anu-openai-image-form\r\n        (fileUploaded)=\"openaiFileUploaded($event)\"\r\n      ></anu-openai-image-form>\r\n    </anu-collapsible-content>\r\n  </anu-collapsible>\r\n\r\n  <anu-collapsible\r\n    *ngIf=\"enableImageBrowser\"\r\n    [isDropdownStyle]=\"true\"\r\n    [collapsed]=\"false\"\r\n    class=\"spacing spacing-around-v shadow border-radius container\"\r\n    [hamBurgerClassNames]=\"['size-sm']\"\r\n  >\r\n    <anu-collapsible-header>\r\n      <strong>Browse from Server</strong>\r\n    </anu-collapsible-header>\r\n    <anu-collapsible-content>\r\n      <anu-image-browser></anu-image-browser>\r\n    </anu-collapsible-content>\r\n  </anu-collapsible>\r\n</form>\r\n","\r\nexport interface ImageInfo {\r\n    src: string;\r\n    alt: string;\r\n    imageData?: any;\r\n};\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { CmsImageFormComponent } from './components/cms-image-form/cms-image-form.component';\r\nimport { ErrorModule } from '@annuadvent/ngx-common-ui/error';\r\nimport { CollapsibleModule } from '@annuadvent/ngx-common-ui/collapsible';\r\nimport { UtilsModule } from '@annuadvent/ngx-core/utils';\r\nimport { FireStorageModule } from '@annuadvent/ngx-tools/fire-storage';\r\nimport { OpenaiModule } from '@annuadvent/ngx-tools/openai';\r\n\r\n\r\n\r\n@NgModule({\r\n  declarations: [CmsImageFormComponent],\r\n  imports: [\r\n    CommonModule,\r\n    FormsModule,\r\n    ErrorModule,\r\n    CollapsibleModule,\r\n    UtilsModule,\r\n    FireStorageModule,\r\n    OpenaiModule,\r\n  ],\r\n  exports: [CmsImageFormComponent],\r\n})\r\nexport class CmsImageFormModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}