nxt-dropzone-wrapper 16.0.0-alpha.1 → 16.0.0-alpha.3

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.
@@ -2,7 +2,7 @@
2
2
  import { isPlatformBrowser } from '@angular/common';
3
3
  import { Directive, EventEmitter, HostBinding, Inject, Input, Optional, Output, PLATFORM_ID } from '@angular/core';
4
4
  import Dropzone from 'dropzone';
5
- import { _DropzoneConfig, DropzoneEvents, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces';
5
+ import { DropzoneEvents, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS, _DropzoneConfig } from './dropzone.interfaces';
6
6
  import * as i0 from "@angular/core";
7
7
  export class DropzoneDirective {
8
8
  /** Disables / detaches Dropzone from the element */
@@ -28,11 +28,11 @@ export class DropzoneDirective {
28
28
  }
29
29
  /** @internal */
30
30
  get isSingle() {
31
- return this._params.maxFiles === 1;
31
+ return this._params?.maxFiles === 1;
32
32
  }
33
33
  /** @internal */
34
34
  get isMultiple() {
35
- return this._params.maxFiles !== 1;
35
+ return this._params?.maxFiles !== 1;
36
36
  }
37
37
  constructor(zone, elementRef, differs, platformId, defaults, component) {
38
38
  this.zone = zone;
@@ -42,9 +42,11 @@ export class DropzoneDirective {
42
42
  this.defaults = defaults;
43
43
  this.component = component;
44
44
  this._disabled = false;
45
- this._params = new _DropzoneConfig(this.defaults);
45
+ this._params = this.defaults
46
+ ? new _DropzoneConfig(this.defaults)
47
+ : undefined;
46
48
  this.configDiff = this.differs.find(this.config || {}).create();
47
- this.paramDiff = this.differs.find(this._params).create();
49
+ this.paramDiff = this.differs.find(this._params || {}).create();
48
50
  this.DZ_INIT = this.component?.DZ_INIT
49
51
  ?? new EventEmitter();
50
52
  this.DZ_DROP = this.component?.DZ_DROP
@@ -119,9 +121,14 @@ export class DropzoneDirective {
119
121
  ngDoCheck() {
120
122
  const changes = this.configDiff.diff(this.config || {});
121
123
  if (changes) {
122
- const newParams = new _DropzoneConfig(this.defaults);
123
- newParams.assign(this.config);
124
- const d = this.paramDiff.diff(newParams);
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 || {});
125
132
  if (d) {
126
133
  this._params = newParams;
127
134
  let hasChanges = false;
@@ -129,7 +136,7 @@ export class DropzoneDirective {
129
136
  if (!internalChanges.has(r.key) && r.currentValue !== r.previousValue)
130
137
  hasChanges = true;
131
138
  });
132
- if (hasChanges && this.instance) {
139
+ if (hasChanges) {
133
140
  this.destroyInstance();
134
141
  this.initInstance();
135
142
  }
@@ -145,7 +152,7 @@ export class DropzoneDirective {
145
152
  }
146
153
  }
147
154
  initInstance() {
148
- if (!isPlatformBrowser(this.platformId)) {
155
+ if (!isPlatformBrowser(this.platformId) || !this._params) {
149
156
  return;
150
157
  }
151
158
  this.zone.runOutsideAngular(() => {
@@ -161,18 +168,18 @@ export class DropzoneDirective {
161
168
  }
162
169
  // Add auto reset handling for events
163
170
  this.instance.on('success', () => {
164
- if ((this._params.autoReset ?? -1) >= 0) {
165
- setTimeout(() => this.reset(), this._params.autoReset);
171
+ if ((this._params?.autoReset ?? -1) >= 0) {
172
+ setTimeout(() => this.reset(), this._params?.autoReset);
166
173
  }
167
174
  });
168
175
  this.instance.on('error', () => {
169
- if ((this._params.errorReset ?? -1) >= 0) {
170
- setTimeout(() => this.reset(), this._params.errorReset);
176
+ if ((this._params?.errorReset ?? -1) >= 0) {
177
+ setTimeout(() => this.reset(), this._params?.errorReset);
171
178
  }
172
179
  });
173
180
  this.instance.on('canceled', () => {
174
- if ((this._params.cancelReset ?? -1) >= 0) {
175
- setTimeout(() => this.reset(), this._params.cancelReset);
181
+ if ((this._params?.cancelReset ?? -1) >= 0) {
182
+ setTimeout(() => this.reset(), this._params?.cancelReset);
176
183
  }
177
184
  });
178
185
  // Add native Dropzone event handling
@@ -321,4 +328,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
321
328
  type: HostBinding,
322
329
  args: ['class.dz-multiple']
323
330
  }] } });
324
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZHJvcHpvbmUtd3JhcHBlci9zcmMvbGliL2Ryb3B6b25lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBdUIsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUE4QyxRQUFRLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNuTCxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUE7QUFDL0IsT0FBTyxFQUFFLGVBQWUsRUFBaUMsY0FBYyxFQUFxQixlQUFlLEVBQUUsbUJBQW1CLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7QUFNdkwsTUFBTSxPQUFPLGlCQUFpQjtJQUsxQixvREFBb0Q7SUFDcEQsSUFBYSxRQUFRLENBQUMsR0FBWTtRQUM5QixHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtRQUNYLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN4QyxJQUFJLEdBQUc7Z0JBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxRQUFTLENBQUMsT0FBTyxFQUFFLENBQUE7Z0JBQzVCLENBQUMsQ0FBQyxDQUFBOztnQkFFRixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtvQkFDN0IsSUFBSSxDQUFDLFFBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFDM0IsQ0FBQyxDQUFDLENBQUE7U0FDVDtRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFBO0lBQ3hC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QUFNO3VCQUFDLGtCQUFrQjtnQkFHVyxtQkFBbUI7c0JBQXZELE1BQU07dUJBQUMsa0JBQWtCO2dCQUVVLGtCQUFrQjtzQkFBckQsTUFBTTt1QkFBQyxpQkFBaUI7Z0JBR1MsZ0JBQWdCO3NCQUFqRCxNQUFNO3VCQUFDLGVBQWU7Z0JBU25CLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTzFCLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LXJlbmFtZSAqL1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBEaXJlY3RpdmUsIERvQ2hlY2ssIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIEtleVZhbHVlRGlmZmVycywgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IERyb3B6b25lIGZyb20gJ2Ryb3B6b25lJ1xuaW1wb3J0IHsgX0Ryb3B6b25lQ29uZmlnLCBEcm9wem9uZUNvbmZpZywgRHJvcHpvbmVFdmVudCwgRHJvcHpvbmVFdmVudHMsIERyb3B6b25lTGlzdGVuZXJzLCBpbnRlcm5hbENoYW5nZXMsIE5YVF9EUk9QWk9ORV9DT05GSUcsIE5YVF9EUk9QWk9ORV9MSVNURU5FUlMgfSBmcm9tICcuL2Ryb3B6b25lLmludGVyZmFjZXMnXG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW254dERyb3B6b25lXScsXG4gICAgZXhwb3J0QXM6ICdueHREcm9wem9uZSdcbn0pXG5leHBvcnQgY2xhc3MgRHJvcHpvbmVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgRG9DaGVjaywgRHJvcHpvbmVMaXN0ZW5lcnMge1xuXG4gICAgcHJpdmF0ZSBpbnN0YW5jZT86IERyb3B6b25lXG5cbiAgICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlXG4gICAgLyoqIERpc2FibGVzIC8gZGV0YWNoZXMgRHJvcHpvbmUgZnJvbSB0aGUgZWxlbWVudCAqL1xuICAgIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdmFsID0gISF2YWxcbiAgICAgICAgaWYgKHZhbCAhPSB0aGlzLl9kaXNhYmxlZCAmJiB0aGlzLmluc3RhbmNlKSB7XG4gICAgICAgICAgICBpZiAodmFsKVxuICAgICAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UhLmRpc2FibGUoKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEuZW5hYmxlKClcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsXG4gICAgfVxuICAgIGdldCBkaXNhYmxlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcGFyYW1zID0gbmV3IF9Ecm9wem9uZUNvbmZpZyh0aGlzLmRlZmF1bHRzKVxuICAgIC8qKiBDYW4gYmUgdXNlZCB0byBwcm92aWRlIG9wdGlvbmFsIGN1c3RvbSBjb25maWcgKi9cbiAgICBASW5wdXQoJ254dERyb3B6b25lJykgY29uZmlnPzogRHJvcHpvbmVDb25maWdcblxuICAgIHByaXZhdGUgY29uZmlnRGlmZiA9IHRoaXMuZGlmZmVycy5maW5kKHRoaXMuY29uZmlnIHx8IHt9KS5jcmVhdGUoKVxuICAgIHByaXZhdGUgcGFyYW1EaWZmID0gdGhpcy5kaWZmZXJzLmZpbmQodGhpcy5fcGFyYW1zKS5jcmVhdGUoKVxuXG4gICAgQE91dHB1dCgnaW5pdCcpIHJlYWRvbmx5IERaX0lOSVQgPSB0aGlzLmNvbXBvbmVudD8uRFpfSU5JVFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lPigpXG5cbiAgICBAT3V0cHV0KCdkcm9wJykgcmVhZG9ubHkgRFpfRFJPUCA9IHRoaXMuY29tcG9uZW50Py5EWl9EUk9QXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ1N0YXJ0JykgcmVhZG9ubHkgRFpfRFJBR1NUQVJUID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdTVEFSVFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdFbmQnKSByZWFkb25seSBEWl9EUkFHRU5EID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdFTkRcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnRW50ZXInKSByZWFkb25seSBEWl9EUkFHRU5URVIgPSB0aGlzLmNvbXBvbmVudD8uRFpfRFJBR0VOVEVSXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ092ZXInKSByZWFkb25seSBEWl9EUkFHT1ZFUiA9IHRoaXMuY29tcG9uZW50Py5EWl9EUkFHT1ZFUlxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdMZWF2ZScpIHJlYWRvbmx5IERaX0RSQUdMRUFWRSA9IHRoaXMuY29tcG9uZW50Py5EWl9EUkFHTEVBVkVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdwYXN0ZScpIHJlYWRvbmx5IERaX1BBU1RFID0gdGhpcy5jb21wb25lbnQ/LkRaX1BBU1RFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG5cbiAgICBAT3V0cHV0KCdyZXNldCcpIHJlYWRvbmx5IERaX1JFU0VUID0gdGhpcy5jb21wb25lbnQ/LkRaX1JFU0VUXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gICAgQE91dHB1dCgnYWRkZWRGaWxlJykgcmVhZG9ubHkgRFpfQURERURGSUxFID0gdGhpcy5jb21wb25lbnQ/LkRaX0FEREVERklMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ2FkZGVkRmlsZXMnKSByZWFkb25seSBEWl9BRERFREZJTEVTID0gdGhpcy5jb21wb25lbnQ/LkRaX0FEREVERklMRVNcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdyZW1vdmVkRmlsZScpIHJlYWRvbmx5IERaX1JFTU9WRURGSUxFID0gdGhpcy5jb21wb25lbnQ/LkRaX1JFTU9WRURGSUxFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgndGh1bWJuYWlsJykgcmVhZG9ubHkgRFpfVEhVTUJOQUlMID0gdGhpcy5jb21wb25lbnQ/LkRaX1RIVU1CTkFJTFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIHN0cmluZ10+KClcblxuICAgIEBPdXRwdXQoJ2Vycm9yJykgcmVhZG9ubHkgRFpfRVJST1IgPSB0aGlzLmNvbXBvbmVudD8uRFpfRVJST1JcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBzdHJpbmcgfCBFcnJvcl0+KClcbiAgICBAT3V0cHV0KCdlcnJvck11bHRpcGxlJykgcmVhZG9ubHkgRFpfRVJST1JNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9FUlJPUk1VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W0Ryb3B6b25lLkRyb3B6b25lRmlsZVtdLCBzdHJpbmcgfCBFcnJvcl0+KClcblxuICAgIEBPdXRwdXQoJ3Byb2Nlc3NpbmcnKSByZWFkb25seSBEWl9QUk9DRVNTSU5HID0gdGhpcy5jb21wb25lbnQ/LkRaX1BST0NFU1NJTkdcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdwcm9jZXNzaW5nTXVsdGlwbGUnKSByZWFkb25seSBEWl9QUk9DRVNTSU5HTVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfUFJPQ0VTU0lOR01VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ3VwbG9hZFByb2dyZXNzJykgcmVhZG9ubHkgRFpfVVBMT0FEUFJPR1JFU1MgPSB0aGlzLmNvbXBvbmVudD8uRFpfVVBMT0FEUFJPR1JFU1NcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBudW1iZXIsIG51bWJlcl0+KClcbiAgICBAT3V0cHV0KCd0b3RhbFVwbG9hZFByb2dyZXNzJykgcmVhZG9ubHkgRFpfVE9UQUxVUExPQURQUk9HUkVTUyA9IHRoaXMuY29tcG9uZW50Py5EWl9UT1RBTFVQTE9BRFBST0dSRVNTXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W251bWJlciwgbnVtYmVyLCBudW1iZXJdPigpXG5cbiAgICBAT3V0cHV0KCdzZW5kaW5nJykgcmVhZG9ubHkgRFpfU0VORElORyA9IHRoaXMuY29tcG9uZW50Py5EWl9TRU5ESU5HXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W0Ryb3B6b25lLkRyb3B6b25lRmlsZSwgWE1MSHR0cFJlcXVlc3QsIEZvcm1EYXRhXT4oKVxuICAgIEBPdXRwdXQoJ3NlbmRpbmdNdWx0aXBsZScpIHJlYWRvbmx5IERaX1NFTkRJTkdNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9TRU5ESU5HTVVMVElQTEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlW10sIFhNTEh0dHBSZXF1ZXN0LCBGb3JtRGF0YV0+KClcblxuICAgIEBPdXRwdXQoJ3N1Y2Nlc3MnKSByZWFkb25seSBEWl9TVUNDRVNTID0gdGhpcy5jb21wb25lbnQ/LkRaX1NVQ0NFU1NcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHlwZXNcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBPYmplY3QgfCBzdHJpbmddPigpXG4gICAgQE91dHB1dCgnc3VjY2Vzc011bHRpcGxlJykgcmVhZG9ubHkgRFpfU1VDQ0VTU01VTFRJUExFID0gdGhpcy5jb21wb25lbnQ/LkRaX1NVQ0NFU1NNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdjYW5jZWxlZCcpIHJlYWRvbmx5IERaX0NBTkNFTEVEID0gdGhpcy5jb21wb25lbnQ/LkRaX0NBTkNFTEVEXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnY2FuY2VsZWRNdWx0aXBsZScpIHJlYWRvbmx5IERaX0NBTkNFTEVETVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ0FOQ0VMRURNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdjb21wbGV0ZScpIHJlYWRvbmx5IERaX0NPTVBMRVRFID0gdGhpcy5jb21wb25lbnQ/LkRaX0NPTVBMRVRFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnY29tcGxldGVNdWx0aXBsZScpIHJlYWRvbmx5IERaX0NPTVBMRVRFTVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ09NUExFVEVNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdtYXhGaWxlc0V4Y2VlZGVkJykgcmVhZG9ubHkgRFpfTUFYRklMRVNFWENFRURFRCA9IHRoaXMuY29tcG9uZW50Py5EWl9NQVhGSUxFU0VYQ0VFREVEXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnbWF4RmlsZXNSZWFjaGVkJykgcmVhZG9ubHkgRFpfTUFYRklMRVNSRUFDSEVEID0gdGhpcy5jb21wb25lbnQ/LkRaX01BWEZJTEVTUkVBQ0hFRFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdxdWV1ZUNvbXBsZXRlJykgcmVhZG9ubHkgRFpfUVVFVUVDT01QTEVURSA9IHRoaXMuY29tcG9uZW50Py5EWl9RVUVVRUNPTVBMRVRFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gICAgZ2V0IGRyb3B6b25lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZVxuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmR6LXNpbmdsZScpXG4gICAgZ2V0IGlzU2luZ2xlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zLm1heEZpbGVzID09PSAxXG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZHotbXVsdGlwbGUnKVxuICAgIGdldCBpc011bHRpcGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zLm1heEZpbGVzICE9PSAxXG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRClcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHlwZXNcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGF0Zm9ybUlkOiBPYmplY3QsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoTlhUX0RST1BaT05FX0NPTkZJRylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0cz86IERyb3B6b25lQ29uZmlnLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KE5YVF9EUk9QWk9ORV9MSVNURU5FUlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50PzogRHJvcHpvbmVMaXN0ZW5lcnNcbiAgICApIHsgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRJbnN0YW5jZSgpXG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3lJbnN0YW5jZSgpXG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2hhbmdlcyA9IHRoaXMuY29uZmlnRGlmZi5kaWZmKHRoaXMuY29uZmlnIHx8IHt9IGFzIGFueSlcblxuICAgICAgICBpZiAoY2hhbmdlcykge1xuICAgICAgICAgICAgY29uc3QgbmV3UGFyYW1zID0gbmV3IF9Ecm9wem9uZUNvbmZpZyh0aGlzLmRlZmF1bHRzKVxuICAgICAgICAgICAgbmV3UGFyYW1zLmFzc2lnbih0aGlzLmNvbmZpZylcbiAgICAgICAgICAgIGNvbnN0IGQgPSB0aGlzLnBhcmFtRGlmZi5kaWZmKG5ld1BhcmFtcyBhcyBhbnkpXG4gICAgICAgICAgICBpZiAoZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3BhcmFtcyA9IG5ld1BhcmFtc1xuICAgICAgICAgICAgICAgIGxldCBoYXNDaGFuZ2VzID0gZmFsc2VcbiAgICAgICAgICAgICAgICBkLmZvckVhY2hJdGVtKHIgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWludGVybmFsQ2hhbmdlcy5oYXMoci5rZXkgYXMgYW55KSAmJiByLmN1cnJlbnRWYWx1ZSAhPT0gci5wcmV2aW91c1ZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ2hhbmdlcyA9IHRydWVcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIGlmIChoYXNDaGFuZ2VzICYmIHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95SW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRJbnN0YW5jZSgpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHJlc2V0KGNhbmNlbD86IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEucmVtb3ZlQWxsRmlsZXMoY2FuY2VsKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdEluc3RhbmNlKCkge1xuICAgICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UgPSBuZXcgRHJvcHpvbmUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuX3BhcmFtcylcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEuZGlzYWJsZSgpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5EWl9JTklULm9ic2VydmVkKSB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLkRaX0lOSVQuZW1pdCh0aGlzLmluc3RhbmNlKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCBhdXRvIHJlc2V0IGhhbmRsaW5nIGZvciBldmVudHNcbiAgICAgICAgdGhpcy5pbnN0YW5jZSEub24oJ3N1Y2Nlc3MnLCAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoKHRoaXMuX3BhcmFtcy5hdXRvUmVzZXQgPz8gLTEpID49IDApIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVzZXQoKSwgdGhpcy5fcGFyYW1zLmF1dG9SZXNldClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICB0aGlzLmluc3RhbmNlIS5vbignZXJyb3InLCAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoKHRoaXMuX3BhcmFtcy5lcnJvclJlc2V0ID8/IC0xKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlc2V0KCksIHRoaXMuX3BhcmFtcy5lcnJvclJlc2V0KVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIHRoaXMuaW5zdGFuY2UhLm9uKCdjYW5jZWxlZCcsICgpID0+IHtcbiAgICAgICAgICAgIGlmICgodGhpcy5fcGFyYW1zLmNhbmNlbFJlc2V0ID8/IC0xKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlc2V0KCksIHRoaXMuX3BhcmFtcy5jYW5jZWxSZXNldClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICAvLyBBZGQgbmF0aXZlIERyb3B6b25lIGV2ZW50IGhhbmRsaW5nXG4gICAgICAgIERyb3B6b25lRXZlbnRzLmZvckVhY2goKGV2ZW50TmFtZTogRHJvcHpvbmVFdmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEub24oZXZlbnROYW1lLnRvTG93ZXJDYXNlKCksICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgICAgICAgICAgIGFyZ3MgPSAoYXJncy5sZW5ndGggPT09IDEpID8gYXJnc1swXSA6IGFyZ3NcblxuICAgICAgICAgICAgICAgIGNvbnN0IG91dHB1dCA9IGBEWl8ke2V2ZW50TmFtZS50b1VwcGVyQ2FzZSgpfWBcblxuICAgICAgICAgICAgICAgIGNvbnN0IGVtaXR0ZXIgPSB0aGlzW291dHB1dCBhcyBrZXlvZiBEcm9wem9uZURpcmVjdGl2ZV0gYXMgRXZlbnRFbWl0dGVyPGFueT5cblxuICAgICAgICAgICAgICAgIGlmIChlbWl0dGVyLm9ic2VydmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZW1pdHRlci5lbWl0KGFyZ3MpXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlc3Ryb3lJbnN0YW5jZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEuZGVzdHJveSgpXG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICB0aGlzLmluc3RhbmNlID0gdW5kZWZpbmVkXG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
331
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZHJvcHpvbmUtd3JhcHBlci9zcmMvbGliL2Ryb3B6b25lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBdUIsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUE4QyxRQUFRLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNuTCxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUE7QUFDL0IsT0FBTyxFQUFpQyxjQUFjLEVBQXFCLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7QUFNdkwsTUFBTSxPQUFPLGlCQUFpQjtJQUsxQixvREFBb0Q7SUFDcEQsSUFBYSxRQUFRLENBQUMsR0FBWTtRQUM5QixHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtRQUNYLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN4QyxJQUFJLEdBQUc7Z0JBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxRQUFTLENBQUMsT0FBTyxFQUFFLENBQUE7Z0JBQzVCLENBQUMsQ0FBQyxDQUFBOztnQkFFRixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtvQkFDN0IsSUFBSSxDQUFDLFFBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFDM0IsQ0FBQyxDQUFDLENBQUE7U0FDVDtRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFBO0lBQ3hC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QyxTQUFTO2dCQUVtQixrQkFBa0I7c0JBQXJELE1BQU07dUJBQUMsaUJBQWlCO2dCQUdHLFVBQVU7c0JBQXJDLE1BQU07dUJBQUMsU0FBUztnQkFHbUIsa0JBQWtCO3NCQUFyRCxNQUFNO3VCQUFDLGlCQUFpQjtnQkFHSSxXQUFXO3NCQUF2QyxNQUFNO3VCQUFDLFVBQVU7Z0JBRW1CLG1CQUFtQjtzQkFBdkQsTUFBTTt1QkFBQyxrQkFBa0I7Z0JBR0csV0FBVztzQkFBdkMsTUFBTTt1QkFBQyxVQUFVO2dCQUVtQixtQkFBbUI7c0JBQXZELE1BQU07dUJBQUMsa0JBQWtCO2dCQUdXLG1CQUFtQjtzQkFBdkQsTUFBTTt1QkFBQyxrQkFBa0I7Z0JBRVUsa0JBQWtCO3NCQUFyRCxNQUFNO3VCQUFDLGlCQUFpQjtnQkFHUyxnQkFBZ0I7c0JBQWpELE1BQU07dUJBQUMsZUFBZTtnQkFTbkIsUUFBUTtzQkFEWCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFPMUIsVUFBVTtzQkFEYixXQUFXO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtcmVuYW1lICovXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IERpcmVjdGl2ZSwgRG9DaGVjaywgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5qZWN0LCBJbnB1dCwgS2V5VmFsdWVEaWZmZXJzLCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgRHJvcHpvbmUgZnJvbSAnZHJvcHpvbmUnXG5pbXBvcnQgeyBEcm9wem9uZUNvbmZpZywgRHJvcHpvbmVFdmVudCwgRHJvcHpvbmVFdmVudHMsIERyb3B6b25lTGlzdGVuZXJzLCBpbnRlcm5hbENoYW5nZXMsIE5YVF9EUk9QWk9ORV9DT05GSUcsIE5YVF9EUk9QWk9ORV9MSVNURU5FUlMsIF9Ecm9wem9uZUNvbmZpZyB9IGZyb20gJy4vZHJvcHpvbmUuaW50ZXJmYWNlcydcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbbnh0RHJvcHpvbmVdJyxcbiAgICBleHBvcnRBczogJ254dERyb3B6b25lJ1xufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBEb0NoZWNrLCBEcm9wem9uZUxpc3RlbmVycyB7XG5cbiAgICBwcml2YXRlIGluc3RhbmNlPzogRHJvcHpvbmVcblxuICAgIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2VcbiAgICAvKiogRGlzYWJsZXMgLyBkZXRhY2hlcyBEcm9wem9uZSBmcm9tIHRoZSBlbGVtZW50ICovXG4gICAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbikge1xuICAgICAgICB2YWwgPSAhIXZhbFxuICAgICAgICBpZiAodmFsICE9IHRoaXMuX2Rpc2FibGVkICYmIHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIGlmICh2YWwpXG4gICAgICAgICAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEuZGlzYWJsZSgpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5lbmFibGUoKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWxcbiAgICB9XG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRcbiAgICB9XG5cbiAgICBwcml2YXRlIF9wYXJhbXMgPSB0aGlzLmRlZmF1bHRzXG4gICAgICAgID8gbmV3IF9Ecm9wem9uZUNvbmZpZyh0aGlzLmRlZmF1bHRzKVxuICAgICAgICA6IHVuZGVmaW5lZFxuICAgIC8qKiBDYW4gYmUgdXNlZCB0byBwcm92aWRlIG9wdGlvbmFsIGN1c3RvbSBjb25maWcgKi9cbiAgICBASW5wdXQoJ254dERyb3B6b25lJykgY29uZmlnPzogRHJvcHpvbmVDb25maWdcblxuICAgIHByaXZhdGUgY29uZmlnRGlmZiA9IHRoaXMuZGlmZmVycy5maW5kKHRoaXMuY29uZmlnIHx8IHt9KS5jcmVhdGUoKVxuICAgIHByaXZhdGUgcGFyYW1EaWZmID0gdGhpcy5kaWZmZXJzLmZpbmQodGhpcy5fcGFyYW1zIHx8IHt9KS5jcmVhdGUoKVxuXG4gICAgQE91dHB1dCgnaW5pdCcpIHJlYWRvbmx5IERaX0lOSVQgPSB0aGlzLmNvbXBvbmVudD8uRFpfSU5JVFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lPigpXG5cbiAgICBAT3V0cHV0KCdkcm9wJykgcmVhZG9ubHkgRFpfRFJPUCA9IHRoaXMuY29tcG9uZW50Py5EWl9EUk9QXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ1N0YXJ0JykgcmVhZG9ubHkgRFpfRFJBR1NUQVJUID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdTVEFSVFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdFbmQnKSByZWFkb25seSBEWl9EUkFHRU5EID0gdGhpcy5jb21wb25lbnQ/LkRaX0RSQUdFTkRcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdkcmFnRW50ZXInKSByZWFkb25seSBEWl9EUkFHRU5URVIgPSB0aGlzLmNvbXBvbmVudD8uRFpfRFJBR0VOVEVSXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG4gICAgQE91dHB1dCgnZHJhZ092ZXInKSByZWFkb25seSBEWl9EUkFHT1ZFUiA9IHRoaXMuY29tcG9uZW50Py5EWl9EUkFHT1ZFUlxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKVxuICAgIEBPdXRwdXQoJ2RyYWdMZWF2ZScpIHJlYWRvbmx5IERaX0RSQUdMRUFWRSA9IHRoaXMuY29tcG9uZW50Py5EWl9EUkFHTEVBVkVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KClcbiAgICBAT3V0cHV0KCdwYXN0ZScpIHJlYWRvbmx5IERaX1BBU1RFID0gdGhpcy5jb21wb25lbnQ/LkRaX1BBU1RFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpXG5cbiAgICBAT3V0cHV0KCdyZXNldCcpIHJlYWRvbmx5IERaX1JFU0VUID0gdGhpcy5jb21wb25lbnQ/LkRaX1JFU0VUXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gICAgQE91dHB1dCgnYWRkZWRGaWxlJykgcmVhZG9ubHkgRFpfQURERURGSUxFID0gdGhpcy5jb21wb25lbnQ/LkRaX0FEREVERklMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZT4oKVxuICAgIEBPdXRwdXQoJ2FkZGVkRmlsZXMnKSByZWFkb25seSBEWl9BRERFREZJTEVTID0gdGhpcy5jb21wb25lbnQ/LkRaX0FEREVERklMRVNcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdyZW1vdmVkRmlsZScpIHJlYWRvbmx5IERaX1JFTU9WRURGSUxFID0gdGhpcy5jb21wb25lbnQ/LkRaX1JFTU9WRURGSUxFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgndGh1bWJuYWlsJykgcmVhZG9ubHkgRFpfVEhVTUJOQUlMID0gdGhpcy5jb21wb25lbnQ/LkRaX1RIVU1CTkFJTFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPFtEcm9wem9uZS5Ecm9wem9uZUZpbGUsIHN0cmluZ10+KClcblxuICAgIEBPdXRwdXQoJ2Vycm9yJykgcmVhZG9ubHkgRFpfRVJST1IgPSB0aGlzLmNvbXBvbmVudD8uRFpfRVJST1JcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBzdHJpbmcgfCBFcnJvcl0+KClcbiAgICBAT3V0cHV0KCdlcnJvck11bHRpcGxlJykgcmVhZG9ubHkgRFpfRVJST1JNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9FUlJPUk1VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W0Ryb3B6b25lLkRyb3B6b25lRmlsZVtdLCBzdHJpbmcgfCBFcnJvcl0+KClcblxuICAgIEBPdXRwdXQoJ3Byb2Nlc3NpbmcnKSByZWFkb25seSBEWl9QUk9DRVNTSU5HID0gdGhpcy5jb21wb25lbnQ/LkRaX1BST0NFU1NJTkdcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxEcm9wem9uZS5Ecm9wem9uZUZpbGU+KClcbiAgICBAT3V0cHV0KCdwcm9jZXNzaW5nTXVsdGlwbGUnKSByZWFkb25seSBEWl9QUk9DRVNTSU5HTVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfUFJPQ0VTU0lOR01VTFRJUExFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlW10+KClcblxuICAgIEBPdXRwdXQoJ3VwbG9hZFByb2dyZXNzJykgcmVhZG9ubHkgRFpfVVBMT0FEUFJPR1JFU1MgPSB0aGlzLmNvbXBvbmVudD8uRFpfVVBMT0FEUFJPR1JFU1NcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBudW1iZXIsIG51bWJlcl0+KClcbiAgICBAT3V0cHV0KCd0b3RhbFVwbG9hZFByb2dyZXNzJykgcmVhZG9ubHkgRFpfVE9UQUxVUExPQURQUk9HUkVTUyA9IHRoaXMuY29tcG9uZW50Py5EWl9UT1RBTFVQTE9BRFBST0dSRVNTXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W251bWJlciwgbnVtYmVyLCBudW1iZXJdPigpXG5cbiAgICBAT3V0cHV0KCdzZW5kaW5nJykgcmVhZG9ubHkgRFpfU0VORElORyA9IHRoaXMuY29tcG9uZW50Py5EWl9TRU5ESU5HXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8W0Ryb3B6b25lLkRyb3B6b25lRmlsZSwgWE1MSHR0cFJlcXVlc3QsIEZvcm1EYXRhXT4oKVxuICAgIEBPdXRwdXQoJ3NlbmRpbmdNdWx0aXBsZScpIHJlYWRvbmx5IERaX1NFTkRJTkdNVUxUSVBMRSA9IHRoaXMuY29tcG9uZW50Py5EWl9TRU5ESU5HTVVMVElQTEVcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlW10sIFhNTEh0dHBSZXF1ZXN0LCBGb3JtRGF0YV0+KClcblxuICAgIEBPdXRwdXQoJ3N1Y2Nlc3MnKSByZWFkb25seSBEWl9TVUNDRVNTID0gdGhpcy5jb21wb25lbnQ/LkRaX1NVQ0NFU1NcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHlwZXNcbiAgICAgICAgPz8gbmV3IEV2ZW50RW1pdHRlcjxbRHJvcHpvbmUuRHJvcHpvbmVGaWxlLCBPYmplY3QgfCBzdHJpbmddPigpXG4gICAgQE91dHB1dCgnc3VjY2Vzc011bHRpcGxlJykgcmVhZG9ubHkgRFpfU1VDQ0VTU01VTFRJUExFID0gdGhpcy5jb21wb25lbnQ/LkRaX1NVQ0NFU1NNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdjYW5jZWxlZCcpIHJlYWRvbmx5IERaX0NBTkNFTEVEID0gdGhpcy5jb21wb25lbnQ/LkRaX0NBTkNFTEVEXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnY2FuY2VsZWRNdWx0aXBsZScpIHJlYWRvbmx5IERaX0NBTkNFTEVETVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ0FOQ0VMRURNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdjb21wbGV0ZScpIHJlYWRvbmx5IERaX0NPTVBMRVRFID0gdGhpcy5jb21wb25lbnQ/LkRaX0NPTVBMRVRFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnY29tcGxldGVNdWx0aXBsZScpIHJlYWRvbmx5IERaX0NPTVBMRVRFTVVMVElQTEUgPSB0aGlzLmNvbXBvbmVudD8uRFpfQ09NUExFVEVNVUxUSVBMRVxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdtYXhGaWxlc0V4Y2VlZGVkJykgcmVhZG9ubHkgRFpfTUFYRklMRVNFWENFRURFRCA9IHRoaXMuY29tcG9uZW50Py5EWl9NQVhGSUxFU0VYQ0VFREVEXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8RHJvcHpvbmUuRHJvcHpvbmVGaWxlPigpXG4gICAgQE91dHB1dCgnbWF4RmlsZXNSZWFjaGVkJykgcmVhZG9ubHkgRFpfTUFYRklMRVNSRUFDSEVEID0gdGhpcy5jb21wb25lbnQ/LkRaX01BWEZJTEVTUkVBQ0hFRFxuICAgICAgICA/PyBuZXcgRXZlbnRFbWl0dGVyPERyb3B6b25lLkRyb3B6b25lRmlsZVtdPigpXG5cbiAgICBAT3V0cHV0KCdxdWV1ZUNvbXBsZXRlJykgcmVhZG9ubHkgRFpfUVVFVUVDT01QTEVURSA9IHRoaXMuY29tcG9uZW50Py5EWl9RVUVVRUNPTVBMRVRFXG4gICAgICAgID8/IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gICAgZ2V0IGRyb3B6b25lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZVxuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmR6LXNpbmdsZScpXG4gICAgZ2V0IGlzU2luZ2xlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zPy5tYXhGaWxlcyA9PT0gMVxuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmR6LW11bHRpcGxlJylcbiAgICBnZXQgaXNNdWx0aXBsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmFtcz8ubWF4RmlsZXMgIT09IDFcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB6b25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChOWFRfRFJPUFpPTkVfQ09ORklHKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRzPzogRHJvcHpvbmVDb25maWcsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoTlhUX0RST1BaT05FX0xJU1RFTkVSUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb21wb25lbnQ/OiBEcm9wem9uZUxpc3RlbmVyc1xuICAgICkgeyB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5pdEluc3RhbmNlKClcbiAgICB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveUluc3RhbmNlKClcbiAgICB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjaGFuZ2VzID0gdGhpcy5jb25maWdEaWZmLmRpZmYodGhpcy5jb25maWcgfHwge30gYXMgYW55KVxuXG4gICAgICAgIGlmIChjaGFuZ2VzKSB7XG4gICAgICAgICAgICBsZXQgbmV3UGFyYW1zID0gdGhpcy5kZWZhdWx0c1xuICAgICAgICAgICAgICAgID8gbmV3IF9Ecm9wem9uZUNvbmZpZyh0aGlzLmRlZmF1bHRzKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkXG4gICAgICAgICAgICBpZiAobmV3UGFyYW1zICYmIHRoaXMuY29uZmlnKVxuICAgICAgICAgICAgICAgIG5ld1BhcmFtcy5hc3NpZ24odGhpcy5jb25maWcpXG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbmZpZylcbiAgICAgICAgICAgICAgICBuZXdQYXJhbXMgPSBuZXcgX0Ryb3B6b25lQ29uZmlnKHRoaXMuY29uZmlnKVxuICAgICAgICAgICAgY29uc3QgZCA9IHRoaXMucGFyYW1EaWZmLmRpZmYobmV3UGFyYW1zIHx8IHt9IGFzIGFueSlcbiAgICAgICAgICAgIGlmIChkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcGFyYW1zID0gbmV3UGFyYW1zXG4gICAgICAgICAgICAgICAgbGV0IGhhc0NoYW5nZXMgPSBmYWxzZVxuICAgICAgICAgICAgICAgIGQuZm9yRWFjaEl0ZW0ociA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghaW50ZXJuYWxDaGFuZ2VzLmhhcyhyLmtleSBhcyBhbnkpICYmIHIuY3VycmVudFZhbHVlICE9PSByLnByZXZpb3VzVmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNDaGFuZ2VzID0gdHJ1ZVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgaWYgKGhhc0NoYW5nZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95SW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRJbnN0YW5jZSgpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHJlc2V0KGNhbmNlbD86IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSEucmVtb3ZlQWxsRmlsZXMoY2FuY2VsKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdEluc3RhbmNlKCkge1xuICAgICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgfHwgIXRoaXMuX3BhcmFtcykge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZSA9IG5ldyBEcm9wem9uZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5fcGFyYW1zKVxuICAgICAgICB9KVxuXG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5kaXNhYmxlKClcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLkRaX0lOSVQub2JzZXJ2ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuRFpfSU5JVC5lbWl0KHRoaXMuaW5zdGFuY2UpXG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWRkIGF1dG8gcmVzZXQgaGFuZGxpbmcgZm9yIGV2ZW50c1xuICAgICAgICB0aGlzLmluc3RhbmNlIS5vbignc3VjY2VzcycsICgpID0+IHtcbiAgICAgICAgICAgIGlmICgodGhpcy5fcGFyYW1zPy5hdXRvUmVzZXQgPz8gLTEpID49IDApIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVzZXQoKSwgdGhpcy5fcGFyYW1zPy5hdXRvUmVzZXQpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZSEub24oJ2Vycm9yJywgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCh0aGlzLl9wYXJhbXM/LmVycm9yUmVzZXQgPz8gLTEpID49IDApIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVzZXQoKSwgdGhpcy5fcGFyYW1zPy5lcnJvclJlc2V0KVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIHRoaXMuaW5zdGFuY2UhLm9uKCdjYW5jZWxlZCcsICgpID0+IHtcbiAgICAgICAgICAgIGlmICgodGhpcy5fcGFyYW1zPy5jYW5jZWxSZXNldCA/PyAtMSkgPj0gMCkge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZXNldCgpLCB0aGlzLl9wYXJhbXM/LmNhbmNlbFJlc2V0KVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIEFkZCBuYXRpdmUgRHJvcHpvbmUgZXZlbnQgaGFuZGxpbmdcbiAgICAgICAgRHJvcHpvbmVFdmVudHMuZm9yRWFjaCgoZXZlbnROYW1lOiBEcm9wem9uZUV2ZW50KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5vbihldmVudE5hbWUudG9Mb3dlckNhc2UoKSwgKC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICAgICAgYXJncyA9IChhcmdzLmxlbmd0aCA9PT0gMSkgPyBhcmdzWzBdIDogYXJnc1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgb3V0cHV0ID0gYERaXyR7ZXZlbnROYW1lLnRvVXBwZXJDYXNlKCl9YFxuXG4gICAgICAgICAgICAgICAgY29uc3QgZW1pdHRlciA9IHRoaXNbb3V0cHV0IGFzIGtleW9mIERyb3B6b25lRGlyZWN0aXZlXSBhcyBFdmVudEVtaXR0ZXI8YW55PlxuXG4gICAgICAgICAgICAgICAgaWYgKGVtaXR0ZXIub2JzZXJ2ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbWl0dGVyLmVtaXQoYXJncylcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHByaXZhdGUgZGVzdHJveUluc3RhbmNlKCkge1xuICAgICAgICBpZiAodGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlIS5kZXN0cm95KClcbiAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -94,11 +94,13 @@ class DropzoneDirective {
94
94
  }
95
95
  /** @internal */
96
96
  get isSingle() {
97
- return this._params.maxFiles === 1;
97
+ var _a;
98
+ return ((_a = this._params) === null || _a === void 0 ? void 0 : _a.maxFiles) === 1;
98
99
  }
99
100
  /** @internal */
100
101
  get isMultiple() {
101
- return this._params.maxFiles !== 1;
102
+ var _a;
103
+ return ((_a = this._params) === null || _a === void 0 ? void 0 : _a.maxFiles) !== 1;
102
104
  }
103
105
  constructor(zone, elementRef, differs, platformId, defaults, component) {
104
106
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35;
@@ -109,9 +111,11 @@ class DropzoneDirective {
109
111
  this.defaults = defaults;
110
112
  this.component = component;
111
113
  this._disabled = false;
112
- this._params = new _DropzoneConfig(this.defaults);
114
+ this._params = this.defaults
115
+ ? new _DropzoneConfig(this.defaults)
116
+ : undefined;
113
117
  this.configDiff = this.differs.find(this.config || {}).create();
114
- this.paramDiff = this.differs.find(this._params).create();
118
+ this.paramDiff = this.differs.find(this._params || {}).create();
115
119
  this.DZ_INIT = (_b = (_a = this.component) === null || _a === void 0 ? void 0 : _a.DZ_INIT) !== null && _b !== void 0 ? _b : new EventEmitter();
116
120
  this.DZ_DROP = (_d = (_c = this.component) === null || _c === void 0 ? void 0 : _c.DZ_DROP) !== null && _d !== void 0 ? _d : new EventEmitter();
117
121
  this.DZ_DRAGSTART = (_f = (_e = this.component) === null || _e === void 0 ? void 0 : _e.DZ_DRAGSTART) !== null && _f !== void 0 ? _f : new EventEmitter();
@@ -155,9 +159,14 @@ class DropzoneDirective {
155
159
  ngDoCheck() {
156
160
  const changes = this.configDiff.diff(this.config || {});
157
161
  if (changes) {
158
- const newParams = new _DropzoneConfig(this.defaults);
159
- newParams.assign(this.config);
160
- const d = this.paramDiff.diff(newParams);
162
+ let newParams = this.defaults
163
+ ? new _DropzoneConfig(this.defaults)
164
+ : undefined;
165
+ if (newParams && this.config)
166
+ newParams.assign(this.config);
167
+ else if (this.config)
168
+ newParams = new _DropzoneConfig(this.config);
169
+ const d = this.paramDiff.diff(newParams || {});
161
170
  if (d) {
162
171
  this._params = newParams;
163
172
  let hasChanges = false;
@@ -165,7 +174,7 @@ class DropzoneDirective {
165
174
  if (!internalChanges.has(r.key) && r.currentValue !== r.previousValue)
166
175
  hasChanges = true;
167
176
  });
168
- if (hasChanges && this.instance) {
177
+ if (hasChanges) {
169
178
  this.destroyInstance();
170
179
  this.initInstance();
171
180
  }
@@ -181,7 +190,7 @@ class DropzoneDirective {
181
190
  }
182
191
  }
183
192
  initInstance() {
184
- if (!isPlatformBrowser(this.platformId)) {
193
+ if (!isPlatformBrowser(this.platformId) || !this._params) {
185
194
  return;
186
195
  }
187
196
  this.zone.runOutsideAngular(() => {
@@ -197,21 +206,21 @@ class DropzoneDirective {
197
206
  }
198
207
  // Add auto reset handling for events
199
208
  this.instance.on('success', () => {
200
- var _a;
201
- if (((_a = this._params.autoReset) !== null && _a !== void 0 ? _a : -1) >= 0) {
202
- setTimeout(() => this.reset(), this._params.autoReset);
209
+ var _a, _b, _c;
210
+ if (((_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.autoReset) !== null && _b !== void 0 ? _b : -1) >= 0) {
211
+ setTimeout(() => this.reset(), (_c = this._params) === null || _c === void 0 ? void 0 : _c.autoReset);
203
212
  }
204
213
  });
205
214
  this.instance.on('error', () => {
206
- var _a;
207
- if (((_a = this._params.errorReset) !== null && _a !== void 0 ? _a : -1) >= 0) {
208
- setTimeout(() => this.reset(), this._params.errorReset);
215
+ var _a, _b, _c;
216
+ if (((_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.errorReset) !== null && _b !== void 0 ? _b : -1) >= 0) {
217
+ setTimeout(() => this.reset(), (_c = this._params) === null || _c === void 0 ? void 0 : _c.errorReset);
209
218
  }
210
219
  });
211
220
  this.instance.on('canceled', () => {
212
- var _a;
213
- if (((_a = this._params.cancelReset) !== null && _a !== void 0 ? _a : -1) >= 0) {
214
- setTimeout(() => this.reset(), this._params.cancelReset);
221
+ var _a, _b, _c;
222
+ if (((_b = (_a = this._params) === null || _a === void 0 ? void 0 : _a.cancelReset) !== null && _b !== void 0 ? _b : -1) >= 0) {
223
+ setTimeout(() => this.reset(), (_c = this._params) === null || _c === void 0 ? void 0 : _c.cancelReset);
215
224
  }
216
225
  });
217
226
  // Add native Dropzone event handling
@@ -1 +1 @@
1
- {"version":3,"file":"nxt-dropzone-wrapper.mjs","sources":["../../../packages/dropzone-wrapper/src/lib/dropzone.interfaces.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.directive.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.html","../../../packages/dropzone-wrapper/src/lib/dropzone.module.ts","../../../packages/dropzone-wrapper/src/nxt-dropzone-wrapper.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core'\n\nexport const NXT_DROPZONE_CONFIG = new InjectionToken<DropzoneConfig>('NXT_DROPZONE_CONFIG')\n\n/** @internal */\nexport type DropzoneEvent = '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'\n\n/** @internal */\nexport const DropzoneEvents: DropzoneEvent[] = [\n 'init',\n\n 'drop',\n 'dragStart',\n 'dragEnd',\n 'dragEnter',\n 'dragOver',\n 'dragLeave',\n 'paste',\n\n 'reset',\n\n 'addedFile',\n 'addedFiles',\n 'removedFile',\n 'thumbnail',\n\n 'error',\n 'errorMultiple',\n\n 'processing',\n 'processingMultiple',\n\n 'uploadProgress',\n 'totalUploadProgress',\n\n 'sending',\n 'sendingMultiple',\n\n 'success',\n 'successMultiple',\n\n 'canceled',\n 'canceledMultiple',\n\n 'complete',\n 'completeMultiple',\n\n 'maxFilesExceeded',\n 'maxFilesReached',\n\n 'queueComplete'\n]\n\nexport interface DropzoneConfig extends Dropzone.DropzoneOptions {\n /**\n * Time in ms until input resets after a successful upload\n */\n autoReset?: number\n /**\n * Time in ms until input resets after upload error\n */\n errorReset?: number\n /**\n * Time in ms until input resets after cancelled upload\n */\n cancelReset?: number\n}\n\n/** @internal */\nexport const internalChanges = new Set([\n 'autoReset',\n 'errorReset',\n 'cancelReset'\n])\n\n/** @internal */\nexport class _DropzoneConfig implements DropzoneConfig {\n autoReset?: number\n errorReset?: number\n cancelReset?: number\n\n maxFiles?: number\n\n constructor(config: DropzoneConfig = {}) {\n this.assign(config)\n }\n\n assign(config: DropzoneConfig | any = {}, target?: any) {\n target = target || this\n\n for (const key in config) {\n if (config[key] != null\n && config[key] != undefined\n && !Array.isArray(config[key])\n && typeof config[key] === 'object'\n && !(config[key] instanceof HTMLElement)\n ) {\n target[key] = {}\n\n this.assign(config[key], target[key])\n } else {\n target[key] = config[key]\n }\n }\n }\n}\n\n/** @internal */\nexport interface DropzoneListeners {\n readonly DZ_INIT: EventEmitter<Dropzone>\n\n readonly DZ_DROP: EventEmitter<DragEvent>\n readonly DZ_DRAGSTART: EventEmitter<DragEvent>\n readonly DZ_DRAGEND: EventEmitter<DragEvent>\n readonly DZ_DRAGENTER: EventEmitter<DragEvent>\n readonly DZ_DRAGOVER: EventEmitter<DragEvent>\n readonly DZ_DRAGLEAVE: EventEmitter<DragEvent>\n readonly DZ_PASTE: EventEmitter<DragEvent>\n\n readonly DZ_RESET: EventEmitter<void>\n\n readonly DZ_ADDEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_ADDEDFILES: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_REMOVEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_THUMBNAIL: EventEmitter<[Dropzone.DropzoneFile, string]>\n\n readonly DZ_ERROR: EventEmitter<[Dropzone.DropzoneFile, string | Error]>\n readonly DZ_ERRORMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], string | Error]>\n\n readonly DZ_PROCESSING: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_PROCESSINGMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_UPLOADPROGRESS: EventEmitter<[Dropzone.DropzoneFile, number, number]>\n readonly DZ_TOTALUPLOADPROGRESS: EventEmitter<[number, number, number]>\n\n readonly DZ_SENDING: EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>\n readonly DZ_SENDINGMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n readonly DZ_SUCCESS: EventEmitter<[Dropzone.DropzoneFile, Object | string]>\n readonly DZ_SUCCESSMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_CANCELED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_CANCELEDMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_COMPLETE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_COMPLETEMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_MAXFILESEXCEEDED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_MAXFILESREACHED: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_QUEUECOMPLETE: EventEmitter<void>\n}\n\n/** @internal */\nexport const NXT_DROPZONE_LISTENERS = new InjectionToken<DropzoneListeners>('NXT_DROPZONE_LISTENERS')\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { isPlatformBrowser } from '@angular/common'\nimport { Directive, DoCheck, ElementRef, EventEmitter, HostBinding, Inject, Input, KeyValueDiffers, NgZone, OnDestroy, OnInit, Optional, Output, PLATFORM_ID } from '@angular/core'\nimport Dropzone from 'dropzone'\nimport { _DropzoneConfig, DropzoneConfig, DropzoneEvent, DropzoneEvents, DropzoneListeners, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Directive({\n selector: '[nxtDropzone]',\n exportAs: 'nxtDropzone'\n})\nexport class DropzoneDirective implements OnInit, OnDestroy, DoCheck, DropzoneListeners {\n\n private instance?: Dropzone\n\n private _disabled = false\n /** Disables / detaches Dropzone from the element */\n @Input() set disabled(val: boolean) {\n val = !!val\n if (val != this._disabled && this.instance) {\n if (val)\n this.zone.runOutsideAngular(() => {\n this.instance!.disable()\n })\n else\n this.zone.runOutsideAngular(() => {\n this.instance!.enable()\n })\n }\n this._disabled = val\n }\n get disabled() {\n return this._disabled\n }\n\n private _params = new _DropzoneConfig(this.defaults)\n /** Can be used to provide optional custom config */\n @Input('nxtDropzone') config?: DropzoneConfig\n\n private configDiff = this.differs.find(this.config || {}).create()\n private paramDiff = this.differs.find(this._params).create()\n\n @Output('init') readonly DZ_INIT = this.component?.DZ_INIT\n ?? new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = this.component?.DZ_DROP\n ?? new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = this.component?.DZ_DRAGSTART\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = this.component?.DZ_DRAGEND\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = this.component?.DZ_DRAGENTER\n ?? new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = this.component?.DZ_DRAGOVER\n ?? new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = this.component?.DZ_DRAGLEAVE\n ?? new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = this.component?.DZ_PASTE\n ?? new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = this.component?.DZ_RESET\n ?? new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = this.component?.DZ_ADDEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = this.component?.DZ_ADDEDFILES\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = this.component?.DZ_REMOVEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = this.component?.DZ_THUMBNAIL\n ?? new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = this.component?.DZ_ERROR\n ?? new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = this.component?.DZ_ERRORMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = this.component?.DZ_PROCESSING\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = this.component?.DZ_PROCESSINGMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = this.component?.DZ_UPLOADPROGRESS\n ?? new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = this.component?.DZ_TOTALUPLOADPROGRESS\n ?? new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = this.component?.DZ_SENDING\n ?? new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = this.component?.DZ_SENDINGMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n @Output('success') readonly DZ_SUCCESS = this.component?.DZ_SUCCESS\n // eslint-disable-next-line @typescript-eslint/ban-types\n ?? new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = this.component?.DZ_SUCCESSMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = this.component?.DZ_CANCELED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = this.component?.DZ_CANCELEDMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = this.component?.DZ_COMPLETE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = this.component?.DZ_COMPLETEMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = this.component?.DZ_MAXFILESEXCEEDED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = this.component?.DZ_MAXFILESREACHED\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = this.component?.DZ_QUEUECOMPLETE\n ?? new EventEmitter<void>()\n\n get dropzone() {\n return this.instance\n }\n\n /** @internal */\n @HostBinding('class.dz-single')\n get isSingle() {\n return this._params.maxFiles === 1\n }\n\n /** @internal */\n @HostBinding('class.dz-multiple')\n get isMultiple() {\n return this._params.maxFiles !== 1\n }\n\n constructor(\n private readonly zone: NgZone,\n private readonly elementRef: ElementRef<HTMLElement>,\n private readonly differs: KeyValueDiffers,\n @Inject(PLATFORM_ID)\n // eslint-disable-next-line @typescript-eslint/ban-types\n private readonly platformId: Object,\n @Optional()\n @Inject(NXT_DROPZONE_CONFIG)\n private readonly defaults?: DropzoneConfig,\n @Optional()\n @Inject(NXT_DROPZONE_LISTENERS)\n private readonly component?: DropzoneListeners\n ) { }\n\n /** @internal */\n ngOnInit(): void {\n this.initInstance()\n }\n\n /** @internal */\n ngOnDestroy(): void {\n this.destroyInstance()\n }\n\n /** @internal */\n ngDoCheck(): void {\n const changes = this.configDiff.diff(this.config || {} as any)\n\n if (changes) {\n const newParams = new _DropzoneConfig(this.defaults)\n newParams.assign(this.config)\n const d = this.paramDiff.diff(newParams as any)\n if (d) {\n this._params = newParams\n let hasChanges = false\n d.forEachItem(r => {\n if (!internalChanges.has(r.key as any) && r.currentValue !== r.previousValue)\n hasChanges = true\n })\n if (hasChanges && this.instance) {\n this.destroyInstance()\n this.initInstance()\n }\n }\n }\n }\n\n /** @internal */\n reset(cancel?: boolean) {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.removeAllFiles(cancel)\n })\n }\n }\n\n private initInstance() {\n if (!isPlatformBrowser(this.platformId)) {\n return\n }\n\n this.zone.runOutsideAngular(() => {\n this.instance = new Dropzone(this.elementRef.nativeElement, this._params)\n })\n\n if (this.disabled) {\n this.instance!.disable()\n }\n\n if (this.DZ_INIT.observed) {\n this.zone.run(() => {\n this.DZ_INIT.emit(this.instance)\n })\n }\n\n // Add auto reset handling for events\n this.instance!.on('success', () => {\n if ((this._params.autoReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.autoReset)\n }\n })\n\n this.instance!.on('error', () => {\n if ((this._params.errorReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.errorReset)\n }\n })\n\n this.instance!.on('canceled', () => {\n if ((this._params.cancelReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.cancelReset)\n }\n })\n\n // Add native Dropzone event handling\n DropzoneEvents.forEach((eventName: DropzoneEvent) => {\n this.instance!.on(eventName.toLowerCase(), (...args: any[]) => {\n args = (args.length === 1) ? args[0] : args\n\n const output = `DZ_${eventName.toUpperCase()}`\n\n const emitter = this[output as keyof DropzoneDirective] as EventEmitter<any>\n\n if (emitter.observed) {\n this.zone.run(() => {\n emitter.emit(args)\n })\n }\n })\n })\n }\n\n private destroyInstance() {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.destroy()\n })\n\n this.instance = undefined\n }\n }\n}\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ViewEncapsulation } from '@angular/core'\nimport { DropzoneDirective } from './dropzone.directive'\nimport { DropzoneConfig, DropzoneListeners, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Component({\n selector: 'nxt-dropzone',\n templateUrl: './dropzone.component.html',\n styleUrls: [\n './dropzone.component.scss',\n '../../../../node_modules/dropzone/dist/dropzone.css'\n ],\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NXT_DROPZONE_LISTENERS,\n useValue: forwardRef(() => DropzoneComponent)\n }]\n})\nexport class DropzoneComponent implements OnInit, DropzoneListeners {\n\n /** Disables / detaches Dropzone from the element */\n @Input() disabled: boolean = false\n\n /** Custom config to override the global defaults */\n @Input() config?: DropzoneConfig\n\n /** Message to show for the user on the upload area */\n @Input() message: string = 'Click or drag files to upload'\n /** Placeholder image to be shown as the upload area */\n @Input() placeholder: string = ''\n\n /** Use 'dropzone' class (use provided default styles) */\n @Input() useDropzoneClass: boolean = true\n\n @Output('init') readonly DZ_INIT = new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Output('success') readonly DZ_SUCCESS = new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = new EventEmitter<void>()\n\n @ViewChild(DropzoneDirective) directiveRef?: DropzoneDirective\n\n constructor() { }\n\n /** @internal */\n ngOnInit(): void { }\n\n /** @internal */\n getPlaceholder(): string {\n return 'url(' + encodeURI(this.placeholder) + ')'\n }\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { DropzoneComponent } from './dropzone.component'\nimport { DropzoneDirective } from './dropzone.directive'\n\n@NgModule({\n declarations: [\n DropzoneComponent,\n DropzoneDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n DropzoneComponent,\n DropzoneDirective\n ]\n})\nexport class DropzoneModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.DropzoneDirective"],"mappings":"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"}
1
+ {"version":3,"file":"nxt-dropzone-wrapper.mjs","sources":["../../../packages/dropzone-wrapper/src/lib/dropzone.interfaces.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.directive.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.html","../../../packages/dropzone-wrapper/src/lib/dropzone.module.ts","../../../packages/dropzone-wrapper/src/nxt-dropzone-wrapper.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core'\n\nexport const NXT_DROPZONE_CONFIG = new InjectionToken<DropzoneConfig>('NXT_DROPZONE_CONFIG')\n\n/** @internal */\nexport type DropzoneEvent = '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'\n\n/** @internal */\nexport const DropzoneEvents: DropzoneEvent[] = [\n 'init',\n\n 'drop',\n 'dragStart',\n 'dragEnd',\n 'dragEnter',\n 'dragOver',\n 'dragLeave',\n 'paste',\n\n 'reset',\n\n 'addedFile',\n 'addedFiles',\n 'removedFile',\n 'thumbnail',\n\n 'error',\n 'errorMultiple',\n\n 'processing',\n 'processingMultiple',\n\n 'uploadProgress',\n 'totalUploadProgress',\n\n 'sending',\n 'sendingMultiple',\n\n 'success',\n 'successMultiple',\n\n 'canceled',\n 'canceledMultiple',\n\n 'complete',\n 'completeMultiple',\n\n 'maxFilesExceeded',\n 'maxFilesReached',\n\n 'queueComplete'\n]\n\nexport interface DropzoneConfig extends Dropzone.DropzoneOptions {\n /**\n * Time in ms until input resets after a successful upload\n */\n autoReset?: number\n /**\n * Time in ms until input resets after upload error\n */\n errorReset?: number\n /**\n * Time in ms until input resets after cancelled upload\n */\n cancelReset?: number\n}\n\n/** @internal */\nexport const internalChanges = new Set([\n 'autoReset',\n 'errorReset',\n 'cancelReset'\n])\n\n/** @internal */\nexport class _DropzoneConfig implements DropzoneConfig {\n autoReset?: number\n errorReset?: number\n cancelReset?: number\n\n maxFiles?: number\n\n constructor(config: DropzoneConfig = {}) {\n this.assign(config)\n }\n\n assign(config: DropzoneConfig | any = {}, target?: any) {\n target = target || this\n\n for (const key in config) {\n if (config[key] != null\n && config[key] != undefined\n && !Array.isArray(config[key])\n && typeof config[key] === 'object'\n && !(config[key] instanceof HTMLElement)\n ) {\n target[key] = {}\n\n this.assign(config[key], target[key])\n } else {\n target[key] = config[key]\n }\n }\n }\n}\n\n/** @internal */\nexport interface DropzoneListeners {\n readonly DZ_INIT: EventEmitter<Dropzone>\n\n readonly DZ_DROP: EventEmitter<DragEvent>\n readonly DZ_DRAGSTART: EventEmitter<DragEvent>\n readonly DZ_DRAGEND: EventEmitter<DragEvent>\n readonly DZ_DRAGENTER: EventEmitter<DragEvent>\n readonly DZ_DRAGOVER: EventEmitter<DragEvent>\n readonly DZ_DRAGLEAVE: EventEmitter<DragEvent>\n readonly DZ_PASTE: EventEmitter<DragEvent>\n\n readonly DZ_RESET: EventEmitter<void>\n\n readonly DZ_ADDEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_ADDEDFILES: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_REMOVEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_THUMBNAIL: EventEmitter<[Dropzone.DropzoneFile, string]>\n\n readonly DZ_ERROR: EventEmitter<[Dropzone.DropzoneFile, string | Error]>\n readonly DZ_ERRORMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], string | Error]>\n\n readonly DZ_PROCESSING: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_PROCESSINGMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_UPLOADPROGRESS: EventEmitter<[Dropzone.DropzoneFile, number, number]>\n readonly DZ_TOTALUPLOADPROGRESS: EventEmitter<[number, number, number]>\n\n readonly DZ_SENDING: EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>\n readonly DZ_SENDINGMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n readonly DZ_SUCCESS: EventEmitter<[Dropzone.DropzoneFile, Object | string]>\n readonly DZ_SUCCESSMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_CANCELED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_CANCELEDMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_COMPLETE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_COMPLETEMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_MAXFILESEXCEEDED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_MAXFILESREACHED: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_QUEUECOMPLETE: EventEmitter<void>\n}\n\n/** @internal */\nexport const NXT_DROPZONE_LISTENERS = new InjectionToken<DropzoneListeners>('NXT_DROPZONE_LISTENERS')\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { isPlatformBrowser } from '@angular/common'\nimport { Directive, DoCheck, ElementRef, EventEmitter, HostBinding, Inject, Input, KeyValueDiffers, NgZone, OnDestroy, OnInit, Optional, Output, PLATFORM_ID } from '@angular/core'\nimport Dropzone from 'dropzone'\nimport { DropzoneConfig, DropzoneEvent, DropzoneEvents, DropzoneListeners, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS, _DropzoneConfig } from './dropzone.interfaces'\n\n@Directive({\n selector: '[nxtDropzone]',\n exportAs: 'nxtDropzone'\n})\nexport class DropzoneDirective implements OnInit, OnDestroy, DoCheck, DropzoneListeners {\n\n private instance?: Dropzone\n\n private _disabled = false\n /** Disables / detaches Dropzone from the element */\n @Input() set disabled(val: boolean) {\n val = !!val\n if (val != this._disabled && this.instance) {\n if (val)\n this.zone.runOutsideAngular(() => {\n this.instance!.disable()\n })\n else\n this.zone.runOutsideAngular(() => {\n this.instance!.enable()\n })\n }\n this._disabled = val\n }\n get disabled() {\n return this._disabled\n }\n\n private _params = this.defaults\n ? new _DropzoneConfig(this.defaults)\n : undefined\n /** Can be used to provide optional custom config */\n @Input('nxtDropzone') config?: DropzoneConfig\n\n private configDiff = this.differs.find(this.config || {}).create()\n private paramDiff = this.differs.find(this._params || {}).create()\n\n @Output('init') readonly DZ_INIT = this.component?.DZ_INIT\n ?? new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = this.component?.DZ_DROP\n ?? new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = this.component?.DZ_DRAGSTART\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = this.component?.DZ_DRAGEND\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = this.component?.DZ_DRAGENTER\n ?? new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = this.component?.DZ_DRAGOVER\n ?? new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = this.component?.DZ_DRAGLEAVE\n ?? new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = this.component?.DZ_PASTE\n ?? new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = this.component?.DZ_RESET\n ?? new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = this.component?.DZ_ADDEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = this.component?.DZ_ADDEDFILES\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = this.component?.DZ_REMOVEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = this.component?.DZ_THUMBNAIL\n ?? new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = this.component?.DZ_ERROR\n ?? new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = this.component?.DZ_ERRORMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = this.component?.DZ_PROCESSING\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = this.component?.DZ_PROCESSINGMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = this.component?.DZ_UPLOADPROGRESS\n ?? new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = this.component?.DZ_TOTALUPLOADPROGRESS\n ?? new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = this.component?.DZ_SENDING\n ?? new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = this.component?.DZ_SENDINGMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n @Output('success') readonly DZ_SUCCESS = this.component?.DZ_SUCCESS\n // eslint-disable-next-line @typescript-eslint/ban-types\n ?? new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = this.component?.DZ_SUCCESSMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = this.component?.DZ_CANCELED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = this.component?.DZ_CANCELEDMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = this.component?.DZ_COMPLETE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = this.component?.DZ_COMPLETEMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = this.component?.DZ_MAXFILESEXCEEDED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = this.component?.DZ_MAXFILESREACHED\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = this.component?.DZ_QUEUECOMPLETE\n ?? new EventEmitter<void>()\n\n get dropzone() {\n return this.instance\n }\n\n /** @internal */\n @HostBinding('class.dz-single')\n get isSingle() {\n return this._params?.maxFiles === 1\n }\n\n /** @internal */\n @HostBinding('class.dz-multiple')\n get isMultiple() {\n return this._params?.maxFiles !== 1\n }\n\n constructor(\n private readonly zone: NgZone,\n private readonly elementRef: ElementRef<HTMLElement>,\n private readonly differs: KeyValueDiffers,\n @Inject(PLATFORM_ID)\n // eslint-disable-next-line @typescript-eslint/ban-types\n private readonly platformId: Object,\n @Optional()\n @Inject(NXT_DROPZONE_CONFIG)\n private readonly defaults?: DropzoneConfig,\n @Optional()\n @Inject(NXT_DROPZONE_LISTENERS)\n private readonly component?: DropzoneListeners\n ) { }\n\n /** @internal */\n ngOnInit(): void {\n this.initInstance()\n }\n\n /** @internal */\n ngOnDestroy(): void {\n this.destroyInstance()\n }\n\n /** @internal */\n ngDoCheck(): void {\n const changes = this.configDiff.diff(this.config || {} as any)\n\n if (changes) {\n let newParams = this.defaults\n ? new _DropzoneConfig(this.defaults)\n : undefined\n if (newParams && this.config)\n newParams.assign(this.config)\n else if (this.config)\n newParams = new _DropzoneConfig(this.config)\n const d = this.paramDiff.diff(newParams || {} as any)\n if (d) {\n this._params = newParams\n let hasChanges = false\n d.forEachItem(r => {\n if (!internalChanges.has(r.key as any) && r.currentValue !== r.previousValue)\n hasChanges = true\n })\n if (hasChanges) {\n this.destroyInstance()\n this.initInstance()\n }\n }\n }\n }\n\n /** @internal */\n reset(cancel?: boolean) {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.removeAllFiles(cancel)\n })\n }\n }\n\n private initInstance() {\n if (!isPlatformBrowser(this.platformId) || !this._params) {\n return\n }\n\n this.zone.runOutsideAngular(() => {\n this.instance = new Dropzone(this.elementRef.nativeElement, this._params)\n })\n\n if (this.disabled) {\n this.instance!.disable()\n }\n\n if (this.DZ_INIT.observed) {\n this.zone.run(() => {\n this.DZ_INIT.emit(this.instance)\n })\n }\n\n // Add auto reset handling for events\n this.instance!.on('success', () => {\n if ((this._params?.autoReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.autoReset)\n }\n })\n\n this.instance!.on('error', () => {\n if ((this._params?.errorReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.errorReset)\n }\n })\n\n this.instance!.on('canceled', () => {\n if ((this._params?.cancelReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.cancelReset)\n }\n })\n\n // Add native Dropzone event handling\n DropzoneEvents.forEach((eventName: DropzoneEvent) => {\n this.instance!.on(eventName.toLowerCase(), (...args: any[]) => {\n args = (args.length === 1) ? args[0] : args\n\n const output = `DZ_${eventName.toUpperCase()}`\n\n const emitter = this[output as keyof DropzoneDirective] as EventEmitter<any>\n\n if (emitter.observed) {\n this.zone.run(() => {\n emitter.emit(args)\n })\n }\n })\n })\n }\n\n private destroyInstance() {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.destroy()\n })\n\n this.instance = undefined\n }\n }\n}\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ViewEncapsulation } from '@angular/core'\nimport { DropzoneDirective } from './dropzone.directive'\nimport { DropzoneConfig, DropzoneListeners, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Component({\n selector: 'nxt-dropzone',\n templateUrl: './dropzone.component.html',\n styleUrls: [\n './dropzone.component.scss',\n '../../../../node_modules/dropzone/dist/dropzone.css'\n ],\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NXT_DROPZONE_LISTENERS,\n useValue: forwardRef(() => DropzoneComponent)\n }]\n})\nexport class DropzoneComponent implements OnInit, DropzoneListeners {\n\n /** Disables / detaches Dropzone from the element */\n @Input() disabled: boolean = false\n\n /** Custom config to override the global defaults */\n @Input() config?: DropzoneConfig\n\n /** Message to show for the user on the upload area */\n @Input() message: string = 'Click or drag files to upload'\n /** Placeholder image to be shown as the upload area */\n @Input() placeholder: string = ''\n\n /** Use 'dropzone' class (use provided default styles) */\n @Input() useDropzoneClass: boolean = true\n\n @Output('init') readonly DZ_INIT = new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Output('success') readonly DZ_SUCCESS = new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = new EventEmitter<void>()\n\n @ViewChild(DropzoneDirective) directiveRef?: DropzoneDirective\n\n constructor() { }\n\n /** @internal */\n ngOnInit(): void { }\n\n /** @internal */\n getPlaceholder(): string {\n return 'url(' + encodeURI(this.placeholder) + ')'\n }\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { DropzoneComponent } from './dropzone.component'\nimport { DropzoneDirective } from './dropzone.directive'\n\n@NgModule({\n declarations: [\n DropzoneComponent,\n DropzoneDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n DropzoneComponent,\n DropzoneDirective\n ]\n})\nexport class DropzoneModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.DropzoneDirective"],"mappings":"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"}
@@ -94,11 +94,11 @@ class DropzoneDirective {
94
94
  }
95
95
  /** @internal */
96
96
  get isSingle() {
97
- return this._params.maxFiles === 1;
97
+ return this._params?.maxFiles === 1;
98
98
  }
99
99
  /** @internal */
100
100
  get isMultiple() {
101
- return this._params.maxFiles !== 1;
101
+ return this._params?.maxFiles !== 1;
102
102
  }
103
103
  constructor(zone, elementRef, differs, platformId, defaults, component) {
104
104
  this.zone = zone;
@@ -108,9 +108,11 @@ class DropzoneDirective {
108
108
  this.defaults = defaults;
109
109
  this.component = component;
110
110
  this._disabled = false;
111
- this._params = new _DropzoneConfig(this.defaults);
111
+ this._params = this.defaults
112
+ ? new _DropzoneConfig(this.defaults)
113
+ : undefined;
112
114
  this.configDiff = this.differs.find(this.config || {}).create();
113
- this.paramDiff = this.differs.find(this._params).create();
115
+ this.paramDiff = this.differs.find(this._params || {}).create();
114
116
  this.DZ_INIT = this.component?.DZ_INIT
115
117
  ?? new EventEmitter();
116
118
  this.DZ_DROP = this.component?.DZ_DROP
@@ -185,9 +187,14 @@ class DropzoneDirective {
185
187
  ngDoCheck() {
186
188
  const changes = this.configDiff.diff(this.config || {});
187
189
  if (changes) {
188
- const newParams = new _DropzoneConfig(this.defaults);
189
- newParams.assign(this.config);
190
- const d = this.paramDiff.diff(newParams);
190
+ let newParams = this.defaults
191
+ ? new _DropzoneConfig(this.defaults)
192
+ : undefined;
193
+ if (newParams && this.config)
194
+ newParams.assign(this.config);
195
+ else if (this.config)
196
+ newParams = new _DropzoneConfig(this.config);
197
+ const d = this.paramDiff.diff(newParams || {});
191
198
  if (d) {
192
199
  this._params = newParams;
193
200
  let hasChanges = false;
@@ -195,7 +202,7 @@ class DropzoneDirective {
195
202
  if (!internalChanges.has(r.key) && r.currentValue !== r.previousValue)
196
203
  hasChanges = true;
197
204
  });
198
- if (hasChanges && this.instance) {
205
+ if (hasChanges) {
199
206
  this.destroyInstance();
200
207
  this.initInstance();
201
208
  }
@@ -211,7 +218,7 @@ class DropzoneDirective {
211
218
  }
212
219
  }
213
220
  initInstance() {
214
- if (!isPlatformBrowser(this.platformId)) {
221
+ if (!isPlatformBrowser(this.platformId) || !this._params) {
215
222
  return;
216
223
  }
217
224
  this.zone.runOutsideAngular(() => {
@@ -227,18 +234,18 @@ class DropzoneDirective {
227
234
  }
228
235
  // Add auto reset handling for events
229
236
  this.instance.on('success', () => {
230
- if ((this._params.autoReset ?? -1) >= 0) {
231
- setTimeout(() => this.reset(), this._params.autoReset);
237
+ if ((this._params?.autoReset ?? -1) >= 0) {
238
+ setTimeout(() => this.reset(), this._params?.autoReset);
232
239
  }
233
240
  });
234
241
  this.instance.on('error', () => {
235
- if ((this._params.errorReset ?? -1) >= 0) {
236
- setTimeout(() => this.reset(), this._params.errorReset);
242
+ if ((this._params?.errorReset ?? -1) >= 0) {
243
+ setTimeout(() => this.reset(), this._params?.errorReset);
237
244
  }
238
245
  });
239
246
  this.instance.on('canceled', () => {
240
- if ((this._params.cancelReset ?? -1) >= 0) {
241
- setTimeout(() => this.reset(), this._params.cancelReset);
247
+ if ((this._params?.cancelReset ?? -1) >= 0) {
248
+ setTimeout(() => this.reset(), this._params?.cancelReset);
242
249
  }
243
250
  });
244
251
  // Add native Dropzone event handling
@@ -1 +1 @@
1
- {"version":3,"file":"nxt-dropzone-wrapper.mjs","sources":["../../../packages/dropzone-wrapper/src/lib/dropzone.interfaces.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.directive.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.html","../../../packages/dropzone-wrapper/src/lib/dropzone.module.ts","../../../packages/dropzone-wrapper/src/nxt-dropzone-wrapper.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core'\n\nexport const NXT_DROPZONE_CONFIG = new InjectionToken<DropzoneConfig>('NXT_DROPZONE_CONFIG')\n\n/** @internal */\nexport type DropzoneEvent = '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'\n\n/** @internal */\nexport const DropzoneEvents: DropzoneEvent[] = [\n 'init',\n\n 'drop',\n 'dragStart',\n 'dragEnd',\n 'dragEnter',\n 'dragOver',\n 'dragLeave',\n 'paste',\n\n 'reset',\n\n 'addedFile',\n 'addedFiles',\n 'removedFile',\n 'thumbnail',\n\n 'error',\n 'errorMultiple',\n\n 'processing',\n 'processingMultiple',\n\n 'uploadProgress',\n 'totalUploadProgress',\n\n 'sending',\n 'sendingMultiple',\n\n 'success',\n 'successMultiple',\n\n 'canceled',\n 'canceledMultiple',\n\n 'complete',\n 'completeMultiple',\n\n 'maxFilesExceeded',\n 'maxFilesReached',\n\n 'queueComplete'\n]\n\nexport interface DropzoneConfig extends Dropzone.DropzoneOptions {\n /**\n * Time in ms until input resets after a successful upload\n */\n autoReset?: number\n /**\n * Time in ms until input resets after upload error\n */\n errorReset?: number\n /**\n * Time in ms until input resets after cancelled upload\n */\n cancelReset?: number\n}\n\n/** @internal */\nexport const internalChanges = new Set([\n 'autoReset',\n 'errorReset',\n 'cancelReset'\n])\n\n/** @internal */\nexport class _DropzoneConfig implements DropzoneConfig {\n autoReset?: number\n errorReset?: number\n cancelReset?: number\n\n maxFiles?: number\n\n constructor(config: DropzoneConfig = {}) {\n this.assign(config)\n }\n\n assign(config: DropzoneConfig | any = {}, target?: any) {\n target = target || this\n\n for (const key in config) {\n if (config[key] != null\n && config[key] != undefined\n && !Array.isArray(config[key])\n && typeof config[key] === 'object'\n && !(config[key] instanceof HTMLElement)\n ) {\n target[key] = {}\n\n this.assign(config[key], target[key])\n } else {\n target[key] = config[key]\n }\n }\n }\n}\n\n/** @internal */\nexport interface DropzoneListeners {\n readonly DZ_INIT: EventEmitter<Dropzone>\n\n readonly DZ_DROP: EventEmitter<DragEvent>\n readonly DZ_DRAGSTART: EventEmitter<DragEvent>\n readonly DZ_DRAGEND: EventEmitter<DragEvent>\n readonly DZ_DRAGENTER: EventEmitter<DragEvent>\n readonly DZ_DRAGOVER: EventEmitter<DragEvent>\n readonly DZ_DRAGLEAVE: EventEmitter<DragEvent>\n readonly DZ_PASTE: EventEmitter<DragEvent>\n\n readonly DZ_RESET: EventEmitter<void>\n\n readonly DZ_ADDEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_ADDEDFILES: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_REMOVEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_THUMBNAIL: EventEmitter<[Dropzone.DropzoneFile, string]>\n\n readonly DZ_ERROR: EventEmitter<[Dropzone.DropzoneFile, string | Error]>\n readonly DZ_ERRORMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], string | Error]>\n\n readonly DZ_PROCESSING: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_PROCESSINGMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_UPLOADPROGRESS: EventEmitter<[Dropzone.DropzoneFile, number, number]>\n readonly DZ_TOTALUPLOADPROGRESS: EventEmitter<[number, number, number]>\n\n readonly DZ_SENDING: EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>\n readonly DZ_SENDINGMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n readonly DZ_SUCCESS: EventEmitter<[Dropzone.DropzoneFile, Object | string]>\n readonly DZ_SUCCESSMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_CANCELED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_CANCELEDMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_COMPLETE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_COMPLETEMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_MAXFILESEXCEEDED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_MAXFILESREACHED: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_QUEUECOMPLETE: EventEmitter<void>\n}\n\n/** @internal */\nexport const NXT_DROPZONE_LISTENERS = new InjectionToken<DropzoneListeners>('NXT_DROPZONE_LISTENERS')\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { isPlatformBrowser } from '@angular/common'\nimport { Directive, DoCheck, ElementRef, EventEmitter, HostBinding, Inject, Input, KeyValueDiffers, NgZone, OnDestroy, OnInit, Optional, Output, PLATFORM_ID } from '@angular/core'\nimport Dropzone from 'dropzone'\nimport { _DropzoneConfig, DropzoneConfig, DropzoneEvent, DropzoneEvents, DropzoneListeners, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Directive({\n selector: '[nxtDropzone]',\n exportAs: 'nxtDropzone'\n})\nexport class DropzoneDirective implements OnInit, OnDestroy, DoCheck, DropzoneListeners {\n\n private instance?: Dropzone\n\n private _disabled = false\n /** Disables / detaches Dropzone from the element */\n @Input() set disabled(val: boolean) {\n val = !!val\n if (val != this._disabled && this.instance) {\n if (val)\n this.zone.runOutsideAngular(() => {\n this.instance!.disable()\n })\n else\n this.zone.runOutsideAngular(() => {\n this.instance!.enable()\n })\n }\n this._disabled = val\n }\n get disabled() {\n return this._disabled\n }\n\n private _params = new _DropzoneConfig(this.defaults)\n /** Can be used to provide optional custom config */\n @Input('nxtDropzone') config?: DropzoneConfig\n\n private configDiff = this.differs.find(this.config || {}).create()\n private paramDiff = this.differs.find(this._params).create()\n\n @Output('init') readonly DZ_INIT = this.component?.DZ_INIT\n ?? new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = this.component?.DZ_DROP\n ?? new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = this.component?.DZ_DRAGSTART\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = this.component?.DZ_DRAGEND\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = this.component?.DZ_DRAGENTER\n ?? new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = this.component?.DZ_DRAGOVER\n ?? new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = this.component?.DZ_DRAGLEAVE\n ?? new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = this.component?.DZ_PASTE\n ?? new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = this.component?.DZ_RESET\n ?? new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = this.component?.DZ_ADDEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = this.component?.DZ_ADDEDFILES\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = this.component?.DZ_REMOVEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = this.component?.DZ_THUMBNAIL\n ?? new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = this.component?.DZ_ERROR\n ?? new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = this.component?.DZ_ERRORMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = this.component?.DZ_PROCESSING\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = this.component?.DZ_PROCESSINGMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = this.component?.DZ_UPLOADPROGRESS\n ?? new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = this.component?.DZ_TOTALUPLOADPROGRESS\n ?? new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = this.component?.DZ_SENDING\n ?? new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = this.component?.DZ_SENDINGMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n @Output('success') readonly DZ_SUCCESS = this.component?.DZ_SUCCESS\n // eslint-disable-next-line @typescript-eslint/ban-types\n ?? new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = this.component?.DZ_SUCCESSMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = this.component?.DZ_CANCELED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = this.component?.DZ_CANCELEDMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = this.component?.DZ_COMPLETE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = this.component?.DZ_COMPLETEMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = this.component?.DZ_MAXFILESEXCEEDED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = this.component?.DZ_MAXFILESREACHED\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = this.component?.DZ_QUEUECOMPLETE\n ?? new EventEmitter<void>()\n\n get dropzone() {\n return this.instance\n }\n\n /** @internal */\n @HostBinding('class.dz-single')\n get isSingle() {\n return this._params.maxFiles === 1\n }\n\n /** @internal */\n @HostBinding('class.dz-multiple')\n get isMultiple() {\n return this._params.maxFiles !== 1\n }\n\n constructor(\n private readonly zone: NgZone,\n private readonly elementRef: ElementRef<HTMLElement>,\n private readonly differs: KeyValueDiffers,\n @Inject(PLATFORM_ID)\n // eslint-disable-next-line @typescript-eslint/ban-types\n private readonly platformId: Object,\n @Optional()\n @Inject(NXT_DROPZONE_CONFIG)\n private readonly defaults?: DropzoneConfig,\n @Optional()\n @Inject(NXT_DROPZONE_LISTENERS)\n private readonly component?: DropzoneListeners\n ) { }\n\n /** @internal */\n ngOnInit(): void {\n this.initInstance()\n }\n\n /** @internal */\n ngOnDestroy(): void {\n this.destroyInstance()\n }\n\n /** @internal */\n ngDoCheck(): void {\n const changes = this.configDiff.diff(this.config || {} as any)\n\n if (changes) {\n const newParams = new _DropzoneConfig(this.defaults)\n newParams.assign(this.config)\n const d = this.paramDiff.diff(newParams as any)\n if (d) {\n this._params = newParams\n let hasChanges = false\n d.forEachItem(r => {\n if (!internalChanges.has(r.key as any) && r.currentValue !== r.previousValue)\n hasChanges = true\n })\n if (hasChanges && this.instance) {\n this.destroyInstance()\n this.initInstance()\n }\n }\n }\n }\n\n /** @internal */\n reset(cancel?: boolean) {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.removeAllFiles(cancel)\n })\n }\n }\n\n private initInstance() {\n if (!isPlatformBrowser(this.platformId)) {\n return\n }\n\n this.zone.runOutsideAngular(() => {\n this.instance = new Dropzone(this.elementRef.nativeElement, this._params)\n })\n\n if (this.disabled) {\n this.instance!.disable()\n }\n\n if (this.DZ_INIT.observed) {\n this.zone.run(() => {\n this.DZ_INIT.emit(this.instance)\n })\n }\n\n // Add auto reset handling for events\n this.instance!.on('success', () => {\n if ((this._params.autoReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.autoReset)\n }\n })\n\n this.instance!.on('error', () => {\n if ((this._params.errorReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.errorReset)\n }\n })\n\n this.instance!.on('canceled', () => {\n if ((this._params.cancelReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params.cancelReset)\n }\n })\n\n // Add native Dropzone event handling\n DropzoneEvents.forEach((eventName: DropzoneEvent) => {\n this.instance!.on(eventName.toLowerCase(), (...args: any[]) => {\n args = (args.length === 1) ? args[0] : args\n\n const output = `DZ_${eventName.toUpperCase()}`\n\n const emitter = this[output as keyof DropzoneDirective] as EventEmitter<any>\n\n if (emitter.observed) {\n this.zone.run(() => {\n emitter.emit(args)\n })\n }\n })\n })\n }\n\n private destroyInstance() {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.destroy()\n })\n\n this.instance = undefined\n }\n }\n}\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ViewEncapsulation } from '@angular/core'\nimport { DropzoneDirective } from './dropzone.directive'\nimport { DropzoneConfig, DropzoneListeners, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Component({\n selector: 'nxt-dropzone',\n templateUrl: './dropzone.component.html',\n styleUrls: [\n './dropzone.component.scss',\n '../../../../node_modules/dropzone/dist/dropzone.css'\n ],\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NXT_DROPZONE_LISTENERS,\n useValue: forwardRef(() => DropzoneComponent)\n }]\n})\nexport class DropzoneComponent implements OnInit, DropzoneListeners {\n\n /** Disables / detaches Dropzone from the element */\n @Input() disabled: boolean = false\n\n /** Custom config to override the global defaults */\n @Input() config?: DropzoneConfig\n\n /** Message to show for the user on the upload area */\n @Input() message: string = 'Click or drag files to upload'\n /** Placeholder image to be shown as the upload area */\n @Input() placeholder: string = ''\n\n /** Use 'dropzone' class (use provided default styles) */\n @Input() useDropzoneClass: boolean = true\n\n @Output('init') readonly DZ_INIT = new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Output('success') readonly DZ_SUCCESS = new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = new EventEmitter<void>()\n\n @ViewChild(DropzoneDirective) directiveRef?: DropzoneDirective\n\n constructor() { }\n\n /** @internal */\n ngOnInit(): void { }\n\n /** @internal */\n getPlaceholder(): string {\n return 'url(' + encodeURI(this.placeholder) + ')'\n }\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { DropzoneComponent } from './dropzone.component'\nimport { DropzoneDirective } from './dropzone.directive'\n\n@NgModule({\n declarations: [\n DropzoneComponent,\n DropzoneDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n DropzoneComponent,\n DropzoneDirective\n ]\n})\nexport class DropzoneModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.DropzoneDirective"],"mappings":"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"}
1
+ {"version":3,"file":"nxt-dropzone-wrapper.mjs","sources":["../../../packages/dropzone-wrapper/src/lib/dropzone.interfaces.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.directive.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.ts","../../../packages/dropzone-wrapper/src/lib/dropzone.component.html","../../../packages/dropzone-wrapper/src/lib/dropzone.module.ts","../../../packages/dropzone-wrapper/src/nxt-dropzone-wrapper.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core'\n\nexport const NXT_DROPZONE_CONFIG = new InjectionToken<DropzoneConfig>('NXT_DROPZONE_CONFIG')\n\n/** @internal */\nexport type DropzoneEvent = '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'\n\n/** @internal */\nexport const DropzoneEvents: DropzoneEvent[] = [\n 'init',\n\n 'drop',\n 'dragStart',\n 'dragEnd',\n 'dragEnter',\n 'dragOver',\n 'dragLeave',\n 'paste',\n\n 'reset',\n\n 'addedFile',\n 'addedFiles',\n 'removedFile',\n 'thumbnail',\n\n 'error',\n 'errorMultiple',\n\n 'processing',\n 'processingMultiple',\n\n 'uploadProgress',\n 'totalUploadProgress',\n\n 'sending',\n 'sendingMultiple',\n\n 'success',\n 'successMultiple',\n\n 'canceled',\n 'canceledMultiple',\n\n 'complete',\n 'completeMultiple',\n\n 'maxFilesExceeded',\n 'maxFilesReached',\n\n 'queueComplete'\n]\n\nexport interface DropzoneConfig extends Dropzone.DropzoneOptions {\n /**\n * Time in ms until input resets after a successful upload\n */\n autoReset?: number\n /**\n * Time in ms until input resets after upload error\n */\n errorReset?: number\n /**\n * Time in ms until input resets after cancelled upload\n */\n cancelReset?: number\n}\n\n/** @internal */\nexport const internalChanges = new Set([\n 'autoReset',\n 'errorReset',\n 'cancelReset'\n])\n\n/** @internal */\nexport class _DropzoneConfig implements DropzoneConfig {\n autoReset?: number\n errorReset?: number\n cancelReset?: number\n\n maxFiles?: number\n\n constructor(config: DropzoneConfig = {}) {\n this.assign(config)\n }\n\n assign(config: DropzoneConfig | any = {}, target?: any) {\n target = target || this\n\n for (const key in config) {\n if (config[key] != null\n && config[key] != undefined\n && !Array.isArray(config[key])\n && typeof config[key] === 'object'\n && !(config[key] instanceof HTMLElement)\n ) {\n target[key] = {}\n\n this.assign(config[key], target[key])\n } else {\n target[key] = config[key]\n }\n }\n }\n}\n\n/** @internal */\nexport interface DropzoneListeners {\n readonly DZ_INIT: EventEmitter<Dropzone>\n\n readonly DZ_DROP: EventEmitter<DragEvent>\n readonly DZ_DRAGSTART: EventEmitter<DragEvent>\n readonly DZ_DRAGEND: EventEmitter<DragEvent>\n readonly DZ_DRAGENTER: EventEmitter<DragEvent>\n readonly DZ_DRAGOVER: EventEmitter<DragEvent>\n readonly DZ_DRAGLEAVE: EventEmitter<DragEvent>\n readonly DZ_PASTE: EventEmitter<DragEvent>\n\n readonly DZ_RESET: EventEmitter<void>\n\n readonly DZ_ADDEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_ADDEDFILES: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_REMOVEDFILE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_THUMBNAIL: EventEmitter<[Dropzone.DropzoneFile, string]>\n\n readonly DZ_ERROR: EventEmitter<[Dropzone.DropzoneFile, string | Error]>\n readonly DZ_ERRORMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], string | Error]>\n\n readonly DZ_PROCESSING: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_PROCESSINGMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_UPLOADPROGRESS: EventEmitter<[Dropzone.DropzoneFile, number, number]>\n readonly DZ_TOTALUPLOADPROGRESS: EventEmitter<[number, number, number]>\n\n readonly DZ_SENDING: EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>\n readonly DZ_SENDINGMULTIPLE: EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n readonly DZ_SUCCESS: EventEmitter<[Dropzone.DropzoneFile, Object | string]>\n readonly DZ_SUCCESSMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_CANCELED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_CANCELEDMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_COMPLETE: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_COMPLETEMULTIPLE: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_MAXFILESEXCEEDED: EventEmitter<Dropzone.DropzoneFile>\n readonly DZ_MAXFILESREACHED: EventEmitter<Dropzone.DropzoneFile[]>\n\n readonly DZ_QUEUECOMPLETE: EventEmitter<void>\n}\n\n/** @internal */\nexport const NXT_DROPZONE_LISTENERS = new InjectionToken<DropzoneListeners>('NXT_DROPZONE_LISTENERS')\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { isPlatformBrowser } from '@angular/common'\nimport { Directive, DoCheck, ElementRef, EventEmitter, HostBinding, Inject, Input, KeyValueDiffers, NgZone, OnDestroy, OnInit, Optional, Output, PLATFORM_ID } from '@angular/core'\nimport Dropzone from 'dropzone'\nimport { DropzoneConfig, DropzoneEvent, DropzoneEvents, DropzoneListeners, internalChanges, NXT_DROPZONE_CONFIG, NXT_DROPZONE_LISTENERS, _DropzoneConfig } from './dropzone.interfaces'\n\n@Directive({\n selector: '[nxtDropzone]',\n exportAs: 'nxtDropzone'\n})\nexport class DropzoneDirective implements OnInit, OnDestroy, DoCheck, DropzoneListeners {\n\n private instance?: Dropzone\n\n private _disabled = false\n /** Disables / detaches Dropzone from the element */\n @Input() set disabled(val: boolean) {\n val = !!val\n if (val != this._disabled && this.instance) {\n if (val)\n this.zone.runOutsideAngular(() => {\n this.instance!.disable()\n })\n else\n this.zone.runOutsideAngular(() => {\n this.instance!.enable()\n })\n }\n this._disabled = val\n }\n get disabled() {\n return this._disabled\n }\n\n private _params = this.defaults\n ? new _DropzoneConfig(this.defaults)\n : undefined\n /** Can be used to provide optional custom config */\n @Input('nxtDropzone') config?: DropzoneConfig\n\n private configDiff = this.differs.find(this.config || {}).create()\n private paramDiff = this.differs.find(this._params || {}).create()\n\n @Output('init') readonly DZ_INIT = this.component?.DZ_INIT\n ?? new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = this.component?.DZ_DROP\n ?? new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = this.component?.DZ_DRAGSTART\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = this.component?.DZ_DRAGEND\n ?? new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = this.component?.DZ_DRAGENTER\n ?? new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = this.component?.DZ_DRAGOVER\n ?? new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = this.component?.DZ_DRAGLEAVE\n ?? new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = this.component?.DZ_PASTE\n ?? new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = this.component?.DZ_RESET\n ?? new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = this.component?.DZ_ADDEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = this.component?.DZ_ADDEDFILES\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = this.component?.DZ_REMOVEDFILE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = this.component?.DZ_THUMBNAIL\n ?? new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = this.component?.DZ_ERROR\n ?? new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = this.component?.DZ_ERRORMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = this.component?.DZ_PROCESSING\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = this.component?.DZ_PROCESSINGMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = this.component?.DZ_UPLOADPROGRESS\n ?? new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = this.component?.DZ_TOTALUPLOADPROGRESS\n ?? new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = this.component?.DZ_SENDING\n ?? new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = this.component?.DZ_SENDINGMULTIPLE\n ?? new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n @Output('success') readonly DZ_SUCCESS = this.component?.DZ_SUCCESS\n // eslint-disable-next-line @typescript-eslint/ban-types\n ?? new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = this.component?.DZ_SUCCESSMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = this.component?.DZ_CANCELED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = this.component?.DZ_CANCELEDMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = this.component?.DZ_COMPLETE\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = this.component?.DZ_COMPLETEMULTIPLE\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = this.component?.DZ_MAXFILESEXCEEDED\n ?? new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = this.component?.DZ_MAXFILESREACHED\n ?? new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = this.component?.DZ_QUEUECOMPLETE\n ?? new EventEmitter<void>()\n\n get dropzone() {\n return this.instance\n }\n\n /** @internal */\n @HostBinding('class.dz-single')\n get isSingle() {\n return this._params?.maxFiles === 1\n }\n\n /** @internal */\n @HostBinding('class.dz-multiple')\n get isMultiple() {\n return this._params?.maxFiles !== 1\n }\n\n constructor(\n private readonly zone: NgZone,\n private readonly elementRef: ElementRef<HTMLElement>,\n private readonly differs: KeyValueDiffers,\n @Inject(PLATFORM_ID)\n // eslint-disable-next-line @typescript-eslint/ban-types\n private readonly platformId: Object,\n @Optional()\n @Inject(NXT_DROPZONE_CONFIG)\n private readonly defaults?: DropzoneConfig,\n @Optional()\n @Inject(NXT_DROPZONE_LISTENERS)\n private readonly component?: DropzoneListeners\n ) { }\n\n /** @internal */\n ngOnInit(): void {\n this.initInstance()\n }\n\n /** @internal */\n ngOnDestroy(): void {\n this.destroyInstance()\n }\n\n /** @internal */\n ngDoCheck(): void {\n const changes = this.configDiff.diff(this.config || {} as any)\n\n if (changes) {\n let newParams = this.defaults\n ? new _DropzoneConfig(this.defaults)\n : undefined\n if (newParams && this.config)\n newParams.assign(this.config)\n else if (this.config)\n newParams = new _DropzoneConfig(this.config)\n const d = this.paramDiff.diff(newParams || {} as any)\n if (d) {\n this._params = newParams\n let hasChanges = false\n d.forEachItem(r => {\n if (!internalChanges.has(r.key as any) && r.currentValue !== r.previousValue)\n hasChanges = true\n })\n if (hasChanges) {\n this.destroyInstance()\n this.initInstance()\n }\n }\n }\n }\n\n /** @internal */\n reset(cancel?: boolean) {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.removeAllFiles(cancel)\n })\n }\n }\n\n private initInstance() {\n if (!isPlatformBrowser(this.platformId) || !this._params) {\n return\n }\n\n this.zone.runOutsideAngular(() => {\n this.instance = new Dropzone(this.elementRef.nativeElement, this._params)\n })\n\n if (this.disabled) {\n this.instance!.disable()\n }\n\n if (this.DZ_INIT.observed) {\n this.zone.run(() => {\n this.DZ_INIT.emit(this.instance)\n })\n }\n\n // Add auto reset handling for events\n this.instance!.on('success', () => {\n if ((this._params?.autoReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.autoReset)\n }\n })\n\n this.instance!.on('error', () => {\n if ((this._params?.errorReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.errorReset)\n }\n })\n\n this.instance!.on('canceled', () => {\n if ((this._params?.cancelReset ?? -1) >= 0) {\n setTimeout(() => this.reset(), this._params?.cancelReset)\n }\n })\n\n // Add native Dropzone event handling\n DropzoneEvents.forEach((eventName: DropzoneEvent) => {\n this.instance!.on(eventName.toLowerCase(), (...args: any[]) => {\n args = (args.length === 1) ? args[0] : args\n\n const output = `DZ_${eventName.toUpperCase()}`\n\n const emitter = this[output as keyof DropzoneDirective] as EventEmitter<any>\n\n if (emitter.observed) {\n this.zone.run(() => {\n emitter.emit(args)\n })\n }\n })\n })\n }\n\n private destroyInstance() {\n if (this.instance) {\n this.zone.runOutsideAngular(() => {\n this.instance!.destroy()\n })\n\n this.instance = undefined\n }\n }\n}\n","/* eslint-disable @angular-eslint/no-output-rename */\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ViewEncapsulation } from '@angular/core'\nimport { DropzoneDirective } from './dropzone.directive'\nimport { DropzoneConfig, DropzoneListeners, NXT_DROPZONE_LISTENERS } from './dropzone.interfaces'\n\n@Component({\n selector: 'nxt-dropzone',\n templateUrl: './dropzone.component.html',\n styleUrls: [\n './dropzone.component.scss',\n '../../../../node_modules/dropzone/dist/dropzone.css'\n ],\n encapsulation: ViewEncapsulation.None,\n providers: [{\n provide: NXT_DROPZONE_LISTENERS,\n useValue: forwardRef(() => DropzoneComponent)\n }]\n})\nexport class DropzoneComponent implements OnInit, DropzoneListeners {\n\n /** Disables / detaches Dropzone from the element */\n @Input() disabled: boolean = false\n\n /** Custom config to override the global defaults */\n @Input() config?: DropzoneConfig\n\n /** Message to show for the user on the upload area */\n @Input() message: string = 'Click or drag files to upload'\n /** Placeholder image to be shown as the upload area */\n @Input() placeholder: string = ''\n\n /** Use 'dropzone' class (use provided default styles) */\n @Input() useDropzoneClass: boolean = true\n\n @Output('init') readonly DZ_INIT = new EventEmitter<Dropzone>()\n\n @Output('drop') readonly DZ_DROP = new EventEmitter<DragEvent>()\n @Output('dragStart') readonly DZ_DRAGSTART = new EventEmitter<DragEvent>()\n @Output('dragEnd') readonly DZ_DRAGEND = new EventEmitter<DragEvent>()\n @Output('dragEnter') readonly DZ_DRAGENTER = new EventEmitter<DragEvent>()\n @Output('dragOver') readonly DZ_DRAGOVER = new EventEmitter<DragEvent>()\n @Output('dragLeave') readonly DZ_DRAGLEAVE = new EventEmitter<DragEvent>()\n @Output('paste') readonly DZ_PASTE = new EventEmitter<DragEvent>()\n\n @Output('reset') readonly DZ_RESET = new EventEmitter<void>()\n\n @Output('addedFile') readonly DZ_ADDEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('addedFiles') readonly DZ_ADDEDFILES = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('removedFile') readonly DZ_REMOVEDFILE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('thumbnail') readonly DZ_THUMBNAIL = new EventEmitter<[Dropzone.DropzoneFile, string]>()\n\n @Output('error') readonly DZ_ERROR = new EventEmitter<[Dropzone.DropzoneFile, string | Error]>()\n @Output('errorMultiple') readonly DZ_ERRORMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], string | Error]>()\n\n @Output('processing') readonly DZ_PROCESSING = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('processingMultiple') readonly DZ_PROCESSINGMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('uploadProgress') readonly DZ_UPLOADPROGRESS = new EventEmitter<[Dropzone.DropzoneFile, number, number]>()\n @Output('totalUploadProgress') readonly DZ_TOTALUPLOADPROGRESS = new EventEmitter<[number, number, number]>()\n\n @Output('sending') readonly DZ_SENDING = new EventEmitter<[Dropzone.DropzoneFile, XMLHttpRequest, FormData]>()\n @Output('sendingMultiple') readonly DZ_SENDINGMULTIPLE = new EventEmitter<[Dropzone.DropzoneFile[], XMLHttpRequest, FormData]>()\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Output('success') readonly DZ_SUCCESS = new EventEmitter<[Dropzone.DropzoneFile, Object | string]>()\n @Output('successMultiple') readonly DZ_SUCCESSMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('canceled') readonly DZ_CANCELED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('canceledMultiple') readonly DZ_CANCELEDMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('complete') readonly DZ_COMPLETE = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('completeMultiple') readonly DZ_COMPLETEMULTIPLE = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('maxFilesExceeded') readonly DZ_MAXFILESEXCEEDED = new EventEmitter<Dropzone.DropzoneFile>()\n @Output('maxFilesReached') readonly DZ_MAXFILESREACHED = new EventEmitter<Dropzone.DropzoneFile[]>()\n\n @Output('queueComplete') readonly DZ_QUEUECOMPLETE = new EventEmitter<void>()\n\n @ViewChild(DropzoneDirective) directiveRef?: DropzoneDirective\n\n constructor() { }\n\n /** @internal */\n ngOnInit(): void { }\n\n /** @internal */\n getPlaceholder(): string {\n return 'url(' + encodeURI(this.placeholder) + ')'\n }\n}\n","<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","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { DropzoneComponent } from './dropzone.component'\nimport { DropzoneDirective } from './dropzone.directive'\n\n@NgModule({\n declarations: [\n DropzoneComponent,\n DropzoneDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n DropzoneComponent,\n DropzoneDirective\n ]\n})\nexport class DropzoneModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.DropzoneDirective"],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "nxt-dropzone-wrapper",
3
3
  "description": "Angular wrapper library for Dropzone",
4
4
  "bugs": "https://github.com/Liquid-JS/nxt-components/issues",
5
- "version": "16.0.0-alpha.1",
5
+ "version": "16.0.0-alpha.3",
6
6
  "license": "MIT",
7
7
  "repository": "https://github.com/Liquid-JS/nxt-components.git",
8
8
  "homepage": "https://github.com/Liquid-JS/nxt-components/tree/master/packages/dropzone-wrapper",