UNPKG

hslayers-ng

Version:
103 lines (97 loc) 7.32 kB
import * as i0 from '@angular/core'; import { EventEmitter, HostListener, Output, Directive, ViewChild, Input, Component, NgModule } from '@angular/core'; import * as i1 from '@angular/common'; import { CommonModule } from '@angular/common'; import * as i3 from '@ngx-translate/core'; import { TranslatePipe } from '@ngx-translate/core'; import { FormsModule } from '@angular/forms'; class HsFileDropDirective { constructor() { this.filesDropped = new EventEmitter(); this.filesHovered = new EventEmitter(); } onDrop($event) { $event.preventDefault(); const transfer = $event.dataTransfer; this.filesDropped.emit(transfer.files); this.filesHovered.emit(false); } onDragOver($event) { $event.preventDefault(); this.filesHovered.emit(true); } onDragLeave($event) { this.filesHovered.emit(false); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsFileDropDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.3", type: HsFileDropDirective, isStandalone: false, selector: "[hsFileDrop]", outputs: { filesDropped: "filesDropped", filesHovered: "filesHovered" }, host: { listeners: { "drop": "onDrop($event)", "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsFileDropDirective, decorators: [{ type: Directive, args: [{ selector: '[hsFileDrop]', standalone: false, }] }], ctorParameters: () => [], propDecorators: { filesDropped: [{ type: Output }], filesHovered: [{ type: Output }], onDrop: [{ type: HostListener, args: ['drop', ['$event']] }], onDragOver: [{ type: HostListener, args: ['dragover', ['$event']] }], onDragLeave: [{ type: HostListener, args: ['dragleave', ['$event']] }] } }); class HsUploadComponent { emitHandleUpload(fileList, dropped) { this.uploaded.emit({ fileList, uploader: this.uploader, dropped }); } dropZoneState($event) { this.dropzoneActive = $event; } getFileInput() { return this.fileInput; } constructor() { this.uploaded = new EventEmitter(); this.dropzoneActive = false; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.3", type: HsUploadComponent, isStandalone: false, selector: "hs-file-upload", inputs: { acceptedFormats: "acceptedFormats", uploader: "uploader" }, outputs: { uploaded: "uploaded" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div class=\"d-flex justify-content-center align-items-center w-100 dropzone-container\">\n <div class=\"dropzone p-4\" hsFileDrop (filesDropped)=\"emitHandleUpload($event, true)\"\n (filesHovered)=\"dropZoneState($event)\" [ngClass]=\"{'active': dropzoneActive}\">\n <p class=\"dropzone-label mt-2 text-primary\">{{'ADDLAYERS.Vector.dragAndDropFiles' | translate }}</p>\n </div>\n <p class=\"px-5\">{{'COMMON.or' | translate }}</p>\n <label class=\"dropzone-label\">\n <input #fileInput type=\"file\" style=\"position:fixed\" [accept]=\"acceptedFormats\" [id]=\"uploader\"\n class=\"inputfile\" (change)=\"emitHandleUpload($event.target.files, false)\" multiple>\n <label [for]=\"uploader\" class=\"p-2 rounded d-flex align-items-center\"> <i class=\"fa-solid fa-cloud-arrow-up pe-2\"></i>\n {{'ADDLAYERS.Vector.chooseFiles' | translate }}</label>\n </label>\n\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: HsFileDropDirective, selector: "[hsFileDrop]", outputs: ["filesDropped", "filesHovered"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsUploadComponent, decorators: [{ type: Component, args: [{ selector: 'hs-file-upload', standalone: false, template: "<div class=\"d-flex justify-content-center align-items-center w-100 dropzone-container\">\n <div class=\"dropzone p-4\" hsFileDrop (filesDropped)=\"emitHandleUpload($event, true)\"\n (filesHovered)=\"dropZoneState($event)\" [ngClass]=\"{'active': dropzoneActive}\">\n <p class=\"dropzone-label mt-2 text-primary\">{{'ADDLAYERS.Vector.dragAndDropFiles' | translate }}</p>\n </div>\n <p class=\"px-5\">{{'COMMON.or' | translate }}</p>\n <label class=\"dropzone-label\">\n <input #fileInput type=\"file\" style=\"position:fixed\" [accept]=\"acceptedFormats\" [id]=\"uploader\"\n class=\"inputfile\" (change)=\"emitHandleUpload($event.target.files, false)\" multiple>\n <label [for]=\"uploader\" class=\"p-2 rounded d-flex align-items-center\"> <i class=\"fa-solid fa-cloud-arrow-up pe-2\"></i>\n {{'ADDLAYERS.Vector.chooseFiles' | translate }}</label>\n </label>\n\n</div>\n" }] }], ctorParameters: () => [], propDecorators: { uploaded: [{ type: Output }], acceptedFormats: [{ type: Input }], uploader: [{ type: Input }], fileInput: [{ type: ViewChild, args: ['fileInput'] }] } }); class HsUploadModule { static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); } static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.3", ngImport: i0, type: HsUploadModule, declarations: [HsUploadComponent, HsFileDropDirective], imports: [CommonModule, TranslatePipe, FormsModule], exports: [HsUploadComponent, HsFileDropDirective] }); } static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsUploadModule, imports: [CommonModule, FormsModule] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: HsUploadModule, decorators: [{ type: NgModule, args: [{ declarations: [HsUploadComponent, HsFileDropDirective], imports: [CommonModule, TranslatePipe, FormsModule], providers: [], exports: [HsUploadComponent, HsFileDropDirective], }] }] }); /** * Generated bundle index. Do not edit. */ export { HsFileDropDirective, HsUploadComponent, HsUploadModule }; //# sourceMappingURL=hslayers-ng-common-upload.mjs.map