@valtimo/components 12.23.0 → 12.23.1

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.
@@ -95,7 +95,9 @@ export class DropzoneComponent {
95
95
  }
96
96
  ngOnDestroy() {
97
97
  this.clearSubscription.unsubscribe();
98
- this.destroyHiddenInputs();
98
+ if (this.dropzone) {
99
+ this.destroyDropzone();
100
+ }
99
101
  }
100
102
  showCamera() {
101
103
  this.showingCamera$.next(true);
@@ -107,6 +109,12 @@ export class DropzoneComponent {
107
109
  this.showingCamera$.next(false);
108
110
  }
109
111
  initDropzone() {
112
+ if (!this.dropzoneRef || !this.dropzoneRef.nativeElement) {
113
+ return;
114
+ }
115
+ if (this.dropzone) {
116
+ this.destroyDropzone();
117
+ }
110
118
  this.dropzone = new Dropzone(this.dropzoneRef.nativeElement, {
111
119
  url: '/',
112
120
  maxFilesize: this._maxFileSize,
@@ -117,7 +125,7 @@ export class DropzoneComponent {
117
125
  previewTemplate: `<p style='display:none'></p>`,
118
126
  ...(this._maxFiles && { maxFiles: this._maxFiles }),
119
127
  accept: file => {
120
- this.dropzone.removeAllFiles();
128
+ this.dropzone?.removeAllFiles();
121
129
  this.setFile(file);
122
130
  },
123
131
  });
@@ -140,6 +148,11 @@ export class DropzoneComponent {
140
148
  this.clearError();
141
149
  this.fileSelected.emit(file);
142
150
  }
151
+ destroyDropzone() {
152
+ this.dropzone.destroy();
153
+ this.dropzone = undefined;
154
+ this.destroyHiddenInputs();
155
+ }
143
156
  destroyHiddenInputs() {
144
157
  const hiddenElements = this.document.getElementsByClassName('dz-hidden-input');
145
158
  Array.from(hiddenElements).forEach(element => {
@@ -189,4 +202,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
189
202
  }], fileSelected: [{
190
203
  type: Output
191
204
  }] } });
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Ryb3B6b25lL2Ryb3B6b25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQU9uQyxNQUFNLE9BQU8saUJBQWlCO0lBaUI1QixJQUNJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFJRCxJQUNJLFdBQVcsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxXQUFXO1FB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QkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFLRixRQUFRO3NCQURYLEtBQUs7Z0JBWUYsV0FBVztzQkFEZCxLQUFLO2dCQVlGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBU0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCBEcm9wem9uZSBmcm9tICdkcm9wem9uZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZHJvcHpvbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcHpvbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wem9uZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZHJvcHpvbmUnKSBkcm9wem9uZVJlZjogRWxlbWVudFJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGhpZGVUaXRsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc3VidGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgZXh0ZXJuYWxFcnJvciQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgQElucHV0KCkgc2hvd01heEZpbGVTaXplID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0FjY2VwdGVkRmlsZXMgPSB0cnVlO1xuICBASW5wdXQoKSBjbGVhciQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBoaWRlRmlsZVByZXZpZXc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHVwbG9hZGluZzogYm9vbGVhbjtcbiAgQElucHV0KCkgY2FtZXJhID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZXM/OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgc2V0IG1heEZpbGVzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhGaWxlcyA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cbiAgZ2V0IG1heEZpbGVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21heEZpbGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZVNpemU6IG51bWJlciA9IDU7XG5cbiAgQElucHV0KClcbiAgc2V0IG1heEZpbGVTaXplKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhGaWxlU2l6ZSA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cbiAgZ2V0IG1heEZpbGVTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21heEZpbGVTaXplO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWNjZXB0ZWRGaWxlczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgc2V0IGFjY2VwdGVkRmlsZXModmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2FjY2VwdGVkRmlsZXMgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXREcm9wem9uZSgpO1xuICB9XG4gIGdldCBhY2NlcHRlZEZpbGVzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FjY2VwdGVkRmlsZXM7XG4gIH1cblxuICBAT3V0cHV0KCkgZmlsZVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8RmlsZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHJlYWRvbmx5IGZpbGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGaWxlPih1bmRlZmluZWQpO1xuICByZWFkb25seSBzaG93aW5nQ2FtZXJhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIGNsZWFyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZHJvcHpvbmU6IERyb3B6b25lO1xuICBwcml2YXRlIHJlYWRvbmx5IGVycm9yJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvck1lc3NhZ2VzU3RyaW5nczoge1trZXk6IHN0cmluZ106IHN0cmluZ30gPSB7XG4gICAgdG9vQmlnOiAndG9vIGJpZycsXG4gICAgd3JvbmdUeXBlOiAndGhpcyB0eXBlJyxcbiAgfTtcblxuICByZWFkb25seSBlcnJvck1lc3NhZ2UkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmVycm9yJCxcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKCdkcm9wem9uZS5lcnJvci5nZW5lcmljJyksXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgnZHJvcHpvbmUuZXJyb3IudG9vQmlnJyksXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgnZHJvcHpvbmUuZXJyb3Iud3JvbmdUeXBlJyksXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbZHJvcHpvbmVFcnJvciwgZ2VuZXJpYywgdG9vQmlnLCB3cm9uZ1R5cGVdKSA9PiB7XG4gICAgICBjb25zdCBzdHJpbmdzID0gdGhpcy5lcnJvck1lc3NhZ2VzU3RyaW5ncztcblxuICAgICAgaWYgKGRyb3B6b25lRXJyb3IpIHtcbiAgICAgICAgaWYgKGRyb3B6b25lRXJyb3IuaW5jbHVkZXMoc3RyaW5ncy50b29CaWcpKSB7XG4gICAgICAgICAgcmV0dXJuIHRvb0JpZztcbiAgICAgICAgfSBlbHNlIGlmIChkcm9wem9uZUVycm9yLmluY2x1ZGVzKHN0cmluZ3Mud3JvbmdUeXBlKSkge1xuICAgICAgICAgIHJldHVybiB3cm9uZ1R5cGU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZ2VuZXJpYztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICcnO1xuICAgIH0pXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhclN1YnNjcmlwdGlvbiA9IHRoaXMuY2xlYXIkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyRmlsZSgpO1xuICAgICAgdGhpcy5jbGVhckVycm9yKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5pbml0RHJvcHpvbmUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmRlc3Ryb3lIaWRkZW5JbnB1dHMoKTtcbiAgfVxuXG4gIHNob3dDYW1lcmEoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93aW5nQ2FtZXJhJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgd2ViY2FtSW1hZ2VTYXZlZChpbWFnZTogRmlsZSk6IHZvaWQge1xuICAgIGlmIChpbWFnZSkge1xuICAgICAgdGhpcy5zZXRGaWxlKGltYWdlKTtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dpbmdDYW1lcmEkLm5leHQoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0RHJvcHpvbmUoKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wem9uZSA9IG5ldyBEcm9wem9uZSh0aGlzLmRyb3B6b25lUmVmLm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIHVybDogJy8nLFxuICAgICAgbWF4RmlsZXNpemU6IHRoaXMuX21heEZpbGVTaXplLFxuICAgICAgY2xpY2thYmxlOiB0aGlzLmRyb3B6b25lUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICBhdXRvUHJvY2Vzc1F1ZXVlOiBmYWxzZSxcbiAgICAgIGNyZWF0ZUltYWdlVGh1bWJuYWlsczogZmFsc2UsXG4gICAgICBhY2NlcHRlZEZpbGVzOiB0aGlzLl9hY2NlcHRlZEZpbGVzLFxuICAgICAgcHJldmlld1RlbXBsYXRlOiBgPHAgc3R5bGU9J2Rpc3BsYXk6bm9uZSc+PC9wPmAsXG4gICAgICAuLi4odGhpcy5fbWF4RmlsZXMgJiYge21heEZpbGVzOiB0aGlzLl9tYXhGaWxlc30pLFxuICAgICAgYWNjZXB0OiBmaWxlID0+IHtcbiAgICAgICAgdGhpcy5kcm9wem9uZS5yZW1vdmVBbGxGaWxlcygpO1xuICAgICAgICB0aGlzLnNldEZpbGUoZmlsZSk7XG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXREcm9wem9uZUV2ZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREcm9wem9uZUV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3B6b25lLm9uKCdlcnJvcicsIChmaWxlLCBtZXNzYWdlKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyRmlsZSgpO1xuICAgICAgdGhpcy5lcnJvciQubmV4dChtZXNzYWdlLnRvU3RyaW5nKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckZpbGUoKTogdm9pZCB7XG4gICAgdGhpcy5maWxlJC5uZXh0KHVuZGVmaW5lZCk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyRXJyb3IoKTogdm9pZCB7XG4gICAgdGhpcy5lcnJvciQubmV4dCgnJyk7XG4gIH1cblxuICBwcml2YXRlIHNldEZpbGUoZmlsZTogRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZSQubmV4dChmaWxlKTtcbiAgICB0aGlzLmNsZWFyRXJyb3IoKTtcbiAgICB0aGlzLmZpbGVTZWxlY3RlZC5lbWl0KGZpbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95SGlkZGVuSW5wdXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IGhpZGRlbkVsZW1lbnRzID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdkei1oaWRkZW4taW5wdXQnKTtcblxuICAgIEFycmF5LmZyb20oaGlkZGVuRWxlbWVudHMpLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBlbGVtZW50LnJlbW92ZSgpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxmb3JtICNkcm9wem9uZSBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IGRpc2FibGVkIHx8IHVwbG9hZGluZ31cIiBjbGFzcz1cImRyb3B6b25lIGR6LWNsaWNrYWJsZVwiPlxuICA8ZGl2IGNsYXNzPVwiZHotbWVzc2FnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpY29uIGxhcmdlLWljb25cIj48c3BhbiBjbGFzcz1cIm1kaSBtZGktY2xvdWQtdXBsb2FkXCI+PC9zcGFuPjwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJib2R5XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVwbG9hZGluZ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByb2dyZXNzQmFyXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cImRyb3B6b25lLW1vYmlsZS10cmlnZ2VyIG5lZWRzY2xpY2tcIj48L2Rpdj5cbiAgPC9kaXY+XG4gIDxidXR0b25cbiAgICAoY2xpY2spPVwic2hvd0NhbWVyYSgpXCJcbiAgICAqbmdJZj1cImNhbWVyYVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtMyB3ZWJjYW0tYnV0dG9uXCJcbiAgPlxuICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWNhbWVyYVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgPC9idXR0b24+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93aW5nQ2FtZXJhJCB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIndlYmNhbVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZm9ybT5cblxuPG5nLXRlbXBsYXRlICNib2R5PlxuICA8aDIgKm5nSWY9XCIhaGlkZVRpdGxlXCIgY2xhc3M9XCJtYi00IG10LTJcIj57eyB0aXRsZSB8fCAoJ2Ryb3B6b25lLmRyb3AnIHwgdHJhbnNsYXRlKSB9fTwvaDI+XG4gIDxzcGFuICpuZ0lmPVwic3VidGl0bGVcIiBjbGFzcz1cIm5vdGUgbWItM1wiPnt7IHN1YnRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cInNob3dBY2NlcHRlZEZpbGVzICYmIGFjY2VwdGVkRmlsZXNcIiBjbGFzcz1cIm5vdGUgbWItMyBzbWFsbC1mb250XCJcbiAgPnt7ICdkcm9wem9uZS5hY2NlcHRlZEZpbGVzJyB8IHRyYW5zbGF0ZSB9fTxiPnt7IGFjY2VwdGVkRmlsZXMgfX08L2I+PC9zcGFuXG4gID5cbiAgPHNwYW4gKm5nSWY9XCJzaG93TWF4RmlsZVNpemVcIiBjbGFzcz1cIm5vdGUgbWItMyBzbWFsbC1mb250XCJcbiAgICA+e3sgJ2Ryb3B6b25lLm1heEZpbGVTaXplJyB8IHRyYW5zbGF0ZSB9fTxiPnt7IG1heEZpbGVTaXplIH19bWI8L2I+PC9zcGFuXG4gID5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByZXZpZXdcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcHJldmlldz5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwie1xuICAgICAgZXJyb3JNZXNzYWdlOiBlcnJvck1lc3NhZ2UkIHwgYXN5bmMsXG4gICAgICBleHRlcm5hbEVycm9yOiBleHRlcm5hbEVycm9yJCB8IGFzeW5jLFxuICAgICAgZmlsZTogZmlsZSQgfCBhc3luYyxcbiAgICB9IGFzIG9ic1wiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib2JzLmV4dGVybmFsRXJyb3IgfHwgb2JzLmVycm9yTWVzc2FnZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlciBtdC0yIG1iLTBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIj5cbiAgICAgICAgICB7eyBvYnMuZXh0ZXJuYWxFcnJvciB8fCBvYnMuZXJyb3JNZXNzYWdlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhpZGVGaWxlUHJldmlldyAmJiBvYnMuZmlsZSAmJiAhb2JzLmV4dGVybmFsRXJyb3IgJiYgIW9icy5lcnJvck1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWZpbGUtdGV4dCBtci0yXCI+PC9pPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGVcIj57eyBvYnMuZmlsZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGUgZmlsZS1zaXplXCI+LSB7eyBvYnMuZmlsZS5zaXplIHwgZmlsZXNpemU6IDIgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3Byb2dyZXNzQmFyPlxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtYmFyLWNvbnRhaW5lclwiPlxuICAgIDx2YWx0aW1vLXByb2dyZXNzLWJhcj48L3ZhbHRpbW8tcHJvZ3Jlc3MtYmFyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjd2ViY2FtPlxuICA8dmFsdGltby13ZWJjYW0gKGltYWdlU2F2ZWQpPVwid2ViY2FtSW1hZ2VTYXZlZCgkZXZlbnQpXCI+PC92YWx0aW1vLXdlYmNhbT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcHpvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kcm9wem9uZS9kcm9wem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Ryb3B6b25lL2Ryb3B6b25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFDaEMsT0FBTyxFQUFDLGVBQWUsRUFBRSxhQUFhLEVBQWMsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQU9uQyxNQUFNLE9BQU8saUJBQWlCO0lBaUI1QixJQUNJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFJRCxJQUNJLFdBQVcsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxXQUFXO1FB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LGlCQUFpQiwyRUFzRmxCLFFBQVE7bUdBdEZQLGlCQUFpQiw0a0JDeEM5Qix5b0dBcUZBOzs0RkQ3Q2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGtCQUFrQjs7MEJBMEZ6QixNQUFNOzJCQUFDLFFBQVE7eUNBckZLLFdBQVc7c0JBQWpDLFNBQVM7dUJBQUMsVUFBVTtnQkFFWixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFLRixRQUFRO3NCQURYLEtBQUs7Z0JBWUYsV0FBVztzQkFEZCxLQUFLO2dCQVlGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBU0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCBEcm9wem9uZSBmcm9tICdkcm9wem9uZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZHJvcHpvbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcHpvbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wem9uZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wem9uZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZHJvcHpvbmUnKSBkcm9wem9uZVJlZjogRWxlbWVudFJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGhpZGVUaXRsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc3VidGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgZXh0ZXJuYWxFcnJvciQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgQElucHV0KCkgc2hvd01heEZpbGVTaXplID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0FjY2VwdGVkRmlsZXMgPSB0cnVlO1xuICBASW5wdXQoKSBjbGVhciQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBoaWRlRmlsZVByZXZpZXc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHVwbG9hZGluZzogYm9vbGVhbjtcbiAgQElucHV0KCkgY2FtZXJhID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZXM/OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgc2V0IG1heEZpbGVzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhGaWxlcyA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cbiAgZ2V0IG1heEZpbGVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21heEZpbGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF4RmlsZVNpemU6IG51bWJlciA9IDU7XG5cbiAgQElucHV0KClcbiAgc2V0IG1heEZpbGVTaXplKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhGaWxlU2l6ZSA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cbiAgZ2V0IG1heEZpbGVTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21heEZpbGVTaXplO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWNjZXB0ZWRGaWxlczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgc2V0IGFjY2VwdGVkRmlsZXModmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2FjY2VwdGVkRmlsZXMgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXREcm9wem9uZSgpO1xuICB9XG4gIGdldCBhY2NlcHRlZEZpbGVzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FjY2VwdGVkRmlsZXM7XG4gIH1cblxuICBAT3V0cHV0KCkgZmlsZVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8RmlsZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHJlYWRvbmx5IGZpbGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGaWxlPih1bmRlZmluZWQpO1xuICByZWFkb25seSBzaG93aW5nQ2FtZXJhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIGNsZWFyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZHJvcHpvbmU/OiBEcm9wem9uZTtcbiAgcHJpdmF0ZSByZWFkb25seSBlcnJvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZXJyb3JNZXNzYWdlc1N0cmluZ3M6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9ID0ge1xuICAgIHRvb0JpZzogJ3RvbyBiaWcnLFxuICAgIHdyb25nVHlwZTogJ3RoaXMgdHlwZScsXG4gIH07XG5cbiAgcmVhZG9ubHkgZXJyb3JNZXNzYWdlJDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5lcnJvciQsXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnN0cmVhbSgnZHJvcHpvbmUuZXJyb3IuZ2VuZXJpYycpLFxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2Ryb3B6b25lLmVycm9yLnRvb0JpZycpLFxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2Ryb3B6b25lLmVycm9yLndyb25nVHlwZScpLFxuICBdKS5waXBlKFxuICAgIG1hcCgoW2Ryb3B6b25lRXJyb3IsIGdlbmVyaWMsIHRvb0JpZywgd3JvbmdUeXBlXSkgPT4ge1xuICAgICAgY29uc3Qgc3RyaW5ncyA9IHRoaXMuZXJyb3JNZXNzYWdlc1N0cmluZ3M7XG5cbiAgICAgIGlmIChkcm9wem9uZUVycm9yKSB7XG4gICAgICAgIGlmIChkcm9wem9uZUVycm9yLmluY2x1ZGVzKHN0cmluZ3MudG9vQmlnKSkge1xuICAgICAgICAgIHJldHVybiB0b29CaWc7XG4gICAgICAgIH0gZWxzZSBpZiAoZHJvcHpvbmVFcnJvci5pbmNsdWRlcyhzdHJpbmdzLndyb25nVHlwZSkpIHtcbiAgICAgICAgICByZXR1cm4gd3JvbmdUeXBlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdlbmVyaWM7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAnJztcbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnRcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJTdWJzY3JpcHRpb24gPSB0aGlzLmNsZWFyJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jbGVhckZpbGUoKTtcbiAgICAgIHRoaXMuY2xlYXJFcnJvcigpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuaW5pdERyb3B6b25lKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgaWYgKHRoaXMuZHJvcHpvbmUpIHtcbiAgICAgIHRoaXMuZGVzdHJveURyb3B6b25lKCk7XG4gICAgfVxuICB9XG5cbiAgc2hvd0NhbWVyYSgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dpbmdDYW1lcmEkLm5leHQodHJ1ZSk7XG4gIH1cblxuICB3ZWJjYW1JbWFnZVNhdmVkKGltYWdlOiBGaWxlKTogdm9pZCB7XG4gICAgaWYgKGltYWdlKSB7XG4gICAgICB0aGlzLnNldEZpbGUoaW1hZ2UpO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd2luZ0NhbWVyYSQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGluaXREcm9wem9uZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZHJvcHpvbmVSZWYgfHwgIXRoaXMuZHJvcHpvbmVSZWYubmF0aXZlRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRyb3B6b25lKSB7XG4gICAgICB0aGlzLmRlc3Ryb3lEcm9wem9uZSgpO1xuICAgIH1cblxuICAgIHRoaXMuZHJvcHpvbmUgPSBuZXcgRHJvcHpvbmUodGhpcy5kcm9wem9uZVJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICB1cmw6ICcvJyxcbiAgICAgIG1heEZpbGVzaXplOiB0aGlzLl9tYXhGaWxlU2l6ZSxcbiAgICAgIGNsaWNrYWJsZTogdGhpcy5kcm9wem9uZVJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgYXV0b1Byb2Nlc3NRdWV1ZTogZmFsc2UsXG4gICAgICBjcmVhdGVJbWFnZVRodW1ibmFpbHM6IGZhbHNlLFxuICAgICAgYWNjZXB0ZWRGaWxlczogdGhpcy5fYWNjZXB0ZWRGaWxlcyxcbiAgICAgIHByZXZpZXdUZW1wbGF0ZTogYDxwIHN0eWxlPSdkaXNwbGF5Om5vbmUnPjwvcD5gLFxuICAgICAgLi4uKHRoaXMuX21heEZpbGVzICYmIHttYXhGaWxlczogdGhpcy5fbWF4RmlsZXN9KSxcbiAgICAgIGFjY2VwdDogZmlsZSA9PiB7XG4gICAgICAgIHRoaXMuZHJvcHpvbmU/LnJlbW92ZUFsbEZpbGVzKCk7XG4gICAgICAgIHRoaXMuc2V0RmlsZShmaWxlKTtcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnNldERyb3B6b25lRXZlbnRzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldERyb3B6b25lRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuZHJvcHpvbmUub24oJ2Vycm9yJywgKGZpbGUsIG1lc3NhZ2UpID0+IHtcbiAgICAgIHRoaXMuY2xlYXJGaWxlKCk7XG4gICAgICB0aGlzLmVycm9yJC5uZXh0KG1lc3NhZ2UudG9TdHJpbmcoKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyRmlsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGUkLm5leHQodW5kZWZpbmVkKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJFcnJvcigpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yJC5uZXh0KCcnKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RmlsZShmaWxlOiBGaWxlKTogdm9pZCB7XG4gICAgdGhpcy5maWxlJC5uZXh0KGZpbGUpO1xuICAgIHRoaXMuY2xlYXJFcnJvcigpO1xuICAgIHRoaXMuZmlsZVNlbGVjdGVkLmVtaXQoZmlsZSk7XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lEcm9wem9uZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3B6b25lLmRlc3Ryb3koKTtcbiAgICB0aGlzLmRyb3B6b25lID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuZGVzdHJveUhpZGRlbklucHV0cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95SGlkZGVuSW5wdXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IGhpZGRlbkVsZW1lbnRzID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdkei1oaWRkZW4taW5wdXQnKTtcblxuICAgIEFycmF5LmZyb20oaGlkZGVuRWxlbWVudHMpLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBlbGVtZW50LnJlbW92ZSgpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyNCBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxmb3JtICNkcm9wem9uZSBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IGRpc2FibGVkIHx8IHVwbG9hZGluZ31cIiBjbGFzcz1cImRyb3B6b25lIGR6LWNsaWNrYWJsZVwiPlxuICA8ZGl2IGNsYXNzPVwiZHotbWVzc2FnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpY29uIGxhcmdlLWljb25cIj48c3BhbiBjbGFzcz1cIm1kaSBtZGktY2xvdWQtdXBsb2FkXCI+PC9zcGFuPjwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJib2R5XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVwbG9hZGluZ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByb2dyZXNzQmFyXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cImRyb3B6b25lLW1vYmlsZS10cmlnZ2VyIG5lZWRzY2xpY2tcIj48L2Rpdj5cbiAgPC9kaXY+XG4gIDxidXR0b25cbiAgICAoY2xpY2spPVwic2hvd0NhbWVyYSgpXCJcbiAgICAqbmdJZj1cImNhbWVyYVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtMyB3ZWJjYW0tYnV0dG9uXCJcbiAgPlxuICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWNhbWVyYVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgPC9idXR0b24+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93aW5nQ2FtZXJhJCB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIndlYmNhbVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZm9ybT5cblxuPG5nLXRlbXBsYXRlICNib2R5PlxuICA8aDIgKm5nSWY9XCIhaGlkZVRpdGxlXCIgY2xhc3M9XCJtYi00IG10LTJcIj57eyB0aXRsZSB8fCAoJ2Ryb3B6b25lLmRyb3AnIHwgdHJhbnNsYXRlKSB9fTwvaDI+XG4gIDxzcGFuICpuZ0lmPVwic3VidGl0bGVcIiBjbGFzcz1cIm5vdGUgbWItM1wiPnt7IHN1YnRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cInNob3dBY2NlcHRlZEZpbGVzICYmIGFjY2VwdGVkRmlsZXNcIiBjbGFzcz1cIm5vdGUgbWItMyBzbWFsbC1mb250XCJcbiAgPnt7ICdkcm9wem9uZS5hY2NlcHRlZEZpbGVzJyB8IHRyYW5zbGF0ZSB9fTxiPnt7IGFjY2VwdGVkRmlsZXMgfX08L2I+PC9zcGFuXG4gID5cbiAgPHNwYW4gKm5nSWY9XCJzaG93TWF4RmlsZVNpemVcIiBjbGFzcz1cIm5vdGUgbWItMyBzbWFsbC1mb250XCJcbiAgICA+e3sgJ2Ryb3B6b25lLm1heEZpbGVTaXplJyB8IHRyYW5zbGF0ZSB9fTxiPnt7IG1heEZpbGVTaXplIH19bWI8L2I+PC9zcGFuXG4gID5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByZXZpZXdcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcHJldmlldz5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwie1xuICAgICAgZXJyb3JNZXNzYWdlOiBlcnJvck1lc3NhZ2UkIHwgYXN5bmMsXG4gICAgICBleHRlcm5hbEVycm9yOiBleHRlcm5hbEVycm9yJCB8IGFzeW5jLFxuICAgICAgZmlsZTogZmlsZSQgfCBhc3luYyxcbiAgICB9IGFzIG9ic1wiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib2JzLmV4dGVybmFsRXJyb3IgfHwgb2JzLmVycm9yTWVzc2FnZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlciBtdC0yIG1iLTBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIj5cbiAgICAgICAgICB7eyBvYnMuZXh0ZXJuYWxFcnJvciB8fCBvYnMuZXJyb3JNZXNzYWdlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhpZGVGaWxlUHJldmlldyAmJiBvYnMuZmlsZSAmJiAhb2JzLmV4dGVybmFsRXJyb3IgJiYgIW9icy5lcnJvck1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxlXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbiBtZGkgbWRpLWZpbGUtdGV4dCBtci0yXCI+PC9pPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGVcIj57eyBvYnMuZmlsZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGUgZmlsZS1zaXplXCI+LSB7eyBvYnMuZmlsZS5zaXplIHwgZmlsZXNpemU6IDIgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3Byb2dyZXNzQmFyPlxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtYmFyLWNvbnRhaW5lclwiPlxuICAgIDx2YWx0aW1vLXByb2dyZXNzLWJhcj48L3ZhbHRpbW8tcHJvZ3Jlc3MtYmFyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjd2ViY2FtPlxuICA8dmFsdGltby13ZWJjYW0gKGltYWdlU2F2ZWQpPVwid2ViY2FtSW1hZ2VTYXZlZCgkZXZlbnQpXCI+PC92YWx0aW1vLXdlYmNhbT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -8855,7 +8855,9 @@ class DropzoneComponent {
8855
8855
  }
8856
8856
  ngOnDestroy() {
8857
8857
  this.clearSubscription.unsubscribe();
8858
- this.destroyHiddenInputs();
8858
+ if (this.dropzone) {
8859
+ this.destroyDropzone();
8860
+ }
8859
8861
  }
8860
8862
  showCamera() {
8861
8863
  this.showingCamera$.next(true);
@@ -8867,6 +8869,12 @@ class DropzoneComponent {
8867
8869
  this.showingCamera$.next(false);
8868
8870
  }
8869
8871
  initDropzone() {
8872
+ if (!this.dropzoneRef || !this.dropzoneRef.nativeElement) {
8873
+ return;
8874
+ }
8875
+ if (this.dropzone) {
8876
+ this.destroyDropzone();
8877
+ }
8870
8878
  this.dropzone = new Dropzone(this.dropzoneRef.nativeElement, {
8871
8879
  url: '/',
8872
8880
  maxFilesize: this._maxFileSize,
@@ -8877,7 +8885,7 @@ class DropzoneComponent {
8877
8885
  previewTemplate: `<p style='display:none'></p>`,
8878
8886
  ...(this._maxFiles && { maxFiles: this._maxFiles }),
8879
8887
  accept: file => {
8880
- this.dropzone.removeAllFiles();
8888
+ this.dropzone?.removeAllFiles();
8881
8889
  this.setFile(file);
8882
8890
  },
8883
8891
  });
@@ -8900,6 +8908,11 @@ class DropzoneComponent {
8900
8908
  this.clearError();
8901
8909
  this.fileSelected.emit(file);
8902
8910
  }
8911
+ destroyDropzone() {
8912
+ this.dropzone.destroy();
8913
+ this.dropzone = undefined;
8914
+ this.destroyHiddenInputs();
8915
+ }
8903
8916
  destroyHiddenInputs() {
8904
8917
  const hiddenElements = this.document.getElementsByClassName('dz-hidden-input');
8905
8918
  Array.from(hiddenElements).forEach(element => {