{"version":3,"file":"bytescale-upload-widget-angular.mjs","sources":["../../../projects/bytescale-upload-widget-angular/src/lib/upload-dropzone.component.ts","../../../projects/bytescale-upload-widget-angular/src/lib/upload-button.directive.ts","../../../projects/bytescale-upload-widget-angular/src/lib/uploadWidget.module.ts","../../../projects/bytescale-upload-widget-angular/src/public-api.ts","../../../projects/bytescale-upload-widget-angular/src/bytescale-upload-widget-angular.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { UploadWidget, UploadWidgetConfig, UploadWidgetResult } from \"@bytescale/upload-widget\";\nimport { UploadWidgetOnUpdateEvent } from \"@bytescale/upload-widget/dist/config/UploadWidgetOnUpdateEvent\";\n\n@Component({\n  selector: \"upload-dropzone\",\n  template: `\n    <div\n      #container\n      style=\"position: relative; width: 100%; min-width: 280px; maxWidth: {{ width }}; height: {{ height }}\"\n    ></div>\n  `,\n  styles: []\n})\nexport class UploadDropzoneComponent implements AfterViewInit {\n  @Input(\"options\") options?: UploadWidgetConfig;\n  @Input(\"onComplete\") onComplete?: (files: UploadWidgetResult[]) => void;\n  @Input(\"onUpdate\") onUpdate?: (event: UploadWidgetOnUpdateEvent) => void;\n  @Input(\"width\") width: string = \"600px\";\n  @Input(\"height\") height: string = \"375px\";\n\n  @ViewChild(\"container\") container!: ElementRef;\n\n  ngAfterViewInit() {\n    const onUpdateParams: Partial<UploadWidgetConfig> = this.onUpdate === undefined ? {} : { onUpdate: this.onUpdate };\n\n    UploadWidget.open({\n      ...this.getOptions(),\n      ...onUpdateParams,\n      container: this.container.nativeElement,\n      layout: \"inline\"\n    }).then(\n      files => {\n        if (this.onComplete !== undefined) {\n          this.onComplete(files);\n        }\n      },\n      error => console.error(\"Uploader error.\", error)\n    );\n  }\n\n  private getOptions(): UploadWidgetConfig {\n    if (this.options === undefined) {\n      throw new Error(\n        \"[bytescale-upload-widget] You must provide the 'options' attribute to the 'UploadDropzone' component.\"\n      );\n    }\n\n    return this.options;\n  }\n}\n","import { Directive, HostListener, Input, OnInit } from \"@angular/core\";\nimport { UploadWidget, UploadWidgetConfig, UploadWidgetResult } from \"@bytescale/upload-widget\";\n\n@Directive({\n  selector: \"[uploadButton]\"\n})\nexport class UploadButtonDirective implements OnInit {\n  @Input(\"uploadOptions\") options?: UploadWidgetConfig;\n  @Input(\"uploadComplete\") onComplete?: (files: UploadWidgetResult[]) => void;\n\n  @HostListener(\"click\", [\"$event\"]) onClick(event: any) {\n    event.preventDefault();\n    UploadWidget.open(this.getOptions()).then(\n      files => {\n        if (this.onComplete !== undefined) {\n          this.onComplete(files);\n        }\n      },\n      error => console.error(\"Uploader error.\", error)\n    );\n  }\n\n  ngOnInit(): void {\n    try {\n      this.getOptions();\n    } catch (e) {\n      console.error(e);\n    }\n  }\n\n  private getOptions(): UploadWidgetConfig {\n    if (this.options === undefined) {\n      throw new Error(\n        \"[bytescale-upload-widget] You must provide the 'uploadOptions' attribute to elements marked with the 'uploadButton' directive.\"\n      );\n    }\n\n    return this.options;\n  }\n}\n","import { NgModule } from \"@angular/core\";\nimport { UploadDropzoneComponent } from \"./upload-dropzone.component\";\nimport { UploadButtonDirective } from \"./upload-button.directive\";\n\n@NgModule({\n  declarations: [UploadDropzoneComponent, UploadButtonDirective],\n  imports: [],\n  exports: [UploadDropzoneComponent, UploadButtonDirective]\n})\nexport class UploadWidgetModule {}\n","/*\n * Public API Surface of @bytescale/upload-widget-angular\n */\n\nexport * from \"./lib/upload-dropzone.component\";\nexport * from \"./lib/upload-button.directive\";\nexport * from \"./lib/uploadWidget.module\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}