nxt-dropzone-wrapper 16.0.0-alpha.6 → 16.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/dropzone.component.mjs +173 -0
- package/esm2022/lib/dropzone.directive.mjs +332 -0
- package/{esm2020 → esm2022}/lib/dropzone.interfaces.mjs +65 -65
- package/esm2022/lib/dropzone.module.mjs +30 -0
- package/{esm2020 → esm2022}/nxt-dropzone-wrapper.mjs +4 -4
- package/{esm2020 → esm2022}/public-api.mjs +4 -4
- package/{fesm2020 → fesm2022}/nxt-dropzone-wrapper.mjs +575 -575
- package/{fesm2020 → fesm2022}/nxt-dropzone-wrapper.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/dropzone.component.d.ts +54 -54
- package/lib/dropzone.directive.d.ts +70 -70
- package/lib/dropzone.interfaces.d.ts +66 -66
- package/lib/dropzone.module.d.ts +9 -9
- package/package.json +7 -13
- package/public-api.d.ts +4 -4
- package/esm2020/lib/dropzone.component.mjs +0 -172
- package/esm2020/lib/dropzone.directive.mjs +0 -331
- package/esm2020/lib/dropzone.module.mjs +0 -29
- package/fesm2015/nxt-dropzone-wrapper.mjs +0 -570
- package/fesm2015/nxt-dropzone-wrapper.mjs.map +0 -1
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
/* eslint-disable @angular-eslint/no-output-rename */
|
|
2
|
+
import { Component, EventEmitter, forwardRef, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { DropzoneDirective } from './dropzone.directive';
|
|
4
|
+
import { NXT_DROPZONE_LISTENERS } from './dropzone.interfaces';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "./dropzone.directive";
|
|
8
|
+
class DropzoneComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
/** Disables / detaches Dropzone from the element */
|
|
11
|
+
this.disabled = false;
|
|
12
|
+
/** Message to show for the user on the upload area */
|
|
13
|
+
this.message = 'Click or drag files to upload';
|
|
14
|
+
/** Placeholder image to be shown as the upload area */
|
|
15
|
+
this.placeholder = '';
|
|
16
|
+
/** Use 'dropzone' class (use provided default styles) */
|
|
17
|
+
this.useDropzoneClass = true;
|
|
18
|
+
this.DZ_INIT = new EventEmitter();
|
|
19
|
+
this.DZ_DROP = new EventEmitter();
|
|
20
|
+
this.DZ_DRAGSTART = new EventEmitter();
|
|
21
|
+
this.DZ_DRAGEND = new EventEmitter();
|
|
22
|
+
this.DZ_DRAGENTER = new EventEmitter();
|
|
23
|
+
this.DZ_DRAGOVER = new EventEmitter();
|
|
24
|
+
this.DZ_DRAGLEAVE = new EventEmitter();
|
|
25
|
+
this.DZ_PASTE = new EventEmitter();
|
|
26
|
+
this.DZ_RESET = new EventEmitter();
|
|
27
|
+
this.DZ_ADDEDFILE = new EventEmitter();
|
|
28
|
+
this.DZ_ADDEDFILES = new EventEmitter();
|
|
29
|
+
this.DZ_REMOVEDFILE = new EventEmitter();
|
|
30
|
+
this.DZ_THUMBNAIL = new EventEmitter();
|
|
31
|
+
this.DZ_ERROR = new EventEmitter();
|
|
32
|
+
this.DZ_ERRORMULTIPLE = new EventEmitter();
|
|
33
|
+
this.DZ_PROCESSING = new EventEmitter();
|
|
34
|
+
this.DZ_PROCESSINGMULTIPLE = new EventEmitter();
|
|
35
|
+
this.DZ_UPLOADPROGRESS = new EventEmitter();
|
|
36
|
+
this.DZ_TOTALUPLOADPROGRESS = new EventEmitter();
|
|
37
|
+
this.DZ_SENDING = new EventEmitter();
|
|
38
|
+
this.DZ_SENDINGMULTIPLE = new EventEmitter();
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
40
|
+
this.DZ_SUCCESS = new EventEmitter();
|
|
41
|
+
this.DZ_SUCCESSMULTIPLE = new EventEmitter();
|
|
42
|
+
this.DZ_CANCELED = new EventEmitter();
|
|
43
|
+
this.DZ_CANCELEDMULTIPLE = new EventEmitter();
|
|
44
|
+
this.DZ_COMPLETE = new EventEmitter();
|
|
45
|
+
this.DZ_COMPLETEMULTIPLE = new EventEmitter();
|
|
46
|
+
this.DZ_MAXFILESEXCEEDED = new EventEmitter();
|
|
47
|
+
this.DZ_MAXFILESREACHED = new EventEmitter();
|
|
48
|
+
this.DZ_QUEUECOMPLETE = new EventEmitter();
|
|
49
|
+
}
|
|
50
|
+
/** @internal */
|
|
51
|
+
ngOnInit() { }
|
|
52
|
+
/** @internal */
|
|
53
|
+
getPlaceholder() {
|
|
54
|
+
return 'url(' + encodeURI(this.placeholder) + ')';
|
|
55
|
+
}
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: DropzoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: DropzoneComponent, selector: "nxt-dropzone", inputs: { disabled: "disabled", config: "config", message: "message", placeholder: "placeholder", useDropzoneClass: "useDropzoneClass" }, outputs: { DZ_INIT: "init", DZ_DROP: "drop", DZ_DRAGSTART: "dragStart", DZ_DRAGEND: "dragEnd", DZ_DRAGENTER: "dragEnter", DZ_DRAGOVER: "dragOver", DZ_DRAGLEAVE: "dragLeave", DZ_PASTE: "paste", DZ_RESET: "reset", DZ_ADDEDFILE: "addedFile", DZ_ADDEDFILES: "addedFiles", DZ_REMOVEDFILE: "removedFile", DZ_THUMBNAIL: "thumbnail", DZ_ERROR: "error", DZ_ERRORMULTIPLE: "errorMultiple", DZ_PROCESSING: "processing", DZ_PROCESSINGMULTIPLE: "processingMultiple", DZ_UPLOADPROGRESS: "uploadProgress", DZ_TOTALUPLOADPROGRESS: "totalUploadProgress", DZ_SENDING: "sending", DZ_SENDINGMULTIPLE: "sendingMultiple", DZ_SUCCESS: "success", DZ_SUCCESSMULTIPLE: "successMultiple", DZ_CANCELED: "canceled", DZ_CANCELEDMULTIPLE: "canceledMultiple", DZ_COMPLETE: "complete", DZ_COMPLETEMULTIPLE: "completeMultiple", DZ_MAXFILESEXCEEDED: "maxFilesExceeded", DZ_MAXFILESREACHED: "maxFilesReached", DZ_QUEUECOMPLETE: "queueComplete" }, providers: [{
|
|
58
|
+
provide: NXT_DROPZONE_LISTENERS,
|
|
59
|
+
useValue: forwardRef(() => DropzoneComponent)
|
|
60
|
+
}], viewQueries: [{ propertyName: "directiveRef", first: true, predicate: DropzoneDirective, descendants: true }], ngImport: i0, template: "<div class=\"dz-wrapper\"\n [class.dropzone]=\"useDropzoneClass\"\n [nxtDropzone]=\"config\"\n [disabled]=\"disabled\">\n <div class=\"dz-message\"\n [class.disabled]=\"disabled\"\n [class.dz-placeholder]=\"placeholder\">\n <div class=\"dz-text\"\n [innerHTML]=\"config?.dictDefaultMessage || message\"></div>\n\n <div *ngIf=\"placeholder\"\n class=\"dz-image\"\n [style.background-image]=\"getPlaceholder()\"></div>\n </div>\n\n <ng-content></ng-content>\n</div>\n", styles: ["nxt-dropzone{display:flex;width:100%;height:auto}nxt-dropzone>.dropzone.dz-wrapper{overflow:auto;width:100%;min-height:0;max-height:100%;padding:0;border:none;color:#666;background:transparent;border-radius:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px}nxt-dropzone>.dropzone.dz-wrapper .dz-message{overflow:auto;min-height:60px;max-height:100%;border:2px dashed #aaa;background-color:#eee;display:flex;align-items:center;justify-content:center;margin:0;border-radius:5px;grid-column:span 2;grid-row:span 2}nxt-dropzone>.dropzone.dz-wrapper .dz-message .dz-text{padding:8px 16px;text-align:center}nxt-dropzone>.dropzone.dz-wrapper .dz-message .dz-image{width:100%;height:100%;background-size:contain;background-repeat:no-repeat;background-position:50% 50%}nxt-dropzone>.dropzone.dz-wrapper .dz-message.disabled{cursor:not-allowed}nxt-dropzone>.dropzone.dz-wrapper .dz-message.disabled .dz-text{opacity:.5}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder{position:relative;border-color:#aaa0;transition:border-color .25s ease-in-out}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder .dz-text{position:absolute;z-index:1;opacity:0;font-weight:700;background-color:#ffffff80;transition:filter .25s ease-in-out,opacity .25s ease-in-out}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled){border-color:#aaa}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled) .dz-text{opacity:1}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled) .dz-image{filter:blur(8px)}nxt-dropzone>.dropzone.dz-wrapper .dz-preview{margin:0}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-details{padding:24px}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-progress{width:80%;border:1px solid #aaa;border-radius:5px;overflow:hidden}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-progress .dz-upload{background-color:#666}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-filename span{display:block;overflow:hidden;width:100%;max-width:100%;text-overflow:ellipsis}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-filename span:hover{overflow:visible;white-space:normal;word-wrap:break-word}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-image{border-radius:5px;overflow:hidden;min-width:120px;min-height:120px;width:auto;height:auto}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-message{width:100%;height:100%}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview{width:100%;height:100%;grid-column:span 2;grid-row:span 2}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview .dz-image{width:100%;height:100%}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview .dz-image img{display:block;width:100%;height:auto;margin:0}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-error-message{top:50%;left:50%;transform:translate(-50%) translateY(100%)}nxt-dropzone>.dropzone.dz-wrapper.dz-single.dz-started .dz-message{display:none}nxt-dropzone>.dropzone.dz-wrapper.dz-multiple.dz-started .dz-message{display:flex}\n", "@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dropzone{min-height:150px;border:1px solid rgba(0,0,0,.8);border-radius:5px;padding:20px}.dropzone.dz-clickable{cursor:pointer}.dropzone.dz-clickable *{cursor:default}.dropzone.dz-clickable .dz-message,.dropzone.dz-clickable .dz-message *{cursor:pointer}.dropzone.dz-started .dz-message{display:none}.dropzone.dz-drag-hover{border-style:solid}.dropzone.dz-drag-hover .dz-message{opacity:.5}.dropzone .dz-message{text-align:center;margin:3em 0}.dropzone .dz-message .dz-button{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}.dropzone .dz-preview{position:relative;display:inline-block;vertical-align:top;margin:16px;min-height:100px}.dropzone .dz-preview:hover{z-index:1000}.dropzone .dz-preview.dz-file-preview .dz-image{border-radius:20px;background:#999;background:linear-gradient(to bottom,#eee,#ddd)}.dropzone .dz-preview.dz-file-preview .dz-details{opacity:1}.dropzone .dz-preview.dz-image-preview{background:#fff}.dropzone .dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dropzone .dz-preview .dz-remove{font-size:14px;text-align:center;display:block;cursor:pointer;border:none}.dropzone .dz-preview .dz-remove:hover{text-decoration:underline}.dropzone .dz-preview:hover .dz-details{opacity:1}.dropzone .dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:13px;min-width:100%;max-width:100%;padding:2em 1em;text-align:center;color:#000000e6;line-height:150%}.dropzone .dz-preview .dz-details .dz-size{margin-bottom:1em;font-size:16px}.dropzone .dz-preview .dz-details .dz-filename{white-space:nowrap}.dropzone .dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:#fffc}.dropzone .dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dropzone .dz-preview .dz-details .dz-filename span,.dropzone .dz-preview .dz-details .dz-size span{background-color:#fff6;padding:0 .4em;border-radius:3px}.dropzone .dz-preview:hover .dz-image img{transform:scale(1.05);filter:blur(8px)}.dropzone .dz-preview .dz-image{border-radius:20px;overflow:hidden;width:120px;height:120px;position:relative;display:block;z-index:10}.dropzone .dz-preview .dz-image img{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview .dz-success-mark,.dropzone .dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:500;position:absolute;display:block;top:50%;left:50%;margin-left:-27px;margin-top:-27px;background:rgba(0,0,0,.8);border-radius:50%}.dropzone .dz-preview .dz-success-mark svg,.dropzone .dz-preview .dz-error-mark svg{display:block;width:54px;height:54px;fill:#fff}.dropzone .dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dropzone .dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dropzone .dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dropzone .dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:20px;top:50%;margin-top:-10px;left:15%;right:15%;border:3px solid rgba(0,0,0,.8);background:rgba(0,0,0,.8);border-radius:10px;overflow:hidden}.dropzone .dz-preview .dz-progress .dz-upload{background:#fff;display:block;position:relative;height:100%;width:0;transition:width .3s ease-in-out;border-radius:17px}.dropzone .dz-preview.dz-error .dz-error-message{display:block}.dropzone .dz-preview.dz-error:hover .dz-error-message{opacity:1;pointer-events:auto}.dropzone .dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:8px;font-size:13px;top:130px;left:-10px;width:140px;background:#b10606;padding:.5em 1em;color:#fff}.dropzone .dz-preview .dz-error-message:after{content:\"\";position:absolute;top:-6px;left:64px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #b10606}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DropzoneDirective, selector: "[nxtDropzone]", inputs: ["disabled", "nxtDropzone"], outputs: ["init", "drop", "dragStart", "dragEnd", "dragEnter", "dragOver", "dragLeave", "paste", "reset", "addedFile", "addedFiles", "removedFile", "thumbnail", "error", "errorMultiple", "processing", "processingMultiple", "uploadProgress", "totalUploadProgress", "sending", "sendingMultiple", "success", "successMultiple", "canceled", "canceledMultiple", "complete", "completeMultiple", "maxFilesExceeded", "maxFilesReached", "queueComplete"], exportAs: ["nxtDropzone"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
61
|
+
}
|
|
62
|
+
export { DropzoneComponent };
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: DropzoneComponent, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ selector: 'nxt-dropzone', encapsulation: ViewEncapsulation.None, providers: [{
|
|
66
|
+
provide: NXT_DROPZONE_LISTENERS,
|
|
67
|
+
useValue: forwardRef(() => DropzoneComponent)
|
|
68
|
+
}], template: "<div class=\"dz-wrapper\"\n [class.dropzone]=\"useDropzoneClass\"\n [nxtDropzone]=\"config\"\n [disabled]=\"disabled\">\n <div class=\"dz-message\"\n [class.disabled]=\"disabled\"\n [class.dz-placeholder]=\"placeholder\">\n <div class=\"dz-text\"\n [innerHTML]=\"config?.dictDefaultMessage || message\"></div>\n\n <div *ngIf=\"placeholder\"\n class=\"dz-image\"\n [style.background-image]=\"getPlaceholder()\"></div>\n </div>\n\n <ng-content></ng-content>\n</div>\n", styles: ["nxt-dropzone{display:flex;width:100%;height:auto}nxt-dropzone>.dropzone.dz-wrapper{overflow:auto;width:100%;min-height:0;max-height:100%;padding:0;border:none;color:#666;background:transparent;border-radius:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px}nxt-dropzone>.dropzone.dz-wrapper .dz-message{overflow:auto;min-height:60px;max-height:100%;border:2px dashed #aaa;background-color:#eee;display:flex;align-items:center;justify-content:center;margin:0;border-radius:5px;grid-column:span 2;grid-row:span 2}nxt-dropzone>.dropzone.dz-wrapper .dz-message .dz-text{padding:8px 16px;text-align:center}nxt-dropzone>.dropzone.dz-wrapper .dz-message .dz-image{width:100%;height:100%;background-size:contain;background-repeat:no-repeat;background-position:50% 50%}nxt-dropzone>.dropzone.dz-wrapper .dz-message.disabled{cursor:not-allowed}nxt-dropzone>.dropzone.dz-wrapper .dz-message.disabled .dz-text{opacity:.5}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder{position:relative;border-color:#aaa0;transition:border-color .25s ease-in-out}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder .dz-text{position:absolute;z-index:1;opacity:0;font-weight:700;background-color:#ffffff80;transition:filter .25s ease-in-out,opacity .25s ease-in-out}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled){border-color:#aaa}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled) .dz-text{opacity:1}nxt-dropzone>.dropzone.dz-wrapper .dz-message.dz-placeholder:hover:not(.disabled) .dz-image{filter:blur(8px)}nxt-dropzone>.dropzone.dz-wrapper .dz-preview{margin:0}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-details{padding:24px}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-progress{width:80%;border:1px solid #aaa;border-radius:5px;overflow:hidden}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-progress .dz-upload{background-color:#666}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-filename span{display:block;overflow:hidden;width:100%;max-width:100%;text-overflow:ellipsis}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-filename span:hover{overflow:visible;white-space:normal;word-wrap:break-word}nxt-dropzone>.dropzone.dz-wrapper .dz-preview .dz-image{border-radius:5px;overflow:hidden;min-width:120px;min-height:120px;width:auto;height:auto}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-message{width:100%;height:100%}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview{width:100%;height:100%;grid-column:span 2;grid-row:span 2}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview .dz-image{width:100%;height:100%}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-preview .dz-image img{display:block;width:100%;height:auto;margin:0}nxt-dropzone>.dropzone.dz-wrapper.dz-single .dz-error-message{top:50%;left:50%;transform:translate(-50%) translateY(100%)}nxt-dropzone>.dropzone.dz-wrapper.dz-single.dz-started .dz-message{display:none}nxt-dropzone>.dropzone.dz-wrapper.dz-multiple.dz-started .dz-message{display:flex}\n", "@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dropzone{min-height:150px;border:1px solid rgba(0,0,0,.8);border-radius:5px;padding:20px}.dropzone.dz-clickable{cursor:pointer}.dropzone.dz-clickable *{cursor:default}.dropzone.dz-clickable .dz-message,.dropzone.dz-clickable .dz-message *{cursor:pointer}.dropzone.dz-started .dz-message{display:none}.dropzone.dz-drag-hover{border-style:solid}.dropzone.dz-drag-hover .dz-message{opacity:.5}.dropzone .dz-message{text-align:center;margin:3em 0}.dropzone .dz-message .dz-button{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}.dropzone .dz-preview{position:relative;display:inline-block;vertical-align:top;margin:16px;min-height:100px}.dropzone .dz-preview:hover{z-index:1000}.dropzone .dz-preview.dz-file-preview .dz-image{border-radius:20px;background:#999;background:linear-gradient(to bottom,#eee,#ddd)}.dropzone .dz-preview.dz-file-preview .dz-details{opacity:1}.dropzone .dz-preview.dz-image-preview{background:#fff}.dropzone .dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dropzone .dz-preview .dz-remove{font-size:14px;text-align:center;display:block;cursor:pointer;border:none}.dropzone .dz-preview .dz-remove:hover{text-decoration:underline}.dropzone .dz-preview:hover .dz-details{opacity:1}.dropzone .dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:13px;min-width:100%;max-width:100%;padding:2em 1em;text-align:center;color:#000000e6;line-height:150%}.dropzone .dz-preview .dz-details .dz-size{margin-bottom:1em;font-size:16px}.dropzone .dz-preview .dz-details .dz-filename{white-space:nowrap}.dropzone .dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:#fffc}.dropzone .dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dropzone .dz-preview .dz-details .dz-filename span,.dropzone .dz-preview .dz-details .dz-size span{background-color:#fff6;padding:0 .4em;border-radius:3px}.dropzone .dz-preview:hover .dz-image img{transform:scale(1.05);filter:blur(8px)}.dropzone .dz-preview .dz-image{border-radius:20px;overflow:hidden;width:120px;height:120px;position:relative;display:block;z-index:10}.dropzone .dz-preview .dz-image img{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview .dz-success-mark,.dropzone .dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:500;position:absolute;display:block;top:50%;left:50%;margin-left:-27px;margin-top:-27px;background:rgba(0,0,0,.8);border-radius:50%}.dropzone .dz-preview .dz-success-mark svg,.dropzone .dz-preview .dz-error-mark svg{display:block;width:54px;height:54px;fill:#fff}.dropzone .dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dropzone .dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dropzone .dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dropzone .dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:20px;top:50%;margin-top:-10px;left:15%;right:15%;border:3px solid rgba(0,0,0,.8);background:rgba(0,0,0,.8);border-radius:10px;overflow:hidden}.dropzone .dz-preview .dz-progress .dz-upload{background:#fff;display:block;position:relative;height:100%;width:0;transition:width .3s ease-in-out;border-radius:17px}.dropzone .dz-preview.dz-error .dz-error-message{display:block}.dropzone .dz-preview.dz-error:hover .dz-error-message{opacity:1;pointer-events:auto}.dropzone .dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:8px;font-size:13px;top:130px;left:-10px;width:140px;background:#b10606;padding:.5em 1em;color:#fff}.dropzone .dz-preview .dz-error-message:after{content:\"\";position:absolute;top:-6px;left:64px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #b10606}\n"] }]
|
|
69
|
+
}], ctorParameters: function () { return []; }, propDecorators: { disabled: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], config: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], message: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], placeholder: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}], useDropzoneClass: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], DZ_INIT: [{
|
|
80
|
+
type: Output,
|
|
81
|
+
args: ['init']
|
|
82
|
+
}], DZ_DROP: [{
|
|
83
|
+
type: Output,
|
|
84
|
+
args: ['drop']
|
|
85
|
+
}], DZ_DRAGSTART: [{
|
|
86
|
+
type: Output,
|
|
87
|
+
args: ['dragStart']
|
|
88
|
+
}], DZ_DRAGEND: [{
|
|
89
|
+
type: Output,
|
|
90
|
+
args: ['dragEnd']
|
|
91
|
+
}], DZ_DRAGENTER: [{
|
|
92
|
+
type: Output,
|
|
93
|
+
args: ['dragEnter']
|
|
94
|
+
}], DZ_DRAGOVER: [{
|
|
95
|
+
type: Output,
|
|
96
|
+
args: ['dragOver']
|
|
97
|
+
}], DZ_DRAGLEAVE: [{
|
|
98
|
+
type: Output,
|
|
99
|
+
args: ['dragLeave']
|
|
100
|
+
}], DZ_PASTE: [{
|
|
101
|
+
type: Output,
|
|
102
|
+
args: ['paste']
|
|
103
|
+
}], DZ_RESET: [{
|
|
104
|
+
type: Output,
|
|
105
|
+
args: ['reset']
|
|
106
|
+
}], DZ_ADDEDFILE: [{
|
|
107
|
+
type: Output,
|
|
108
|
+
args: ['addedFile']
|
|
109
|
+
}], DZ_ADDEDFILES: [{
|
|
110
|
+
type: Output,
|
|
111
|
+
args: ['addedFiles']
|
|
112
|
+
}], DZ_REMOVEDFILE: [{
|
|
113
|
+
type: Output,
|
|
114
|
+
args: ['removedFile']
|
|
115
|
+
}], DZ_THUMBNAIL: [{
|
|
116
|
+
type: Output,
|
|
117
|
+
args: ['thumbnail']
|
|
118
|
+
}], DZ_ERROR: [{
|
|
119
|
+
type: Output,
|
|
120
|
+
args: ['error']
|
|
121
|
+
}], DZ_ERRORMULTIPLE: [{
|
|
122
|
+
type: Output,
|
|
123
|
+
args: ['errorMultiple']
|
|
124
|
+
}], DZ_PROCESSING: [{
|
|
125
|
+
type: Output,
|
|
126
|
+
args: ['processing']
|
|
127
|
+
}], DZ_PROCESSINGMULTIPLE: [{
|
|
128
|
+
type: Output,
|
|
129
|
+
args: ['processingMultiple']
|
|
130
|
+
}], DZ_UPLOADPROGRESS: [{
|
|
131
|
+
type: Output,
|
|
132
|
+
args: ['uploadProgress']
|
|
133
|
+
}], DZ_TOTALUPLOADPROGRESS: [{
|
|
134
|
+
type: Output,
|
|
135
|
+
args: ['totalUploadProgress']
|
|
136
|
+
}], DZ_SENDING: [{
|
|
137
|
+
type: Output,
|
|
138
|
+
args: ['sending']
|
|
139
|
+
}], DZ_SENDINGMULTIPLE: [{
|
|
140
|
+
type: Output,
|
|
141
|
+
args: ['sendingMultiple']
|
|
142
|
+
}], DZ_SUCCESS: [{
|
|
143
|
+
type: Output,
|
|
144
|
+
args: ['success']
|
|
145
|
+
}], DZ_SUCCESSMULTIPLE: [{
|
|
146
|
+
type: Output,
|
|
147
|
+
args: ['successMultiple']
|
|
148
|
+
}], DZ_CANCELED: [{
|
|
149
|
+
type: Output,
|
|
150
|
+
args: ['canceled']
|
|
151
|
+
}], DZ_CANCELEDMULTIPLE: [{
|
|
152
|
+
type: Output,
|
|
153
|
+
args: ['canceledMultiple']
|
|
154
|
+
}], DZ_COMPLETE: [{
|
|
155
|
+
type: Output,
|
|
156
|
+
args: ['complete']
|
|
157
|
+
}], DZ_COMPLETEMULTIPLE: [{
|
|
158
|
+
type: Output,
|
|
159
|
+
args: ['completeMultiple']
|
|
160
|
+
}], DZ_MAXFILESEXCEEDED: [{
|
|
161
|
+
type: Output,
|
|
162
|
+
args: ['maxFilesExceeded']
|
|
163
|
+
}], DZ_MAXFILESREACHED: [{
|
|
164
|
+
type: Output,
|
|
165
|
+
args: ['maxFilesReached']
|
|
166
|
+
}], DZ_QUEUECOMPLETE: [{
|
|
167
|
+
type: Output,
|
|
168
|
+
args: ['queueComplete']
|
|
169
|
+
}], directiveRef: [{
|
|
170
|
+
type: ViewChild,
|
|
171
|
+
args: [DropzoneDirective]
|
|
172
|
+
}] } });
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZHJvcHpvbmUtd3JhcHBlci9zcmMvbGliL2Ryb3B6b25lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2Ryb3B6b25lLXdyYXBwZXIvc3JjL2xpYi9kcm9wem9uZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3hELE9BQU8sRUFBcUMsc0JBQXNCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7OztBQUVqRyxNQWFhLGlCQUFpQjtJQThEMUI7UUE1REEsb0RBQW9EO1FBQzNDLGFBQVEsR0FBWSxLQUFLLENBQUE7UUFLbEMsc0RBQXNEO1FBQzdDLFlBQU8sR0FBVywrQkFBK0IsQ0FBQTtRQUMxRCx1REFBdUQ7UUFDOUMsZ0JBQVcsR0FBVyxFQUFFLENBQUE7UUFFakMseURBQXlEO1FBQ2hELHFCQUFnQixHQUFZLElBQUksQ0FBQTtRQUVoQixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQTtRQUV0QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQTtRQUNsQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUE7UUFDOUMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUE7UUFDeEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFBO1FBQzdDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQTtRQUMxQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUE7UUFDaEQsYUFBUSxH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LFdBQVc7Z0JBQ1ksYUFBYTtzQkFBM0MsTUFBTTt1QkFBQyxZQUFZO2dCQUNZLGNBQWM7c0JBQTdDLE1BQU07dUJBQUMsYUFBYTtnQkFDUyxZQUFZO3NCQUF6QyxNQUFNO3VCQUFDLFdBQVc7Z0JBRU8sUUFBUTtzQkFBakMsTUFBTTt1QkFBQyxPQUFPO2dCQUNtQixnQkFBZ0I7c0JBQWpELE1BQU07dUJBQUMsZUFBZTtnQkFFUSxhQUFhO3NCQUEzQyxNQUFNO3VCQUFDLFlBQVk7Z0JBQ21CLHFCQUFxQjtzQkFBM0QsTUFBTTt1QkFBQyxvQkFBb0I7Z0JBRU8saUJBQWlCO3NCQUFuRCxNQUFNO3VCQUFDLGdCQUFnQjtnQkFDZ0Isc0JBQXNCO3NCQUE3RCxNQUFNO3VCQUFDLHFCQUFxQjtnQkFFRCxVQUFVO3NCQUFyQyxNQUFNO3VCQUFDLFNBQVM7Z0JBQ21CLGtCQUFrQjtzQkFBckQsTUFBTTt1QkFBQyxpQkFBaUI7Z0JBR0csVUFBVTtzQkFBckMsTUFBTTt1QkFBQyxTQUFTO2dCQUNtQixrQkFBa0I7c0JBQXJELE1BQU07dUJBQUMsaUJBQWlCO2dCQUVJLFdBQVc7c0JBQXZDLE1BQU07dUJBQUMsVUFBVTtnQkFDbUIsbUJBQW1CO3NCQUF2RCxNQUFNO3VCQUFDLGtCQUFrQjtnQkFFRyxXQUFXO3NCQUF2QyxNQUFNO3VCQUFDLFVBQVU7Z0JBQ21CLG1CQUFtQjtzQkFBdkQsTUFBTTt1QkFBQyxrQkFBa0I7Z0JBRVcsbUJBQW1CO3NCQUF2RCxNQUFNO3VCQUFDLGtCQUFrQjtnQkFDVSxrQkFBa0I7c0JBQXJELE1BQU07dUJBQUMsaUJBQWlCO2dCQUVTLGdCQUFnQjtzQkFBakQsTUFBTTt1QkFBQyxlQUFlO2dCQUVPLFlBQVk7c0JBQXpDLFNBQVM7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1yZW5hbWUgKi9cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRHJvcHpvbmVEaXJlY3RpdmUgfSBmcm9tICcuL2Ryb3B6b25lLmRpcmVjdGl2ZSdcbmltcG9ydCB7IERyb3B6b25lQ29uZmlnLCBEcm9wem9uZUxpc3RlbmVycywgTlhUX0RST1BaT05FX0xJU1RFTkVSUyB9IGZyb20gJy4vZHJvcHpvbmUuaW50ZXJmYWNlcydcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdueHQtZHJvcHpvbmUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcm9wem9uZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbXG4gICAgICAgICcuL2Ryb3B6b25lLmNvbXBvbmVudC5zY3NzJyxcbiAgICAgICAgJy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9kcm9wem9uZS9kaXN0L2Ryb3B6b25lLmNzcydcbiAgICBdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbe1xuICAgICAgICBwcm92aWRlOiBOWFRfRFJPUFpPTkVfTElTVEVORVJTLFxuICAgICAgICB1c2VWYWx1ZTogZm9yd2FyZFJlZigoKSA9PiBEcm9wem9uZUNvbXBvbmVudClcbiAgICB9XVxufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgRHJvcHpvbmVMaXN0ZW5lcnMge1xuXG4gICAgLyoqIERpc2FibGVzIC8gZGV0YWNoZXMgRHJvcHpvbmUgZnJvbSB0aGUgZWxlbWVudCAqL1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKiBDdXN0b20gY29uZmlnIHRvIG92ZXJyaWRlIHRoZSBnbG9iYWwgZGVmYXVsdHMgKi9cbiAgICBASW5wdXQoKSBjb25maWc/OiBEcm9wem9uZUNvbmZpZ1xuXG4gICAgLyoqIE1lc3NhZ2UgdG8gc2hvdyBmb3IgdGhlIHVzZXIgb24gdGhlIHVwbG9hZCBhcmVhICovXG4gICAgQElucHV0KCkgbWVzc2FnZTogc3RyaW5nID0gJ0NsaWNrIG9yIGRyYWcgZmlsZXMgdG8gdXBsb2FkJ1xuICAgIC8qKiBQbGFjZWhvbGRlciBpbWFnZSB0byBiZSBzaG93biBhcyB0aGUgdXBsb2FkIGFyZWEgKi9cbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJydcblxuICAgIC8qKiBVc2UgJ2Ryb3B6b25lJyBjbGFzcyAodXNlIHByb3ZpZGVkIGRlZmF1bHQgc3R5bGVzKSAqL1xuICAgIEBJbnB1dCgpIHVzZURyb3B6b25lQ2xhc3M6IGJvb2xlYW4gPSB0cnVlXG5cbiAgICBAT3V0cHV0KCdpbml0JykgcmVhZG9ubHkgRFpfSU5JVCA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmU+KClcblxuICAgIEBPdXRwdXQoJ2Ryb3AnKSByZWFkb25seSBEWl9EUk9QID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnU3RhcnQnKSByZWFkb25seSBEWl9EUkFHU1RBUlQgPSBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdFbmQnKSByZWFkb25seSBEWl9EUkFHRU5EID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnRW50ZXInKSByZWFkb25seSBEWl9EUkFHRU5URVIgPSBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdPdmVyJykgcmVhZG9ubHkgRFpfRFJBR09WRVIgPSBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdMZWF2ZScpIHJlYWRvbmx5IERaX0RSQUdMRUFWRSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgncGFzdGUnKSByZWFkb25seSBEWl9QQVNURSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG5cbiAgICBAT3V0cHV0KCdyZXNldCcpIHJlYWRvbmx5IERaX1JFU0VUID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgICBAT3V0cHV0KCdhZGRlZEZpbGUnKSByZWFkb25seSBEWl9BRERFREZJTEUgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ2FkZGVkRmlsZXMnKSByZWFkb25seSBEWl9BRERFREZJTEVTID0gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdyZW1vdmVkRmlsZScpIHJlYWRvbmx5IERaX1JFTU9WRURGSUxFID0gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCd0aHVtYm5haWwnKSByZWFkb25seSBEWl9USFVNQk5BSUwgPSBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIHN0cmluZ10+KClcblxuICAgIEBPdXRwdXQoJ2Vycm9yJykgcmVhZG9ubHkgRFpfRVJST1IgPSBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIHN0cmluZyB8IEVycm9yXT4oKVxuICAgIEBPdXRwdXQoJ2Vycm9yTXVsdGlwbGUnKSByZWFkb25seSBEWl9FUlJPUk1VTFRJUExFID0gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlW10sIHN0cmluZyB8IEVycm9yXT4oKVxuXG4gICAgQE91dHB1dCgncHJvY2Vzc2luZycpIHJlYWRvbmx5IERaX1BST0NFU1NJTkcgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ3Byb2Nlc3NpbmdNdWx0aXBsZScpIHJlYWRvbmx5IERaX1BST0NFU1NJTkdNVUxUSVBMRSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ3VwbG9hZFByb2dyZXNzJykgcmVhZG9ubHkgRFpfVVBMT0FEUFJPR1JFU1MgPSBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIG51bWJlciwgbnVtYmVyXT4oKVxuICAgIEBPdXRwdXQoJ3RvdGFsVXBsb2FkUHJvZ3Jlc3MnKSByZWFkb25seSBEWl9UT1RBTFVQTE9BRFBST0dSRVNTID0gbmV3IEV2ZW50RW1pdHRlcjxbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0+KClcblxuICAgIEBPdXRwdXQoJ3NlbmRpbmcnKSByZWFkb25seSBEWl9TRU5ESU5HID0gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBYTUxIdHRwUmVxdWVzdCwgRm9ybURhdGFdPigpXG4gICAgQE91dHB1dCgnc2VuZGluZ011bHRpcGxlJykgcmVhZG9ubHkgRFpfU0VORElOR01VTFRJUExFID0gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlW10sIFhNTEh0dHBSZXF1ZXN0LCBGb3JtRGF0YV0+KClcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gICAgQE91dHB1dCgnc3VjY2VzcycpIHJlYWRvbmx5IERaX1NVQ0NFU1MgPSBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIE9iamVjdCB8IHN0cmluZ10+KClcbiAgICBAT3V0cHV0KCdzdWNjZXNzTXVsdGlwbGUnKSByZWFkb25seSBEWl9TVUNDRVNTTVVMVElQTEUgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdjYW5jZWxlZCcpIHJlYWRvbmx5IERaX0NBTkNFTEVEID0gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdjYW5jZWxlZE11bHRpcGxlJykgcmVhZG9ubHkgRFpfQ0FOQ0VMRURNVUxUSVBMRSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ2NvbXBsZXRlJykgcmVhZG9ubHkgRFpfQ09NUExFVEUgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ2NvbXBsZXRlTXVsdGlwbGUnKSByZWFkb25seSBEWl9DT01QTEVURU1VTFRJUExFID0gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGVbXT4oKVxuXG4gICAgQE91dHB1dCgnbWF4RmlsZXNFeGNlZWRlZCcpIHJlYWRvbmx5IERaX01BWEZJTEVTRVhDRUVERUQgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ21heEZpbGVzUmVhY2hlZCcpIHJlYWRvbmx5IERaX01BWEZJTEVTUkVBQ0hFRCA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ3F1ZXVlQ29tcGxldGUnKSByZWFkb25seSBEWl9RVUVVRUNPTVBMRVRFID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgICBAVmlld0NoaWxkKERyb3B6b25lRGlyZWN0aXZlKSBkaXJlY3RpdmVSZWY/OiBEcm9wem9uZURpcmVjdGl2ZVxuXG4gICAgY29uc3RydWN0b3IoKSB7IH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAndXJsKCcgKyBlbmNvZGVVUkkodGhpcy5wbGFjZWhvbGRlcikgKyAnKSdcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZHotd3JhcHBlclwiXG4gICAgW2NsYXNzLmRyb3B6b25lXT1cInVzZURyb3B6b25lQ2xhc3NcIlxuICAgIFtueHREcm9wem9uZV09XCJjb25maWdcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkei1tZXNzYWdlXCJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2NsYXNzLmR6LXBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkei10ZXh0XCJcbiAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiY29uZmlnPy5kaWN0RGVmYXVsdE1lc3NhZ2UgfHwgbWVzc2FnZVwiPjwvZGl2PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICBjbGFzcz1cImR6LWltYWdlXCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImdldFBsYWNlaG9sZGVyKClcIj48L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
/* eslint-disable @angular-eslint/no-output-rename */
|
|
2
|
+
import { isPlatformBrowser } from '@angular/common';
|
|
3
|
+
import { Directive, EventEmitter, HostBinding, Inject, Input, Optional, Output, PLATFORM_ID } from '@angular/core';
|
|
4
|
+
import Dropzone from 'dropzone';
|
|
5
|
+
import { DropzoneEvents, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS, _DropzoneConfig } from './dropzone.interfaces';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
class DropzoneDirective {
|
|
8
|
+
/** Disables / detaches Dropzone from the element */
|
|
9
|
+
set disabled(val) {
|
|
10
|
+
val = !!val;
|
|
11
|
+
if (val != this._disabled && this.instance) {
|
|
12
|
+
if (val)
|
|
13
|
+
this.zone.runOutsideAngular(() => {
|
|
14
|
+
this.instance.disable();
|
|
15
|
+
});
|
|
16
|
+
else
|
|
17
|
+
this.zone.runOutsideAngular(() => {
|
|
18
|
+
this.instance.enable();
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
this._disabled = val;
|
|
22
|
+
}
|
|
23
|
+
get disabled() {
|
|
24
|
+
return this._disabled;
|
|
25
|
+
}
|
|
26
|
+
get dropzone() {
|
|
27
|
+
return this.instance;
|
|
28
|
+
}
|
|
29
|
+
/** @internal */
|
|
30
|
+
get isSingle() {
|
|
31
|
+
return this._params?.maxFiles === 1;
|
|
32
|
+
}
|
|
33
|
+
/** @internal */
|
|
34
|
+
get isMultiple() {
|
|
35
|
+
return this._params?.maxFiles !== 1;
|
|
36
|
+
}
|
|
37
|
+
constructor(zone, elementRef, differs, platformId, defaults, component) {
|
|
38
|
+
this.zone = zone;
|
|
39
|
+
this.elementRef = elementRef;
|
|
40
|
+
this.differs = differs;
|
|
41
|
+
this.platformId = platformId;
|
|
42
|
+
this.defaults = defaults;
|
|
43
|
+
this.component = component;
|
|
44
|
+
this._disabled = false;
|
|
45
|
+
this._params = this.defaults
|
|
46
|
+
? new _DropzoneConfig(this.defaults)
|
|
47
|
+
: undefined;
|
|
48
|
+
this.configDiff = this.differs.find(this.config || {}).create();
|
|
49
|
+
this.paramDiff = this.differs.find(this._params || {}).create();
|
|
50
|
+
this.DZ_INIT = this.component?.DZ_INIT
|
|
51
|
+
?? new EventEmitter();
|
|
52
|
+
this.DZ_DROP = this.component?.DZ_DROP
|
|
53
|
+
?? new EventEmitter();
|
|
54
|
+
this.DZ_DRAGSTART = this.component?.DZ_DRAGSTART
|
|
55
|
+
?? new EventEmitter();
|
|
56
|
+
this.DZ_DRAGEND = this.component?.DZ_DRAGEND
|
|
57
|
+
?? new EventEmitter();
|
|
58
|
+
this.DZ_DRAGENTER = this.component?.DZ_DRAGENTER
|
|
59
|
+
?? new EventEmitter();
|
|
60
|
+
this.DZ_DRAGOVER = this.component?.DZ_DRAGOVER
|
|
61
|
+
?? new EventEmitter();
|
|
62
|
+
this.DZ_DRAGLEAVE = this.component?.DZ_DRAGLEAVE
|
|
63
|
+
?? new EventEmitter();
|
|
64
|
+
this.DZ_PASTE = this.component?.DZ_PASTE
|
|
65
|
+
?? new EventEmitter();
|
|
66
|
+
this.DZ_RESET = this.component?.DZ_RESET
|
|
67
|
+
?? new EventEmitter();
|
|
68
|
+
this.DZ_ADDEDFILE = this.component?.DZ_ADDEDFILE
|
|
69
|
+
?? new EventEmitter();
|
|
70
|
+
this.DZ_ADDEDFILES = this.component?.DZ_ADDEDFILES
|
|
71
|
+
?? new EventEmitter();
|
|
72
|
+
this.DZ_REMOVEDFILE = this.component?.DZ_REMOVEDFILE
|
|
73
|
+
?? new EventEmitter();
|
|
74
|
+
this.DZ_THUMBNAIL = this.component?.DZ_THUMBNAIL
|
|
75
|
+
?? new EventEmitter();
|
|
76
|
+
this.DZ_ERROR = this.component?.DZ_ERROR
|
|
77
|
+
?? new EventEmitter();
|
|
78
|
+
this.DZ_ERRORMULTIPLE = this.component?.DZ_ERRORMULTIPLE
|
|
79
|
+
?? new EventEmitter();
|
|
80
|
+
this.DZ_PROCESSING = this.component?.DZ_PROCESSING
|
|
81
|
+
?? new EventEmitter();
|
|
82
|
+
this.DZ_PROCESSINGMULTIPLE = this.component?.DZ_PROCESSINGMULTIPLE
|
|
83
|
+
?? new EventEmitter();
|
|
84
|
+
this.DZ_UPLOADPROGRESS = this.component?.DZ_UPLOADPROGRESS
|
|
85
|
+
?? new EventEmitter();
|
|
86
|
+
this.DZ_TOTALUPLOADPROGRESS = this.component?.DZ_TOTALUPLOADPROGRESS
|
|
87
|
+
?? new EventEmitter();
|
|
88
|
+
this.DZ_SENDING = this.component?.DZ_SENDING
|
|
89
|
+
?? new EventEmitter();
|
|
90
|
+
this.DZ_SENDINGMULTIPLE = this.component?.DZ_SENDINGMULTIPLE
|
|
91
|
+
?? new EventEmitter();
|
|
92
|
+
this.DZ_SUCCESS = this.component?.DZ_SUCCESS
|
|
93
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
94
|
+
?? new EventEmitter();
|
|
95
|
+
this.DZ_SUCCESSMULTIPLE = this.component?.DZ_SUCCESSMULTIPLE
|
|
96
|
+
?? new EventEmitter();
|
|
97
|
+
this.DZ_CANCELED = this.component?.DZ_CANCELED
|
|
98
|
+
?? new EventEmitter();
|
|
99
|
+
this.DZ_CANCELEDMULTIPLE = this.component?.DZ_CANCELEDMULTIPLE
|
|
100
|
+
?? new EventEmitter();
|
|
101
|
+
this.DZ_COMPLETE = this.component?.DZ_COMPLETE
|
|
102
|
+
?? new EventEmitter();
|
|
103
|
+
this.DZ_COMPLETEMULTIPLE = this.component?.DZ_COMPLETEMULTIPLE
|
|
104
|
+
?? new EventEmitter();
|
|
105
|
+
this.DZ_MAXFILESEXCEEDED = this.component?.DZ_MAXFILESEXCEEDED
|
|
106
|
+
?? new EventEmitter();
|
|
107
|
+
this.DZ_MAXFILESREACHED = this.component?.DZ_MAXFILESREACHED
|
|
108
|
+
?? new EventEmitter();
|
|
109
|
+
this.DZ_QUEUECOMPLETE = this.component?.DZ_QUEUECOMPLETE
|
|
110
|
+
?? new EventEmitter();
|
|
111
|
+
}
|
|
112
|
+
/** @internal */
|
|
113
|
+
ngOnInit() {
|
|
114
|
+
this.initInstance();
|
|
115
|
+
}
|
|
116
|
+
/** @internal */
|
|
117
|
+
ngOnDestroy() {
|
|
118
|
+
this.destroyInstance();
|
|
119
|
+
}
|
|
120
|
+
/** @internal */
|
|
121
|
+
ngDoCheck() {
|
|
122
|
+
const changes = this.configDiff.diff(this.config || {});
|
|
123
|
+
if (changes) {
|
|
124
|
+
let newParams = this.defaults
|
|
125
|
+
? new _DropzoneConfig(this.defaults)
|
|
126
|
+
: undefined;
|
|
127
|
+
if (newParams && this.config)
|
|
128
|
+
newParams.assign(this.config);
|
|
129
|
+
else if (this.config)
|
|
130
|
+
newParams = new _DropzoneConfig(this.config);
|
|
131
|
+
const d = this.paramDiff.diff(newParams || {});
|
|
132
|
+
if (d) {
|
|
133
|
+
this._params = newParams;
|
|
134
|
+
let hasChanges = false;
|
|
135
|
+
d.forEachItem(r => {
|
|
136
|
+
if (!internalChanges.has(r.key) && r.currentValue !== r.previousValue)
|
|
137
|
+
hasChanges = true;
|
|
138
|
+
});
|
|
139
|
+
if (hasChanges) {
|
|
140
|
+
this.destroyInstance();
|
|
141
|
+
this.initInstance();
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/** @internal */
|
|
147
|
+
reset(cancel) {
|
|
148
|
+
if (this.instance) {
|
|
149
|
+
this.zone.runOutsideAngular(() => {
|
|
150
|
+
this.instance.removeAllFiles(cancel);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
initInstance() {
|
|
155
|
+
if (!isPlatformBrowser(this.platformId) || !this._params) {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
this.zone.runOutsideAngular(() => {
|
|
159
|
+
this.instance = new Dropzone(this.elementRef.nativeElement, this._params);
|
|
160
|
+
});
|
|
161
|
+
if (this.disabled) {
|
|
162
|
+
this.instance.disable();
|
|
163
|
+
}
|
|
164
|
+
if (this.DZ_INIT.observed) {
|
|
165
|
+
this.zone.run(() => {
|
|
166
|
+
this.DZ_INIT.emit(this.instance);
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
// Add auto reset handling for events
|
|
170
|
+
this.instance.on('success', () => {
|
|
171
|
+
if ((this._params?.autoReset ?? -1) >= 0) {
|
|
172
|
+
setTimeout(() => this.reset(), this._params?.autoReset);
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
this.instance.on('error', () => {
|
|
176
|
+
if ((this._params?.errorReset ?? -1) >= 0) {
|
|
177
|
+
setTimeout(() => this.reset(), this._params?.errorReset);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
this.instance.on('canceled', () => {
|
|
181
|
+
if ((this._params?.cancelReset ?? -1) >= 0) {
|
|
182
|
+
setTimeout(() => this.reset(), this._params?.cancelReset);
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
// Add native Dropzone event handling
|
|
186
|
+
DropzoneEvents.forEach((eventName) => {
|
|
187
|
+
this.instance.on(eventName.toLowerCase(), (...args) => {
|
|
188
|
+
args = (args.length === 1) ? args[0] : args;
|
|
189
|
+
const output = `DZ_${eventName.toUpperCase()}`;
|
|
190
|
+
const emitter = this[output];
|
|
191
|
+
if (emitter.observed) {
|
|
192
|
+
this.zone.run(() => {
|
|
193
|
+
emitter.emit(args);
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
destroyInstance() {
|
|
200
|
+
if (this.instance) {
|
|
201
|
+
this.zone.runOutsideAngular(() => {
|
|
202
|
+
this.instance.destroy();
|
|
203
|
+
});
|
|
204
|
+
this.instance = undefined;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: DropzoneDirective, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: PLATFORM_ID }, { token: NXT_DROPZONE_CONFIG, optional: true }, { token: NXT_DROPZONE_LISTENERS, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
208
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: DropzoneDirective, selector: "[nxtDropzone]", inputs: { disabled: "disabled", config: ["nxtDropzone", "config"] }, outputs: { DZ_INIT: "init", DZ_DROP: "drop", DZ_DRAGSTART: "dragStart", DZ_DRAGEND: "dragEnd", DZ_DRAGENTER: "dragEnter", DZ_DRAGOVER: "dragOver", DZ_DRAGLEAVE: "dragLeave", DZ_PASTE: "paste", DZ_RESET: "reset", DZ_ADDEDFILE: "addedFile", DZ_ADDEDFILES: "addedFiles", DZ_REMOVEDFILE: "removedFile", DZ_THUMBNAIL: "thumbnail", DZ_ERROR: "error", DZ_ERRORMULTIPLE: "errorMultiple", DZ_PROCESSING: "processing", DZ_PROCESSINGMULTIPLE: "processingMultiple", DZ_UPLOADPROGRESS: "uploadProgress", DZ_TOTALUPLOADPROGRESS: "totalUploadProgress", DZ_SENDING: "sending", DZ_SENDINGMULTIPLE: "sendingMultiple", DZ_SUCCESS: "success", DZ_SUCCESSMULTIPLE: "successMultiple", DZ_CANCELED: "canceled", DZ_CANCELEDMULTIPLE: "canceledMultiple", DZ_COMPLETE: "complete", DZ_COMPLETEMULTIPLE: "completeMultiple", DZ_MAXFILESEXCEEDED: "maxFilesExceeded", DZ_MAXFILESREACHED: "maxFilesReached", DZ_QUEUECOMPLETE: "queueComplete" }, host: { properties: { "class.dz-single": "this.isSingle", "class.dz-multiple": "this.isMultiple" } }, exportAs: ["nxtDropzone"], ngImport: i0 }); }
|
|
209
|
+
}
|
|
210
|
+
export { DropzoneDirective };
|
|
211
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: DropzoneDirective, decorators: [{
|
|
212
|
+
type: Directive,
|
|
213
|
+
args: [{
|
|
214
|
+
selector: '[nxtDropzone]',
|
|
215
|
+
exportAs: 'nxtDropzone'
|
|
216
|
+
}]
|
|
217
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.KeyValueDiffers }, { type: Object, decorators: [{
|
|
218
|
+
type: Inject,
|
|
219
|
+
args: [PLATFORM_ID]
|
|
220
|
+
}] }, { type: undefined, decorators: [{
|
|
221
|
+
type: Optional
|
|
222
|
+
}, {
|
|
223
|
+
type: Inject,
|
|
224
|
+
args: [NXT_DROPZONE_CONFIG]
|
|
225
|
+
}] }, { type: undefined, decorators: [{
|
|
226
|
+
type: Optional
|
|
227
|
+
}, {
|
|
228
|
+
type: Inject,
|
|
229
|
+
args: [NXT_DROPZONE_LISTENERS]
|
|
230
|
+
}] }]; }, propDecorators: { disabled: [{
|
|
231
|
+
type: Input
|
|
232
|
+
}], config: [{
|
|
233
|
+
type: Input,
|
|
234
|
+
args: ['nxtDropzone']
|
|
235
|
+
}], DZ_INIT: [{
|
|
236
|
+
type: Output,
|
|
237
|
+
args: ['init']
|
|
238
|
+
}], DZ_DROP: [{
|
|
239
|
+
type: Output,
|
|
240
|
+
args: ['drop']
|
|
241
|
+
}], DZ_DRAGSTART: [{
|
|
242
|
+
type: Output,
|
|
243
|
+
args: ['dragStart']
|
|
244
|
+
}], DZ_DRAGEND: [{
|
|
245
|
+
type: Output,
|
|
246
|
+
args: ['dragEnd']
|
|
247
|
+
}], DZ_DRAGENTER: [{
|
|
248
|
+
type: Output,
|
|
249
|
+
args: ['dragEnter']
|
|
250
|
+
}], DZ_DRAGOVER: [{
|
|
251
|
+
type: Output,
|
|
252
|
+
args: ['dragOver']
|
|
253
|
+
}], DZ_DRAGLEAVE: [{
|
|
254
|
+
type: Output,
|
|
255
|
+
args: ['dragLeave']
|
|
256
|
+
}], DZ_PASTE: [{
|
|
257
|
+
type: Output,
|
|
258
|
+
args: ['paste']
|
|
259
|
+
}], DZ_RESET: [{
|
|
260
|
+
type: Output,
|
|
261
|
+
args: ['reset']
|
|
262
|
+
}], DZ_ADDEDFILE: [{
|
|
263
|
+
type: Output,
|
|
264
|
+
args: ['addedFile']
|
|
265
|
+
}], DZ_ADDEDFILES: [{
|
|
266
|
+
type: Output,
|
|
267
|
+
args: ['addedFiles']
|
|
268
|
+
}], DZ_REMOVEDFILE: [{
|
|
269
|
+
type: Output,
|
|
270
|
+
args: ['removedFile']
|
|
271
|
+
}], DZ_THUMBNAIL: [{
|
|
272
|
+
type: Output,
|
|
273
|
+
args: ['thumbnail']
|
|
274
|
+
}], DZ_ERROR: [{
|
|
275
|
+
type: Output,
|
|
276
|
+
args: ['error']
|
|
277
|
+
}], DZ_ERRORMULTIPLE: [{
|
|
278
|
+
type: Output,
|
|
279
|
+
args: ['errorMultiple']
|
|
280
|
+
}], DZ_PROCESSING: [{
|
|
281
|
+
type: Output,
|
|
282
|
+
args: ['processing']
|
|
283
|
+
}], DZ_PROCESSINGMULTIPLE: [{
|
|
284
|
+
type: Output,
|
|
285
|
+
args: ['processingMultiple']
|
|
286
|
+
}], DZ_UPLOADPROGRESS: [{
|
|
287
|
+
type: Output,
|
|
288
|
+
args: ['uploadProgress']
|
|
289
|
+
}], DZ_TOTALUPLOADPROGRESS: [{
|
|
290
|
+
type: Output,
|
|
291
|
+
args: ['totalUploadProgress']
|
|
292
|
+
}], DZ_SENDING: [{
|
|
293
|
+
type: Output,
|
|
294
|
+
args: ['sending']
|
|
295
|
+
}], DZ_SENDINGMULTIPLE: [{
|
|
296
|
+
type: Output,
|
|
297
|
+
args: ['sendingMultiple']
|
|
298
|
+
}], DZ_SUCCESS: [{
|
|
299
|
+
type: Output,
|
|
300
|
+
args: ['success']
|
|
301
|
+
}], DZ_SUCCESSMULTIPLE: [{
|
|
302
|
+
type: Output,
|
|
303
|
+
args: ['successMultiple']
|
|
304
|
+
}], DZ_CANCELED: [{
|
|
305
|
+
type: Output,
|
|
306
|
+
args: ['canceled']
|
|
307
|
+
}], DZ_CANCELEDMULTIPLE: [{
|
|
308
|
+
type: Output,
|
|
309
|
+
args: ['canceledMultiple']
|
|
310
|
+
}], DZ_COMPLETE: [{
|
|
311
|
+
type: Output,
|
|
312
|
+
args: ['complete']
|
|
313
|
+
}], DZ_COMPLETEMULTIPLE: [{
|
|
314
|
+
type: Output,
|
|
315
|
+
args: ['completeMultiple']
|
|
316
|
+
}], DZ_MAXFILESEXCEEDED: [{
|
|
317
|
+
type: Output,
|
|
318
|
+
args: ['maxFilesExceeded']
|
|
319
|
+
}], DZ_MAXFILESREACHED: [{
|
|
320
|
+
type: Output,
|
|
321
|
+
args: ['maxFilesReached']
|
|
322
|
+
}], DZ_QUEUECOMPLETE: [{
|
|
323
|
+
type: Output,
|
|
324
|
+
args: ['queueComplete']
|
|
325
|
+
}], isSingle: [{
|
|
326
|
+
type: HostBinding,
|
|
327
|
+
args: ['class.dz-single']
|
|
328
|
+
}], isMultiple: [{
|
|
329
|
+
type: HostBinding,
|
|
330
|
+
args: ['class.dz-multiple']
|
|
331
|
+
}] } });
|
|
332
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZHJvcHpvbmUtd3JhcHBlci9zcmMvbGliL2Ryb3B6b25lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBdUIsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUE4QyxRQUFRLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNuTCxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUE7QUFDL0IsT0FBTyxFQUFpQyxjQUFjLEVBQXFCLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7QUFFdkwsTUFJYSxpQkFBaUI7SUFLMUIsb0RBQW9EO0lBQ3BELElBQWEsUUFBUSxDQUFDLEdBQVk7UUFDOUIsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUE7UUFDWCxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDeEMsSUFBSSxHQUFHO2dCQUNILElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO29CQUM3QixJQUFJLENBQUMsUUFBUyxDQUFDLE9BQU8sRUFBRSxDQUFBO2dCQUM1QixDQUFDLENBQUMsQ0FBQTs7Z0JBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxRQUFTLENBQUMsTUFBTSxFQUFFLENBQUE7Z0JBQzNCLENBQUMsQ0FBQyxDQUFBO1NBQ1Q7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQTtJQUN4QixDQUFD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RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDZixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDcEMsQ0FBQyxDQUFDLENBQUE7U0FDTDtRQUVELHFDQUFxQztRQUNyQyxJQUFJLENBQUMsUUFBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDdEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFBO2FBQzFEO1FBQ0wsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsUUFBUyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDdkMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFBO2FBQzNEO1FBQ0wsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsUUFBUyxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxD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QUFNO3VCQUFDLFNBQVM7Z0JBRW1CLGtCQUFrQjtzQkFBckQsTUFBTTt1QkFBQyxpQkFBaUI7Z0JBR0csVUFBVTtzQkFBckMsTUFBTTt1QkFBQyxTQUFTO2dCQUdtQixrQkFBa0I7c0JBQXJELE1BQU07dUJBQUMsaUJBQWlCO2dCQUdJLFdBQVc7c0JBQXZDLE1BQU07dUJBQUMsVUFBVTtnQkFFbUIsbUJBQW1CO3NCQUF2RCxNQUFNO3VCQUFDLGtCQUFrQjtnQkFHRyxXQUFXO3NCQUF2QyxNQUFNO3VCQUFDLFVBQVU7Z0JBRW1CLG1CQUFtQjtzQkFBdkQsTUFBTTt1QkFBQyxrQkFBa0I7Z0JBR1csbUJBQW1CO3NCQUF2RCxNQUFNO3VCQUFDLGtCQUFrQjtnQkFFVSxrQkFBa0I7c0JBQXJELE1BQU07dUJBQUMsaUJBQWlCO2dCQUdTLGdCQUFnQjtzQkFBakQsTUFBTTt1QkFBQyxlQUFlO2dCQVNuQixRQUFRO3NCQURYLFdBQVc7dUJBQUMsaUJBQWlCO2dCQU8xQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1yZW5hbWUgKi9cbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBEb0NoZWNrLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBLZXlWYWx1ZURpZmZlcnMsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCBEcm9wem9uZSBmcm9tICdkcm9wem9uZSdcbmltcG9ydCB7IERyb3B6b25lQ29uZmlnLCBEcm9wem9uZUV2ZW50LCBEcm9wem9uZUV2ZW50cywgRHJvcHpvbmVMaXN0ZW5lcnMsIGludGVybmFsQ2hhbmdlcywgTlhUX0RST1BaT05FX0NPTkZJRywgTlhUX0RST1BaT05FX0xJU1RFTkVSUywgX0Ryb3B6b25lQ29uZmlnIH0gZnJvbSAnLi9kcm9wem9uZS5pbnRlcmZhY2VzJ1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tueHREcm9wem9uZV0nLFxuICAgIGV4cG9ydEFzOiAnbnh0RHJvcHpvbmUnXG59KVxuZXhwb3J0IGNsYXNzIERyb3B6b25lRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIERvQ2hlY2ssIERyb3B6b25lTGlzdGVuZXJzIHtcblxuICAgIHByaXZhdGUgaW5zdGFuY2U/OiBEcm9wem9uZVxuXG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuICAgIC8qKiBEaXNhYmxlcyAvIGRldGFjaGVzIERyb3B6b25lIGZyb20gdGhlIGVsZW1lbnQgKi9cbiAgICBASW5wdXQoKSBzZXQgZGlzYWJsZWQodmFsOiBib29sZWFuKSB7XG4gICAgICAgIHZhbCA9ICEhdmFsXG4gICAgICAgIGlmICh2YWwgIT0gdGhpcy5fZGlzYWJsZWQgJiYgdGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgICAgaWYgKHZhbClcbiAgICAgICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5kaXNhYmxlKClcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UhLmVuYWJsZSgpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbFxuICAgIH1cbiAgICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZFxuICAgIH1cblxuICAgIHByaXZhdGUgX3BhcmFtcyA9IHRoaXMuZGVmYXVsdHNcbiAgICAgICAgPyBuZXcgX0Ryb3B6b25lQ29uZmlnKHRoaXMuZGVmYXVsdHMpXG4gICAgICAgIDogdW5kZWZpbmVkXG4gICAgLyoqIENhbiBiZSB1c2VkIHRvIHByb3ZpZGUgb3B0aW9uYWwgY3VzdG9tIGNvbmZpZyAqL1xuICAgIEBJbnB1dCgnbnh0RHJvcHpvbmUnKSBjb25maWc/OiBEcm9wem9uZUNvbmZpZ1xuXG4gICAgcHJpdmF0ZSBjb25maWdEaWZmID0gdGhpcy5kaWZmZXJzLmZpbmQodGhpcy5jb25maWcgfHwge30pLmNyZWF0ZSgpXG4gICAgcHJpdmF0ZSBwYXJhbURpZmYgPSB0aGlzLmRpZmZlcnMuZmluZCh0aGlzLl9wYXJhbXMgfHwge30pLmNyZWF0ZSgpXG5cbiAgICBAT3V0cHV0KCdpbml0JykgcmVhZG9ubHkgRFpfSU5JVCA9IHRoaXMuY29tcG9uZW50Py5EWl9JTklUXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmU+KClcblxuICAgIEBPdXRwdXQoJ2Ryb3AnKSByZWFkb25seSBEWl9EUk9QID0gdGhpcy5jb21wb25lbnQ/LkRaX0RST1BcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnU3RhcnQnKSByZWFkb25seSBEWl9EUkFHU1RBUlQgPSB0aGlzLmNvbXBvbmVudD8uRFpfRFJBR1NUQVJUXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ0VuZCcpIHJlYWRvbmx5IERaX0RSQUdFTkQgPSB0aGlzLmNvbXBvbmVudD8uRFpfRFJBR0VORFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdFbnRlcicpIHJlYWRvbmx5IERaX0RSQUdFTlRFUiA9IHRoaXMuY29tcG9uZW50Py5EWl9EUkFHRU5URVJcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnT3ZlcicpIHJlYWRvbmx5IERaX0RSQUdPVkVSID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdPVkVSXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ0xlYXZlJykgcmVhZG9ubHkgRFpfRFJBR0xFQVZFID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdMRUFWRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ3Bhc3RlJykgcmVhZG9ubHkgRFpfUEFTVEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfUEFTVEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcblxuICAgIEBPdXRwdXQoJ3Jlc2V0JykgcmVhZG9ubHkgRFpfUkVTRVQgPSB0aGlzLmNvbXBvbmVudD8uRFpfUkVTRVRcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgICBAT3V0cHV0KCdhZGRlZEZpbGUnKSByZWFkb25seSBEWl9BRERFREZJTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQURERURGSUxFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnYWRkZWRGaWxlcycpIHJlYWRvbmx5IERaX0FEREVERklMRVMgPSB0aGlzLmNvbXBvbmVudD8uRFpfQURERURGSUxFU1xuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ3JlbW92ZWRGaWxlJykgcmVhZG9ubHkgRFpfUkVNT1ZFREZJTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfUkVNT1ZFREZJTEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCd0aHVtYm5haWwnKSByZWFkb25seSBEWl9USFVNQk5BSUwgPSB0aGlzLmNvbXBvbmVudD8uRFpfVEhVTUJOQUlMXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W0Ryb3B6b25lLkRyb3B6b25lRmlsZSwgc3RyaW5nXT4oKVxuXG4gICAgQE91dHB1dCgnZXJyb3InKSByZWFkb25seSBEWl9FUlJPUiA9IHRoaXMuY29tcG9uZW50Py5EWl9FUlJPUlxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIHN0cmluZyB8IEVycm9yXT4oKVxuICAgIEBPdXRwdXQoJ2Vycm9yTXVsdGlwbGUnKSByZWFkb25seSBEWl9FUlJPUk1VTFRJUExFID0gdGhpcy5jb21wb25lbnQ/LkRaX0VSUk9STVVMVElQTEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlW10sIHN0cmluZyB8IEVycm9yXT4oKVxuXG4gICAgQE91dHB1dCgncHJvY2Vzc2luZycpIHJlYWRvbmx5IERaX1BST0NFU1NJTkcgPSB0aGlzLmNvbXBvbmVudD8uRFpfUFJPQ0VTU0lOR1xuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ3Byb2Nlc3NpbmdNdWx0aXBsZScpIHJlYWRvbmx5IERaX1BST0NFU1NJTkdNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9QUk9DRVNTSU5HTVVMVElQTEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGVbXT4oKVxuXG4gICAgQE91dHB1dCgndXBsb2FkUHJvZ3Jlc3MnKSByZWFkb25seSBEWl9VUExPQURQUk9HUkVTUyA9IHRoaXMuY29tcG9uZW50Py5EWl9VUExPQURQUk9HUkVTU1xuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIG51bWJlciwgbnVtYmVyXT4oKVxuICAgIEBPdXRwdXQoJ3RvdGFsVXBsb2FkUHJvZ3Jlc3MnKSByZWFkb25seSBEWl9UT1RBTFVQTE9BRFBST0dSRVNTID0gdGhpcy5jb21wb25lbnQ/LkRaX1RPVEFMVVBMT0FEUFJPR1JFU1NcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0+KClcblxuICAgIEBPdXRwdXQoJ3NlbmRpbmcnKSByZWFkb25seSBEWl9TRU5ESU5HID0gdGhpcy5jb21wb25lbnQ/LkRaX1NFTkRJTkdcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBYTUxIdHRwUmVxdWVzdCwgRm9ybURhdGFdPigpXG4gICAgQE91dHB1dCgnc2VuZGluZ011bHRpcGxlJykgcmVhZG9ubHkgRFpfU0VORElOR01VTFRJUExFID0gdGhpcy5jb21wb25lbnQ/LkRaX1NFTkRJTkdNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGVbXSwgWE1MSHR0cFJlcXVlc3QsIEZvcm1EYXRhXT4oKVxuXG4gICAgQE91dHB1dCgnc3VjY2VzcycpIHJlYWRvbmx5IERaX1NVQ0NFU1MgPSB0aGlzLmNvbXBvbmVudD8uRFpfU1VDQ0VTU1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIE9iamVjdCB8IHN0cmluZ10+KClcbiAgICBAT3V0cHV0KCdzdWNjZXNzTXVsdGlwbGUnKSByZWFkb25seSBEWl9TVUNDRVNTTVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfU1VDQ0VTU01VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ2NhbmNlbGVkJykgcmVhZG9ubHkgRFpfQ0FOQ0VMRUQgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ0FOQ0VMRURcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdjYW5jZWxlZE11bHRpcGxlJykgcmVhZG9ubHkgRFpfQ0FOQ0VMRURNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9DQU5DRUxFRE1VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ2NvbXBsZXRlJykgcmVhZG9ubHkgRFpfQ09NUExFVEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ09NUExFVEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdjb21wbGV0ZU11bHRpcGxlJykgcmVhZG9ubHkgRFpfQ09NUExFVEVNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9DT01QTEVURU1VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ21heEZpbGVzRXhjZWVkZWQnKSByZWFkb25seSBEWl9NQVhGSUxFU0VYQ0VFREVEID0gdGhpcy5jb21wb25lbnQ/LkRaX01BWEZJTEVTRVhDRUVERURcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdtYXhGaWxlc1JlYWNoZWQnKSByZWFkb25seSBEWl9NQVhGSUxFU1JFQUNIRUQgPSB0aGlzLmNvbXBvbmVudD8uRFpfTUFYRklMRVNSRUFDSEVEXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ3F1ZXVlQ29tcGxldGUnKSByZWFkb25seSBEWl9RVUVVRUNPTVBMRVRFID0gdGhpcy5jb21wb25lbnQ/LkRaX1FVRVVFQ09NUExFVEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgICBnZXQgZHJvcHpvbmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmluc3RhbmNlXG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZHotc2luZ2xlJylcbiAgICBnZXQgaXNTaW5nbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJhbXM/Lm1heEZpbGVzID09PSAxXG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZHotbXVsdGlwbGUnKVxuICAgIGdldCBpc011bHRpcGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zPy5tYXhGaWxlcyAhPT0gMVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHpvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWZmZXJzOiBLZXlWYWx1ZURpZmZlcnMsXG4gICAgICAgIEBJbmplY3QoUExBVEZPUk1fSUQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhdGZvcm1JZDogT2JqZWN0LFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KE5YVF9EUk9QWk9ORV9DT05GSUcpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdHM/OiBEcm9wem9uZUNvbmZpZyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChOWFRfRFJPUFpPTkVfTElTVEVORVJTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudD86IERyb3B6b25lTGlzdGVuZXJzXG4gICAgKSB7IH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0SW5zdGFuY2UoKVxuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95SW5zdGFuY2UoKVxuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNoYW5nZXMgPSB0aGlzLmNvbmZpZ0RpZmYuZGlmZih0aGlzLmNvbmZpZyB8fCB7fSBhcyBhbnkpXG5cbiAgICAgICAgaWYgKGNoYW5nZXMpIHtcbiAgICAgICAgICAgIGxldCBuZXdQYXJhbXMgPSB0aGlzLmRlZmF1bHRzXG4gICAgICAgICAgICAgICAgPyBuZXcgX0Ryb3B6b25lQ29uZmlnKHRoaXMuZGVmYXVsdHMpXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgICAgIGlmIChuZXdQYXJhbXMgJiYgdGhpcy5jb25maWcpXG4gICAgICAgICAgICAgICAgbmV3UGFyYW1zLmFzc2lnbih0aGlzLmNvbmZpZylcbiAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuY29uZmlnKVxuICAgICAgICAgICAgICAgIG5ld1BhcmFtcyA9IG5ldyBfRHJvcHpvbmVDb25maWcodGhpcy5jb25maWcpXG4gICAgICAgICAgICBjb25zdCBkID0gdGhpcy5wYXJhbURpZmYuZGlmZihuZXdQYXJhbXMgfHwge30gYXMgYW55KVxuICAgICAgICAgICAgaWYgKGQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9wYXJhbXMgPSBuZXdQYXJhbXNcbiAgICAgICAgICAgICAgICBsZXQgaGFzQ2hhbmdlcyA9IGZhbHNlXG4gICAgICAgICAgICAgICAgZC5mb3JFYWNoSXRlbShyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpbnRlcm5hbENoYW5nZXMuaGFzKHIua2V5IGFzIGFueSkgJiYgci5jdXJyZW50VmFsdWUgIT09IHIucHJldmlvdXNWYWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NoYW5nZXMgPSB0cnVlXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICBpZiAoaGFzQ2hhbmdlcykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlc3Ryb3lJbnN0YW5jZSgpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdEluc3RhbmNlKClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgcmVzZXQoY2FuY2VsPzogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5yZW1vdmVBbGxGaWxlcyhjYW5jZWwpXG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0SW5zdGFuY2UoKSB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSB8fCAhdGhpcy5fcGFyYW1zKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmluc3RhbmNlID0gbmV3IERyb3B6b25lKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLl9wYXJhbXMpXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UhLmRpc2FibGUoKVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuRFpfSU5JVC5vYnNlcnZlZCkge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5EWl9JTklULmVtaXQodGhpcy5pbnN0YW5jZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgYXV0byByZXNldCBoYW5kbGluZyBmb3IgZXZlbnRzXG4gICAgICAgIHRoaXMuaW5zdGFuY2UhLm9uKCdzdWNjZXNzJywgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCh0aGlzLl9wYXJhbXM/LmF1dG9SZXNldCA/PyAtMSkgPj0gMCkge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZXNldCgpLCB0aGlzLl9wYXJhbXM/LmF1dG9SZXNldClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICB0aGlzLmluc3RhbmNlIS5vbignZXJyb3InLCAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoKHRoaXMuX3BhcmFtcz8uZXJyb3JSZXNldCA/PyAtMSkgPj0gMCkge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZXNldCgpLCB0aGlzLl9wYXJhbXM/LmVycm9yUmVzZXQpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZSEub24oJ2NhbmNlbGVkJywgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCh0aGlzLl9wYXJhbXM/LmNhbmNlbFJlc2V0ID8/IC0xKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlc2V0KCksIHRoaXMuX3BhcmFtcz8uY2FuY2VsUmVzZXQpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgLy8gQWRkIG5hdGl2ZSBEcm9wem9uZSBldmVudCBoYW5kbGluZ1xuICAgICAgICBEcm9wem9uZUV2ZW50cy5mb3JFYWNoKChldmVudE5hbWU6IERyb3B6b25lRXZlbnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UhLm9uKGV2ZW50TmFtZS50b0xvd2VyQ2FzZSgpLCAoLi4uYXJnczogYW55W10pID0+IHtcbiAgICAgICAgICAgICAgICBhcmdzID0gKGFyZ3MubGVuZ3RoID09PSAxKSA/IGFyZ3NbMF0gOiBhcmdzXG5cbiAgICAgICAgICAgICAgICBjb25zdCBvdXRwdXQgPSBgRFpfJHtldmVudE5hbWUudG9VcHBlckNhc2UoKX1gXG5cbiAgICAgICAgICAgICAgICBjb25zdCBlbWl0dGVyID0gdGhpc1tvdXRwdXQgYXMga2V5b2YgRHJvcHpvbmVEaXJlY3RpdmVdIGFzIEV2ZW50RW1pdHRlcjxhbnk+XG5cbiAgICAgICAgICAgICAgICBpZiAoZW1pdHRlci5vYnNlcnZlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtaXR0ZXIuZW1pdChhcmdzKVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXN0cm95SW5zdGFuY2UoKSB7XG4gICAgICAgIGlmICh0aGlzLmluc3RhbmNlKSB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UhLmRlc3Ryb3koKVxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSA9IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|