@elderbyte/ngx-starter 15.10.1 → 15.10.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.
@@ -16,7 +16,7 @@ export class ElderDropZoneComponent {
16
16
  * Fields *
17
17
  * *
18
18
  **************************************************************************/
19
- this.logger = LoggerFactory.getLogger(this.constructor.name);
19
+ this.log = LoggerFactory.getLogger(this.constructor.name);
20
20
  this.filesDropped = new EventEmitter();
21
21
  this.dragOver = new EventEmitter();
22
22
  this.dragEnd = new EventEmitter();
@@ -25,7 +25,7 @@ export class ElderDropZoneComponent {
25
25
  }
26
26
  }
27
27
  ElderDropZoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDropZoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- ElderDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDropZoneComponent, selector: "elder-drop-zone", inputs: { icon: "icon", prompt: "prompt" }, outputs: { filesDropped: "filesDropped", dragOver: "dragOver", dragEnd: "dragEnd" }, ngImport: i0, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: ["dragOverClass"], outputs: ["dragOver", "dragEnd", "dragOverFiles", "dropFiles", "elderFileDropZoneChange"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
+ ElderDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDropZoneComponent, selector: "elder-drop-zone", inputs: { icon: "icon", prompt: "prompt" }, outputs: { filesDropped: "filesDropped", dragOver: "dragOver", dragEnd: "dragEnd" }, ngImport: i0, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: ["dragOverClass"], outputs: ["dragEnter", "dragOver", "dragEnd", "dragEnterFiles", "dropFiles", "elderFileDropZoneChange"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDropZoneComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'elder-drop-zone', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n" }]
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
40
40
  }], prompt: [{
41
41
  type: Input
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZHJvcC16b25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZmlsZXMvZHJhZy1uLWRyb3AvZWxkZXItZHJvcC16b25lL2VsZGVyLWRyb3Atem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2RyYWctbi1kcm9wL2VsZGVyLWRyb3Atem9uZS9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBU25ELE1BQU0sT0FBTyxzQkFBc0I7SUF5QmpDOzs7O2dGQUk0RTtJQUU1RTtRQTdCQTs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUd6RCxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFHL0MsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHekMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHakQsU0FBSSxHQUFXLGFBQWEsQ0FBQztRQUc3QixXQUFNLEdBQVcsa0JBQWtCLENBQUE7SUFRMUIsQ0FBQzs7bUhBL0JOLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHdMQ1ZuQyw0bkJBb0JBOzJGRFZhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTswRUFhL0IsWUFBWTtzQkFEM0IsTUFBTTtnQkFJUyxRQUFRO3NCQUR2QixNQUFNO2dCQUlTLE9BQU87c0JBRHRCLE1BQU07Z0JBSUEsSUFBSTtzQkFEVixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4uLy4uL2xpc3RpbmcvZmlsZS1lbnRyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRyb3Atem9uZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJEcm9wWm9uZUNvbXBvbmVudCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZmlsZXNEcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGRyYWdPdmVyID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBkcmFnRW5kID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZyA9ICd1cGxvYWRfZmlsZSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHByb21wdDogc3RyaW5nID0gJ0Ryb3AgRmlsZXMgaGVyZS4nXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbn1cbiIsIjxkaXYgY2xhc3M9XCJmdWxsIHAtbGdcIlxuPlxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsIGVsZGVyLWRyb3Atem9uZVwiXG4gICAgICAgZWxkZXJGaWxlRHJvcFpvbmVcbiAgICAgICAoZHJvcEZpbGVzKT1cImZpbGVzRHJvcHBlZC5lbWl0KCRldmVudClcIlxuICAgICAgIChkcmFnT3Zlcik9XCJkcmFnT3Zlci5lbWl0KCRldmVudClcIlxuICAgICAgIChkcmFnRW5kKT1cImRyYWdFbmQuZW1pdCgkZXZlbnQpXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZsZXhcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwhLS0gRGVmYXVsdCBjb250ZW50IC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZmxleCBwbGFjZS1jZW50ZXItY2VudGVyIGdhcC1zbSBlbGRlci1kZWZhdWx0LWNvbnRlbnRcIj5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZWxkZXItZHJvcC16b25lLWljb25cIj57e2ljb259fTwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZWxkZXItZHJvcC16b25lLXByb21wdFwiPnt7cHJvbXB0IHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuXG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZHJvcC16b25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZmlsZXMvZHJhZy1uLWRyb3AvZWxkZXItZHJvcC16b25lL2VsZGVyLWRyb3Atem9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2RyYWctbi1kcm9wL2VsZGVyLWRyb3Atem9uZS9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBU25ELE1BQU0sT0FBTyxzQkFBc0I7SUF5QmpDOzs7O2dGQUk0RTtJQUU1RTtRQTdCQTs7OztvRkFJNEU7UUFFM0QsUUFBRyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUd0RCxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFHL0MsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHekMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHakQsU0FBSSxHQUFXLGFBQWEsQ0FBQztRQUc3QixXQUFNLEdBQVcsa0JBQWtCLENBQUE7SUFRMUIsQ0FBQzs7bUhBL0JOLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHdMQ1ZuQyw0bkJBb0JBOzJGRFZhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTswRUFhL0IsWUFBWTtzQkFEM0IsTUFBTTtnQkFJUyxRQUFRO3NCQUR2QixNQUFNO2dCQUlTLE9BQU87c0JBRHRCLE1BQU07Z0JBSUEsSUFBSTtzQkFEVixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4uLy4uL2xpc3RpbmcvZmlsZS1lbnRyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRyb3Atem9uZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kcm9wLXpvbmUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJEcm9wWm9uZUNvbXBvbmVudCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZmlsZXNEcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGRyYWdPdmVyID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBkcmFnRW5kID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZyA9ICd1cGxvYWRfZmlsZSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHByb21wdDogc3RyaW5nID0gJ0Ryb3AgRmlsZXMgaGVyZS4nXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbn1cbiIsIjxkaXYgY2xhc3M9XCJmdWxsIHAtbGdcIlxuPlxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsIGVsZGVyLWRyb3Atem9uZVwiXG4gICAgICAgZWxkZXJGaWxlRHJvcFpvbmVcbiAgICAgICAoZHJvcEZpbGVzKT1cImZpbGVzRHJvcHBlZC5lbWl0KCRldmVudClcIlxuICAgICAgIChkcmFnT3Zlcik9XCJkcmFnT3Zlci5lbWl0KCRldmVudClcIlxuICAgICAgIChkcmFnRW5kKT1cImRyYWdFbmQuZW1pdCgkZXZlbnQpXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZsZXhcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwhLS0gRGVmYXVsdCBjb250ZW50IC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZmxleCBwbGFjZS1jZW50ZXItY2VudGVyIGdhcC1zbSBlbGRlci1kZWZhdWx0LWNvbnRlbnRcIj5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZWxkZXItZHJvcC16b25lLWljb25cIj57e2ljb259fTwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZWxkZXItZHJvcC16b25lLXByb21wdFwiPnt7cHJvbXB0IHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuXG4iXX0=
@@ -1,5 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { fromEvent } from 'rxjs';
3
+ import { LoggerFactory } from '@elderbyte/ts-logger';
3
4
  import * as i0 from "@angular/core";
4
5
  export class GlobalDragDropService {
5
6
  /***************************************************************************
@@ -8,24 +9,42 @@ export class GlobalDragDropService {
8
9
  * *
9
10
  **************************************************************************/
10
11
  constructor() {
12
+ /***************************************************************************
13
+ * *
14
+ * Fields *
15
+ * *
16
+ **************************************************************************/
17
+ this.log = LoggerFactory.getLogger(this.constructor.name);
18
+ this._onDragStart$ = fromEvent(window, 'dragstart');
11
19
  this._onDragOver$ = fromEvent(window, 'dragover');
20
+ this._onDragEnter$ = fromEvent(window, 'dragenter');
12
21
  this._onDragLeave$ = fromEvent(window, 'dragleave');
13
22
  this._onDrop$ = fromEvent(window, 'drop');
23
+ this._onDragEnd$ = fromEvent(window, 'dragend');
14
24
  }
15
25
  /***************************************************************************
16
26
  * *
17
27
  * Properties *
18
28
  * *
19
29
  **************************************************************************/
30
+ get dragStart$() {
31
+ return this._onDragStart$;
32
+ }
20
33
  get dragOver$() {
21
34
  return this._onDragOver$;
22
35
  }
23
36
  get dragLeave$() {
24
37
  return this._onDragLeave$;
25
38
  }
39
+ get dragEnter$() {
40
+ return this._onDragEnter$;
41
+ }
26
42
  get drop$() {
27
43
  return this._onDrop$;
28
44
  }
45
+ get dragEnd$() {
46
+ return this._onDragEnd$;
47
+ }
29
48
  /***************************************************************************
30
49
  * *
31
50
  * Public API *
@@ -39,11 +58,20 @@ export class GlobalDragDropService {
39
58
  preventDefaultFileLoading() {
40
59
  if (!this.preventDefaultsSub) {
41
60
  this.preventDefaultsSub = {
42
- preventDragOver: this.dragOver$.subscribe({ next: e => e.preventDefault() }),
43
- preventDrop: this.drop$.subscribe({ next: e => e.preventDefault() })
61
+ preventDragOver: this.dragOver$.subscribe({ next: e => this.preventDefaultBrowserAction(e) }),
62
+ preventDrop: this.drop$.subscribe({ next: e => this.preventDefaultBrowserAction(e) })
44
63
  };
45
64
  }
46
65
  }
66
+ /***************************************************************************
67
+ * *
68
+ * Private methods *
69
+ * *
70
+ **************************************************************************/
71
+ preventDefaultBrowserAction(e) {
72
+ e.preventDefault();
73
+ this.log.warn('Prevented default Browser Action on DragEvent ', e);
74
+ }
47
75
  }
48
76
  GlobalDragDropService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: GlobalDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
49
77
  GlobalDragDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: GlobalDragDropService, providedIn: 'root' });
@@ -53,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
53
81
  providedIn: 'root'
54
82
  }]
55
83
  }], ctorParameters: function () { return []; } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWRyYWctZHJvcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9kcmFnLW4tZHJvcC9nbG9iYWwtZHJhZy1kcm9wLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsU0FBUyxFQUEyQixNQUFNLE1BQU0sQ0FBQzs7QUFVekQsTUFBTSxPQUFPLHFCQUFxQjtJQWNoQzs7OztnRkFJNEU7SUFFNUU7UUFDRSxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBWSxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQVksTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFZLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFOzs7O09BSUc7SUFDSSx5QkFBeUI7UUFDOUIsSUFBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBQztZQUMxQixJQUFJLENBQUMsa0JBQWtCLEdBQUc7Z0JBQ3hCLGVBQWUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FDdkMsRUFBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FDakM7Z0JBQ0QsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUMvQixFQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUNqQzthQUNGLENBQUE7U0FDRjtJQUNILENBQUM7O2tIQWxFVSxxQkFBcUI7c0hBQXJCLHFCQUFxQixjQUZwQixNQUFNOzJGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuaW50ZXJmYWNlIFByZXZlbnREZWZhdWx0U3Vic2NyaXB0aW9uIHtcbiAgcHJldmVudERyYWdPdmVyOiBTdWJzY3JpcHRpb25cbiAgcHJldmVudERyb3A6IFN1YnNjcmlwdGlvblxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBHbG9iYWxEcmFnRHJvcFNlcnZpY2Uge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX29uRHJhZ092ZXIkOiBPYnNlcnZhYmxlPERyYWdFdmVudD47XG4gIHByaXZhdGUgcmVhZG9ubHkgX29uRHJhZ0xlYXZlJDogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9vbkRyb3AkOiBPYnNlcnZhYmxlPERyYWdFdmVudD47XG5cbiAgcHJpdmF0ZSBwcmV2ZW50RGVmYXVsdHNTdWI6IFByZXZlbnREZWZhdWx0U3Vic2NyaXB0aW9uO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX29uRHJhZ092ZXIkID0gZnJvbUV2ZW50PERyYWdFdmVudD4od2luZG93LCAnZHJhZ292ZXInKTtcbiAgICB0aGlzLl9vbkRyYWdMZWF2ZSQgPSBmcm9tRXZlbnQ8RHJhZ0V2ZW50Pih3aW5kb3csICdkcmFnbGVhdmUnKTtcbiAgICB0aGlzLl9vbkRyb3AkID0gZnJvbUV2ZW50PERyYWdFdmVudD4od2luZG93LCAnZHJvcCcpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBkcmFnT3ZlciQoKTogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fb25EcmFnT3ZlciQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRyYWdMZWF2ZSQoKTogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fb25EcmFnTGVhdmUkO1xuICB9XG5cbiAgcHVibGljIGdldCBkcm9wJCgpOiBPYnNlcnZhYmxlPERyYWdFdmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9vbkRyb3AkO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gbG9hZGluZyBkcm9wcGVkIGZpbGVzLiBJZiB0aGUgdXNlciBhY2NpZGVudGFsbHlcbiAgICogbWlzc2VkIGEgZHJvcCB6b25lIGFuZCBkcm9wcyBmaWxlcyBhbnl3aGVyZSBpbiB0aGUgYWN0aXZlIGFwcCwgdGhlIGJyb3dzZXIgd291bGRcbiAgICogbG9hZCB0aGUgZmlsZSBhbmQgbG9vc2UgdGhlIGN1cnJlbnQgYXBwIGNvbnRleHQuXG4gICAqL1xuICBwdWJsaWMgcHJldmVudERlZmF1bHRGaWxlTG9hZGluZygpOiB2b2lkIHtcbiAgICBpZighdGhpcy5wcmV2ZW50RGVmYXVsdHNTdWIpe1xuICAgICAgdGhpcy5wcmV2ZW50RGVmYXVsdHNTdWIgPSB7XG4gICAgICAgIHByZXZlbnREcmFnT3ZlcjogdGhpcy5kcmFnT3ZlciQuc3Vic2NyaWJlKFxuICAgICAgICAgIHtuZXh0OiBlID0+IGUucHJldmVudERlZmF1bHQoKSB9XG4gICAgICAgICksXG4gICAgICAgIHByZXZlbnREcm9wOiB0aGlzLmRyb3AkLnN1YnNjcmliZShcbiAgICAgICAgICB7bmV4dDogZSA9PiBlLnByZXZlbnREZWZhdWx0KCkgfVxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWRyYWctZHJvcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9kcmFnLW4tZHJvcC9nbG9iYWwtZHJhZy1kcm9wLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsU0FBUyxFQUEyQixNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7O0FBVW5ELE1BQU0sT0FBTyxxQkFBcUI7SUFtQmhDOzs7O2dGQUk0RTtJQUU1RTtRQXZCQTs7OztvRkFJNEU7UUFFM0QsUUFBRyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQWtCcEUsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQVksTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFZLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBWSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQVksTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFZLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBWSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RTs7OztPQUlHO0lBQ0kseUJBQXlCO1FBQzlCLElBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUM7WUFDMUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHO2dCQUN4QixlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQ3ZDLEVBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ2xEO2dCQUNELFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FDL0IsRUFBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDbEQ7YUFDRixDQUFBO1NBQ0Y7SUFDSCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLDJCQUEyQixDQUFDLENBQVk7UUFDOUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdEQUFnRCxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7O2tIQWpHVSxxQkFBcUI7c0hBQXJCLHFCQUFxQixjQUZwQixNQUFNOzJGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuXG5pbnRlcmZhY2UgUHJldmVudERlZmF1bHRTdWJzY3JpcHRpb24ge1xuICBwcmV2ZW50RHJhZ092ZXI6IFN1YnNjcmlwdGlvblxuICBwcmV2ZW50RHJvcDogU3Vic2NyaXB0aW9uXG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdsb2JhbERyYWdEcm9wU2VydmljZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX29uRHJhZ1N0YXJ0JDogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9vbkRyYWdPdmVyJDogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9vbkRyYWdMZWF2ZSQ6IE9ic2VydmFibGU8RHJhZ0V2ZW50PjtcbiAgcHJpdmF0ZSByZWFkb25seSBfb25EcmFnRW50ZXIkOiBPYnNlcnZhYmxlPERyYWdFdmVudD47XG4gIHByaXZhdGUgcmVhZG9ubHkgX29uRHJvcCQ6IE9ic2VydmFibGU8RHJhZ0V2ZW50PjtcbiAgcHJpdmF0ZSByZWFkb25seSBfb25EcmFnRW5kJDogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+O1xuXG4gIHByaXZhdGUgcHJldmVudERlZmF1bHRzU3ViOiBQcmV2ZW50RGVmYXVsdFN1YnNjcmlwdGlvbjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9vbkRyYWdTdGFydCQgPSBmcm9tRXZlbnQ8RHJhZ0V2ZW50Pih3aW5kb3csICdkcmFnc3RhcnQnKTtcbiAgICB0aGlzLl9vbkRyYWdPdmVyJCA9IGZyb21FdmVudDxEcmFnRXZlbnQ+KHdpbmRvdywgJ2RyYWdvdmVyJyk7XG4gICAgdGhpcy5fb25EcmFnRW50ZXIkID0gZnJvbUV2ZW50PERyYWdFdmVudD4od2luZG93LCAnZHJhZ2VudGVyJyk7XG4gICAgdGhpcy5fb25EcmFnTGVhdmUkID0gZnJvbUV2ZW50PERyYWdFdmVudD4od2luZG93LCAnZHJhZ2xlYXZlJyk7XG4gICAgdGhpcy5fb25Ecm9wJCA9IGZyb21FdmVudDxEcmFnRXZlbnQ+KHdpbmRvdywgJ2Ryb3AnKTtcbiAgICB0aGlzLl9vbkRyYWdFbmQkID0gZnJvbUV2ZW50PERyYWdFdmVudD4od2luZG93LCAnZHJhZ2VuZCcpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBkcmFnU3RhcnQkKCk6IE9ic2VydmFibGU8RHJhZ0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX29uRHJhZ1N0YXJ0JDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZHJhZ092ZXIkKCk6IE9ic2VydmFibGU8RHJhZ0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX29uRHJhZ092ZXIkO1xuICB9XG5cbiAgcHVibGljIGdldCBkcmFnTGVhdmUkKCk6IE9ic2VydmFibGU8RHJhZ0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX29uRHJhZ0xlYXZlJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZHJhZ0VudGVyJCgpOiBPYnNlcnZhYmxlPERyYWdFdmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9vbkRyYWdFbnRlciQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRyb3AkKCk6IE9ic2VydmFibGU8RHJhZ0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX29uRHJvcCQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRyYWdFbmQkKCk6IE9ic2VydmFibGU8RHJhZ0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX29uRHJhZ0VuZCQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogUHJldmVudHMgdGhlIGJyb3dzZXIgZnJvbSBsb2FkaW5nIGRyb3BwZWQgZmlsZXMuIElmIHRoZSB1c2VyIGFjY2lkZW50YWxseVxuICAgKiBtaXNzZWQgYSBkcm9wIHpvbmUgYW5kIGRyb3BzIGZpbGVzIGFueXdoZXJlIGluIHRoZSBhY3RpdmUgYXBwLCB0aGUgYnJvd3NlciB3b3VsZFxuICAgKiBsb2FkIHRoZSBmaWxlIGFuZCBsb29zZSB0aGUgY3VycmVudCBhcHAgY29udGV4dC5cbiAgICovXG4gIHB1YmxpYyBwcmV2ZW50RGVmYXVsdEZpbGVMb2FkaW5nKCk6IHZvaWQge1xuICAgIGlmKCF0aGlzLnByZXZlbnREZWZhdWx0c1N1Yil7XG4gICAgICB0aGlzLnByZXZlbnREZWZhdWx0c1N1YiA9IHtcbiAgICAgICAgcHJldmVudERyYWdPdmVyOiB0aGlzLmRyYWdPdmVyJC5zdWJzY3JpYmUoXG4gICAgICAgICAge25leHQ6IGUgPT4gdGhpcy5wcmV2ZW50RGVmYXVsdEJyb3dzZXJBY3Rpb24oZSkgfVxuICAgICAgICApLFxuICAgICAgICBwcmV2ZW50RHJvcDogdGhpcy5kcm9wJC5zdWJzY3JpYmUoXG4gICAgICAgICAge25leHQ6IGUgPT4gdGhpcy5wcmV2ZW50RGVmYXVsdEJyb3dzZXJBY3Rpb24oZSkgfVxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBwcmV2ZW50RGVmYXVsdEJyb3dzZXJBY3Rpb24oZTogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMubG9nLndhcm4oJ1ByZXZlbnRlZCBkZWZhdWx0IEJyb3dzZXIgQWN0aW9uIG9uIERyYWdFdmVudCAnLCBlKTtcbiAgfVxuXG59XG4iXX0=
@@ -20,8 +20,15 @@ export class ElderFileDropZoneDirective {
20
20
  this.logger = LoggerFactory.getLogger(this.constructor.name);
21
21
  this.dropFilesEnabled = false;
22
22
  this._dropFiles = new EventEmitter();
23
- this.dragOverFilesEnabled = false;
24
- this._dragOverFiles = new EventEmitter();
23
+ this.dragEnterFilesEnabled = false;
24
+ this._dragEnterFiles = new EventEmitter();
25
+ /**
26
+ * Fired once when drag zone is entered.
27
+ */
28
+ this.dragEnter = new EventEmitter();
29
+ /**
30
+ * Fired continuously inside drag-zone
31
+ */
25
32
  this.dragOver = new EventEmitter();
26
33
  this.dragEnd = new EventEmitter();
27
34
  this.dragOverClass = 'is-dragover';
@@ -31,9 +38,9 @@ export class ElderFileDropZoneDirective {
31
38
  * Properties *
32
39
  * *
33
40
  **************************************************************************/
34
- get dragOverFiles() {
35
- this.dragOverFilesEnabled = true;
36
- return this._dragOverFiles;
41
+ get dragEnterFiles() {
42
+ this.dragEnterFilesEnabled = true;
43
+ return this._dragEnterFiles;
37
44
  }
38
45
  get dropFiles() {
39
46
  this.dropFilesEnabled = true;
@@ -47,13 +54,17 @@ export class ElderFileDropZoneDirective {
47
54
  * Public API *
48
55
  * *
49
56
  **************************************************************************/
57
+ onDragEnter(evt) {
58
+ evt.preventDefault(); // Prevent default browser action
59
+ this.dragEnter.emit(evt);
60
+ if (this.dragEnterFilesEnabled) {
61
+ this.collectFilesAsync(evt, files => this.dragEnterFiles.emit(files));
62
+ }
63
+ }
50
64
  onDragOver(evt) {
51
65
  evt.preventDefault(); // Prevent default browser action
52
66
  this.renderer.addClass(this.hostRef.nativeElement, this.dragOverClass);
53
67
  this.dragOver.emit(evt);
54
- if (this.dragOverFilesEnabled) {
55
- this.collectFilesAsync(evt, files => this.dragOverFiles.emit(files));
56
- }
57
68
  }
58
69
  onDragEnd(evt) {
59
70
  evt.preventDefault(); // Prevent default browser action
@@ -94,24 +105,29 @@ export class ElderFileDropZoneDirective {
94
105
  }
95
106
  }
96
107
  ElderFileDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderFileDropZoneDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
97
- ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { dragOver: "dragOver", dragEnd: "dragEnd", dragOverFiles: "dragOverFiles", dropFiles: "dropFiles", elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
108
+ ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { dragEnter: "dragEnter", dragOver: "dragOver", dragEnd: "dragEnd", dragEnterFiles: "dragEnterFiles", dropFiles: "dropFiles", elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragenter": "onDragEnter($event)", "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
98
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderFileDropZoneDirective, decorators: [{
99
110
  type: Directive,
100
111
  args: [{
101
112
  selector: '[elderFileDropZone]'
102
113
  }]
103
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { dragOver: [{
114
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { dragEnter: [{
115
+ type: Output
116
+ }], dragOver: [{
104
117
  type: Output
105
118
  }], dragEnd: [{
106
119
  type: Output
107
120
  }], dragOverClass: [{
108
121
  type: Input
109
- }], dragOverFiles: [{
122
+ }], dragEnterFiles: [{
110
123
  type: Output
111
124
  }], dropFiles: [{
112
125
  type: Output
113
126
  }], elderFileDropZoneChange: [{
114
127
  type: Output
128
+ }], onDragEnter: [{
129
+ type: HostListener,
130
+ args: ['dragenter', ['$event']]
115
131
  }], onDragOver: [{
116
132
  type: HostListener,
117
133
  args: ['dragover', ['$event']]
@@ -125,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
125
141
  type: HostListener,
126
142
  args: ['drop', ['$event']]
127
143
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7O0FBS3hELE1BQU0sT0FBTywwQkFBMEI7SUEwQnJDOzs7O2dGQUk0RTtJQUU1RSxZQUNVLE9BQW1CLEVBQ25CLFFBQW1CLEVBQ25CLE1BQWM7UUFGZCxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWpDeEI7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFakUscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBRXRELHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFJbEQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHekMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFHakQsa0JBQWEsR0FBRyxhQUFhLENBQUM7SUFhckMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUNXLGFB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QUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7dUhBN0hVLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OElBbUJpQixRQUFRO3NCQUR2QixNQUFNO2dCQUlTLE9BQU87c0JBRHRCLE1BQU07Z0JBSUEsYUFBYTtzQkFEbkIsS0FBSztnQkF1QkssYUFBYTtzQkFEdkIsTUFBTTtnQkFPSSxTQUFTO3NCQURuQixNQUFNO2dCQU9JLHVCQUF1QjtzQkFEakMsTUFBTTtnQkFZQSxVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFhN0IsU0FBUztzQkFGZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2xDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVE5QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0ZpbGVFbnRyeX0gZnJvbSAnLi9saXN0aW5nL2ZpbGUtZW50cnknO1xuaW1wb3J0IHtGaWxlTGlzdGluZ1J4fSBmcm9tICcuL2xpc3RpbmcvZmlsZS1saXN0aW5nLXJ4JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRmlsZURyb3Bab25lXSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJGaWxlRHJvcFpvbmVEaXJlY3RpdmUge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIGRyb3BGaWxlc0VuYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJvcEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4oKTtcblxuICBwcml2YXRlIGRyYWdPdmVyRmlsZXNFbmFibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdPdmVyRmlsZXMgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVFbnRyeVtdPigpO1xuXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBkcmFnT3ZlciA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ0VuZCA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0V2ZW50PigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkcmFnT3ZlckNsYXNzID0gJ2lzLWRyYWdvdmVyJztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBkcmFnT3ZlckZpbGVzKCk6IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4ge1xuICAgIHRoaXMuZHJhZ092ZXJGaWxlc0VuYWJsZWQgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzLl9kcmFnT3ZlckZpbGVzO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZHJvcEZpbGVzKCk6IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4ge1xuICAgIHRoaXMuZHJvcEZpbGVzRW5hYmxlZCA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXMuX2Ryb3BGaWxlcztcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGVsZGVyRmlsZURyb3Bab25lQ2hhbmdlKCk6IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4ge1xuICAgIHJldHVybiB0aGlzLmRyb3BGaWxlcztcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ092ZXIoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgICB0aGlzLmRyYWdPdmVyLmVtaXQoZXZ0KTtcblxuICAgIGlmICh0aGlzLmRyYWdPdmVyRmlsZXNFbmFibGVkKSB7XG4gICAgICB0aGlzLmNvbGxlY3RGaWxlc0FzeW5jKGV2dCwgZmlsZXMgPT4gdGhpcy5kcmFnT3ZlckZpbGVzLmVtaXQoZmlsZXMpKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcmFnZW5kJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ0VuZChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpOyAvLyBQcmV2ZW50IGRlZmF1bHQgYnJvd3NlciBhY3Rpb25cbiAgICB0aGlzLmhhbmRsZURyYWdFbmQoZXZ0KTtcbiAgICB0aGlzLmRyYWdFbmQuZW1pdChldnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyb3AoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcblxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdEcm9wIGV2ZW50IScsIGV2dCk7XG5cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5oYW5kbGVEcmFnRW5kKGV2dCk7IC8vIFRPRE8gRG8gdGhpcyBsYXRlclxuXG4gICAgaWYgKHRoaXMuZHJvcEZpbGVzRW5hYmxlZCkge1xuICAgICAgdGhpcy5jb2xsZWN0RmlsZXNBc3luYyhldnQsIGZpbGVzID0+IHRoaXMuX2Ryb3BGaWxlcy5lbWl0KGZpbGVzKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBoYW5kbGVEcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGVjdEZpbGVzQXN5bmMoZXZlbnQ6IERyYWdFdmVudCwgZmlsZXNGbjogKChlbnRyaWVzOiBGaWxlRW50cnlbXSkgPT4gdm9pZCkpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBpdGVtcyA9IGV2ZW50LmRhdGFUcmFuc2Zlci5pdGVtcztcbiAgICAgICAgRmlsZUxpc3RpbmdSeC5JTlNUQU5DRS50b0ZpbGVMaXN0KGl0ZW1zKS5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgbmV4dDogZmlsZXMgPT4gdGhpcy5uZ1pvbmUucnVuKCgpID0+IGZpbGVzRm4oZmlsZXMpKSxcbiAgICAgICAgICAgIGVycm9yOiBlcnIgPT4gdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBsaXN0IEZpbGVzIGZyb20gRGF0YVRyYW5zZmVySXRlbUxpc3QnLCBlcnIpXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBoYW5kbGUgRHJhZ0V2ZW50IScsIGVycm9yKTtcbiAgICAgICAgLy8gdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMuZXJyb3IuZW1pdCgnRm9sZGVyIHVwbG9hZCBpcyB1bnN1cHBvcnRlZCBieSB0aGlzIGJyb3dzZXInKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7O0FBS3hELE1BQU0sT0FBTywwQkFBMEI7SUFtQ3JDOzs7O2dGQUk0RTtJQUU1RSxZQUNVLE9BQW1CLEVBQ25CLFFBQW1CLEVBQ25CLE1BQWM7UUFGZCxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQTFDeEI7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFakUscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBRXRELDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUNyQixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFFbkU7O1dBRUc7UUFFYSxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUUxRDs7V0FFRztRQUVhLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBSXpDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBR2pELGtC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Q0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxnREFBZ0QsRUFBRSxHQUFHLENBQUM7aUJBQ3ZGLENBQ0YsQ0FBQzthQUNIO1lBQUMsT0FBTyxLQUFLLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3hELDBGQUEwRjthQUMzRjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7dUhBM0lVLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OElBcUJpQixTQUFTO3NCQUR4QixNQUFNO2dCQU9TLFFBQVE7c0JBRHZCLE1BQU07Z0JBS1MsT0FBTztzQkFEdEIsTUFBTTtnQkFJQSxhQUFhO3NCQURuQixLQUFLO2dCQXVCSyxjQUFjO3NCQUR4QixNQUFNO2dCQU9JLFNBQVM7c0JBRG5CLE1BQU07Z0JBT0ksdUJBQXVCO3NCQURqQyxNQUFNO2dCQVlBLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVU5QixVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFTN0IsU0FBUztzQkFGZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2xDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVE5QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0ZpbGVFbnRyeX0gZnJvbSAnLi9saXN0aW5nL2ZpbGUtZW50cnknO1xuaW1wb3J0IHtGaWxlTGlzdGluZ1J4fSBmcm9tICcuL2xpc3RpbmcvZmlsZS1saXN0aW5nLXJ4JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRmlsZURyb3Bab25lXSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJGaWxlRHJvcFpvbmVEaXJlY3RpdmUge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIGRyb3BGaWxlc0VuYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJvcEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlRW50cnlbXT4oKTtcblxuICBwcml2YXRlIGRyYWdFbnRlckZpbGVzRW5hYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnRW50ZXJGaWxlcyA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVkIG9uY2Ugd2hlbiBkcmFnIHpvbmUgaXMgZW50ZXJlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ0VudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVkIGNvbnRpbnVvdXNseSBpbnNpZGUgZHJhZy16b25lXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGRyYWdPdmVyID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnRXZlbnQ+KCk7XG5cblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGRyYWdFbmQgPSBuZXcgRXZlbnRFbWl0dGVyPERyYWdFdmVudD4oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZHJhZ092ZXJDbGFzcyA9ICdpcy1kcmFnb3Zlcic7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBob3N0UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lXG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgZHJhZ0VudGVyRmlsZXMoKTogRXZlbnRFbWl0dGVyPEZpbGVFbnRyeVtdPiB7XG4gICAgdGhpcy5kcmFnRW50ZXJGaWxlc0VuYWJsZWQgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzLl9kcmFnRW50ZXJGaWxlcztcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGRyb3BGaWxlcygpOiBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+IHtcbiAgICB0aGlzLmRyb3BGaWxlc0VuYWJsZWQgPSB0cnVlO1xuICAgIHJldHVybiB0aGlzLl9kcm9wRmlsZXM7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBlbGRlckZpbGVEcm9wWm9uZUNoYW5nZSgpOiBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+IHtcbiAgICByZXR1cm4gdGhpcy5kcm9wRmlsZXM7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdkcmFnZW50ZXInLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnRW50ZXIoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5kcmFnRW50ZXIuZW1pdChldnQpO1xuICAgIGlmICh0aGlzLmRyYWdFbnRlckZpbGVzRW5hYmxlZCkge1xuICAgICAgdGhpcy5jb2xsZWN0RmlsZXNBc3luYyhldnQsIGZpbGVzID0+IHRoaXMuZHJhZ0VudGVyRmlsZXMuZW1pdChmaWxlcykpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ092ZXIoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgICB0aGlzLmRyYWdPdmVyLmVtaXQoZXZ0KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdlbmQnLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBicm93c2VyIGFjdGlvblxuICAgIHRoaXMuaGFuZGxlRHJhZ0VuZChldnQpO1xuICAgIHRoaXMuZHJhZ0VuZC5lbWl0KGV2dCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJvcChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0Ryb3AgZXZlbnQhJywgZXZ0KTtcblxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmhhbmRsZURyYWdFbmQoZXZ0KTsgLy8gVE9ETyBEbyB0aGlzIGxhdGVyXG5cbiAgICBpZiAodGhpcy5kcm9wRmlsZXNFbmFibGVkKSB7XG4gICAgICB0aGlzLmNvbGxlY3RGaWxlc0FzeW5jKGV2dCwgZmlsZXMgPT4gdGhpcy5fZHJvcEZpbGVzLmVtaXQoZmlsZXMpKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZURyYWdFbmQoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuaG9zdFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLmRyYWdPdmVyQ2xhc3MpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb2xsZWN0RmlsZXNBc3luYyhldmVudDogRHJhZ0V2ZW50LCBmaWxlc0ZuOiAoKGVudHJpZXM6IEZpbGVFbnRyeVtdKSA9PiB2b2lkKSk6IHZvaWQge1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gZXZlbnQuZGF0YVRyYW5zZmVyLml0ZW1zO1xuICAgICAgICBGaWxlTGlzdGluZ1J4LklOU1RBTkNFLnRvRmlsZUxpc3QoaXRlbXMpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiBmaWxlcyA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gZmlsZXNGbihmaWxlcykpLFxuICAgICAgICAgICAgZXJyb3I6IGVyciA9PiB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIGxpc3QgRmlsZXMgZnJvbSBEYXRhVHJhbnNmZXJJdGVtTGlzdCcsIGVycilcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIGhhbmRsZSBEcmFnRXZlbnQhJywgZXJyb3IpO1xuICAgICAgICAvLyB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5lcnJvci5lbWl0KCdGb2xkZXIgdXBsb2FkIGlzIHVuc3VwcG9ydGVkIGJ5IHRoaXMgYnJvd3NlcicpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,7 +1,11 @@
1
1
  import { EMPTY, mergeMap, Observable, of, zip } from 'rxjs';
2
2
  import { FileEntry } from './file-entry';
3
3
  import { map } from 'rxjs/operators';
4
+ import { LoggerFactory } from '@elderbyte/ts-logger';
4
5
  export class FileListingRx {
6
+ constructor() {
7
+ this.log = LoggerFactory.getLogger(this.constructor.name);
8
+ }
5
9
  /***************************************************************************
6
10
  * *
7
11
  * Public API *
@@ -16,7 +20,22 @@ export class FileListingRx {
16
20
  obs.push(this.listFilesRecursive(entry));
17
21
  }
18
22
  else {
19
- obs.push(of([FileEntry.ofFile(transferItem.getAsFile())]));
23
+ const itemAsFile = transferItem.getAsFile();
24
+ if (itemAsFile) {
25
+ obs.push(of([FileEntry.ofFile(itemAsFile)]));
26
+ }
27
+ else {
28
+ if (transferItem.kind == 'file') {
29
+ obs.push(of([
30
+ FileEntry.ofFile(new File([], '', {
31
+ type: transferItem.type
32
+ }))
33
+ ]));
34
+ }
35
+ else {
36
+ this.log.warn('Could not handle DataTransferItem!', transferItem);
37
+ }
38
+ }
20
39
  }
21
40
  }
22
41
  return zip(obs).pipe(map(files => files.flat()));
@@ -82,4 +101,4 @@ export class FileListingRx {
82
101
  }
83
102
  }
84
103
  FileListingRx.INSTANCE = new FileListingRx();
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFjLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxNQUFNLE9BQU8sYUFBYTtJQUl4Qjs7OztnRkFJNEU7SUFFckUsVUFBVSxDQUFDLGdCQUFzQztRQUN0RCxNQUFNLEdBQUcsR0FBOEIsRUFBRSxDQUFDO1FBQzFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDOUMsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMxQztpQkFBTTtnQkFDTCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDNUQ7U0FDRjtRQUNELE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDbEIs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QUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ1AsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdHc0Isc0JBQVEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFTVBUWSwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpYmVyLCB6aXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vZmlsZS1lbnRyeSc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY2xhc3MgRmlsZUxpc3RpbmdSeCB7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJTlNUQU5DRSA9IG5ldyBGaWxlTGlzdGluZ1J4KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHRvRmlsZUxpc3QodHJhbnNmZXJJdGVtTGlzdDogRGF0YVRyYW5zZmVySXRlbUxpc3QpOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgY29uc3Qgb2JzOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPltdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0cmFuc2Zlckl0ZW1MaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB0cmFuc2Zlckl0ZW0gPSB0cmFuc2Zlckl0ZW1MaXN0W2ldO1xuICAgICAgY29uc3QgZW50cnkgPSB0cmFuc2Zlckl0ZW0ud2Via2l0R2V0QXNFbnRyeSgpO1xuICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgIG9icy5wdXNoKHRoaXMubGlzdEZpbGVzUmVjdXJzaXZlKGVudHJ5KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnMucHVzaChvZihbRmlsZUVudHJ5Lm9mRmlsZSh0cmFuc2Zlckl0ZW0uZ2V0QXNGaWxlKCkpXSkpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gemlwKG9icykucGlwZShcbiAgICAgIG1hcChmaWxlcyA9PiBmaWxlcy5mbGF0KCkpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbGlzdEZpbGVzUmVjdXJzaXZlKFxuICAgIGVudHJ5OiBGaWxlU3lzdGVtRW50cnlcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIHJldHVybiB0aGlzLmxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKGVudHJ5LCBudWxsKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgbGlzdEZpbGVzUmVjdXJzaXZlQXN5bmMoXG4gICAgZW50cnk6IEZpbGVTeXN0ZW1FbnRyeSxcbiAgICBwYXJlbnQ6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeVxuICApOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgaWYgKGVudHJ5LmlzRGlyZWN0b3J5KSB7XG4gICAgICBjb25zdCBkaXJlY3RvcnlFbnRyeSA9IGVudHJ5IGFzIEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeTtcbiAgICAgIHJldHVybiB0aGlzLnJlYWRFbnRyaWVzKGRpcmVjdG9yeUVudHJ5KS5waXBlKFxuICAgICAgICBtZXJnZU1hcChlbnRyaWVzID0+IHppcChcbiAgICAgICAgICBlbnRyaWVzLm1hcChlbnRyeSA9PiB0aGlzLmxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKGVudHJ5LCBkaXJlY3RvcnlFbnRyeSkpXG4gICAgICAgICkpLFxuICAgICAgICBtYXAoZmlsZXMgPT4gZmlsZXMuZmxhdCgpKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChlbnRyeS5pc0ZpbGUpIHtcbiAgICAgIGNvbnN0IGZpbGVFbnRyeSA9IGVudHJ5IGFzIEZpbGVTeXN0ZW1GaWxlRW50cnk7XG4gICAgICByZXR1cm4gdGhpcy5vYnNlcnZhYmxlRmlsZShmaWxlRW50cnksIHBhcmVudCkucGlwZShcbiAgICAgICAgbWFwKGZpbGUgPT4gW2ZpbGVdKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIEVNUFRZO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2YWJsZUZpbGUoXG4gICAgZmlsZUVudHJ5OiBGaWxlU3lzdGVtRmlsZUVudHJ5LFxuICAgIHBhcmVudDogRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5IHwgbnVsbFxuICApOiBPYnNlcnZhYmxlPEZpbGVFbnRyeT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxGaWxlRW50cnk+KFxuICAgICAgb2JzZXJ2ZXIgPT4ge1xuICAgICAgICBmaWxlRW50cnkuZmlsZShmaWxlID0+IHtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KEZpbGVFbnRyeS5yZWxhdGl2ZUZpbGUoZmlsZSwgdGhpcy50cmltU3RhcmluZ1NsYXNoKHBhcmVudD8uZnVsbFBhdGgpKSk7XG4gICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHRyaW1TdGFyaW5nU2xhc2gocGF0aDogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgaWYgKHBhdGgpIHtcbiAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgICAgICBwYXRoID0gcGF0aC5zdWJzdHJpbmcoMSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwYXRoO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkRW50cmllcyhcbiAgICBkaXJlY3RvcnlFbnRyeTogRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5XG4gICk6IE9ic2VydmFibGU8RmlsZVN5c3RlbUVudHJ5W10+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8RmlsZVN5c3RlbUVudHJ5W10+KFxuICAgICAgb2JzZXJ2ZXIgPT4ge1xuICAgICAgICB0aGlzLmNvbnN1bWVSZWFkZXJUb0NvbXBsZXRpb24ob2JzZXJ2ZXIsIGRpcmVjdG9yeUVudHJ5LmNyZWF0ZVJlYWRlcigpKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdW1lUmVhZGVyVG9Db21wbGV0aW9uKFxuICAgIG9ic2VydmVyOiBTdWJzY3JpYmVyPEZpbGVTeXN0ZW1FbnRyeVtdPixcbiAgICBkaXJlY3RvcnlSZWFkZXI6IEZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXJcbiAgKTogdm9pZCB7XG4gICAgZGlyZWN0b3J5UmVhZGVyLnJlYWRFbnRyaWVzKGVudHJpZXMgPT4ge1xuICAgICAgaWYgKGVudHJpZXMgJiYgZW50cmllcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIG9ic2VydmVyLm5leHQoZW50cmllcyk7XG4gICAgICAgIHRoaXMuY29uc3VtZVJlYWRlclRvQ29tcGxldGlvbihvYnNlcnZlciwgZGlyZWN0b3J5UmVhZGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9XG4gICAgfSwgZXJyID0+IHtcbiAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XG4gICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFjLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsTUFBTSxPQUFPLGFBQWE7SUFBMUI7UUFJbUIsUUFBRyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQThIeEUsQ0FBQztJQTVIQzs7OztnRkFJNEU7SUFFckUsVUFBVSxDQUFDLGdCQUFzQztRQUN0RCxNQUFNLEdBQUcsR0FBOEIsRUFBRSxDQUFDO1FBQzFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDOUMsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMxQztpQkFBTTtnQkFDTCxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMs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SSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDMUI7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFdBQVcsQ0FDakIsY0FBd0M7UUFFeEMsT0FBTyxJQUFJLFVBQVUsQ0FDbkIsUUFBUSxDQUFDLEVBQUU7WUFDVCxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxFQUFFLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLHlCQUF5QixDQUMvQixRQUF1QyxFQUN2QyxlQUEwQztRQUUxQyxlQUFlLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN2QixJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxDQUFDO2FBQzNEO2lCQUFNO2dCQUNMLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNyQjtRQUNILENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUNQLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUE5SHNCLHNCQUFRLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RU1QVFksIG1lcmdlTWFwLCBPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaWJlciwgemlwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7RmlsZUVudHJ5fSBmcm9tICcuL2ZpbGUtZW50cnknO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuXG5leHBvcnQgY2xhc3MgRmlsZUxpc3RpbmdSeCB7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJTlNUQU5DRSA9IG5ldyBGaWxlTGlzdGluZ1J4KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyB0b0ZpbGVMaXN0KHRyYW5zZmVySXRlbUxpc3Q6IERhdGFUcmFuc2Zlckl0ZW1MaXN0KTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGNvbnN0IG9iczogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT5bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJhbnNmZXJJdGVtTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgdHJhbnNmZXJJdGVtID0gdHJhbnNmZXJJdGVtTGlzdFtpXTtcbiAgICAgIGNvbnN0IGVudHJ5ID0gdHJhbnNmZXJJdGVtLndlYmtpdEdldEFzRW50cnkoKTtcbiAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICBvYnMucHVzaCh0aGlzLmxpc3RGaWxlc1JlY3Vyc2l2ZShlbnRyeSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgaXRlbUFzRmlsZSA9IHRyYW5zZmVySXRlbS5nZXRBc0ZpbGUoKTtcbiAgICAgICAgaWYgKGl0ZW1Bc0ZpbGUpIHtcbiAgICAgICAgICBvYnMucHVzaChvZihbRmlsZUVudHJ5Lm9mRmlsZShpdGVtQXNGaWxlKV0pKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAodHJhbnNmZXJJdGVtLmtpbmQgPT0gJ2ZpbGUnKSB7XG4gICAgICAgICAgICBvYnMucHVzaChvZihbXG4gICAgICAgICAgICAgIEZpbGVFbnRyeS5vZkZpbGUoXG4gICAgICAgICAgICAgICAgbmV3IEZpbGUoW10sICcnLCB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiB0cmFuc2Zlckl0ZW0udHlwZVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0pKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5sb2cud2FybignQ291bGQgbm90IGhhbmRsZSBEYXRhVHJhbnNmZXJJdGVtIScsIHRyYW5zZmVySXRlbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB6aXAob2JzKS5waXBlKFxuICAgICAgbWFwKGZpbGVzID0+IGZpbGVzLmZsYXQoKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBsaXN0RmlsZXNSZWN1cnNpdmUoXG4gICAgZW50cnk6IEZpbGVTeXN0ZW1FbnRyeVxuICApOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdEZpbGVzUmVjdXJzaXZlQXN5bmMoZW50cnksIG51bGwpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBsaXN0RmlsZXNSZWN1cnNpdmVBc3luYyhcbiAgICBlbnRyeTogRmlsZVN5c3RlbUVudHJ5LFxuICAgIHBhcmVudDogRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5XG4gICk6IE9ic2VydmFibGU8RmlsZUVudHJ5W10+IHtcbiAgICBpZiAoZW50cnkuaXNEaXJlY3RvcnkpIHtcbiAgICAgIGNvbnN0IGRpcmVjdG9yeUVudHJ5ID0gZW50cnkgYXMgRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5O1xuICAgICAgcmV0dXJuIHRoaXMucmVhZEVudHJpZXMoZGlyZWN0b3J5RW50cnkpLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKGVudHJpZXMgPT4gemlwKFxuICAgICAgICAgIGVudHJpZXMubWFwKGVudHJ5ID0+IHRoaXMubGlzdEZpbGVzUmVjdXJzaXZlQXN5bmMoZW50cnksIGRpcmVjdG9yeUVudHJ5KSlcbiAgICAgICAgKSksXG4gICAgICAgIG1hcChmaWxlcyA9PiBmaWxlcy5mbGF0KCkpLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGVudHJ5LmlzRmlsZSkge1xuICAgICAgY29uc3QgZmlsZUVudHJ5ID0gZW50cnkgYXMgRmlsZVN5c3RlbUZpbGVFbnRyeTtcbiAgICAgIHJldHVybiB0aGlzLm9ic2VydmFibGVGaWxlKGZpbGVFbnRyeSwgcGFyZW50KS5waXBlKFxuICAgICAgICBtYXAoZmlsZSA9PiBbZmlsZV0pXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRU1QVFk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZhYmxlRmlsZShcbiAgICBmaWxlRW50cnk6IEZpbGVTeXN0ZW1GaWxlRW50cnksXG4gICAgcGFyZW50OiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnkgfCBudWxsXG4gICk6IE9ic2VydmFibGU8RmlsZUVudHJ5PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEZpbGVFbnRyeT4oXG4gICAgICBvYnNlcnZlciA9PiB7XG4gICAgICAgIGZpbGVFbnRyeS5maWxlKGZpbGUgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoRmlsZUVudHJ5LnJlbGF0aXZlRmlsZShmaWxlLCB0aGlzLnRyaW1TdGFyaW5nU2xhc2gocGFyZW50Py5mdWxsUGF0aCkpKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XG4gICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgdHJpbVN0YXJpbmdTbGFzaChwYXRoOiBzdHJpbmcgfCBudWxsKTogc3RyaW5nIHtcbiAgICBpZiAocGF0aCkge1xuICAgICAgaWYgKHBhdGguc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICAgIHBhdGggPSBwYXRoLnN1YnN0cmluZygxKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICBwcml2YXRlIHJlYWRFbnRyaWVzKFxuICAgIGRpcmVjdG9yeUVudHJ5OiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnlcbiAgKTogT2JzZXJ2YWJsZTxGaWxlU3lzdGVtRW50cnlbXT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxGaWxlU3lzdGVtRW50cnlbXT4oXG4gICAgICBvYnNlcnZlciA9PiB7XG4gICAgICAgIHRoaXMuY29uc3VtZVJlYWRlclRvQ29tcGxldGlvbihvYnNlcnZlciwgZGlyZWN0b3J5RW50cnkuY3JlYXRlUmVhZGVyKCkpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGNvbnN1bWVSZWFkZXJUb0NvbXBsZXRpb24oXG4gICAgb2JzZXJ2ZXI6IFN1YnNjcmliZXI8RmlsZVN5c3RlbUVudHJ5W10+LFxuICAgIGRpcmVjdG9yeVJlYWRlcjogRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlclxuICApOiB2b2lkIHtcbiAgICBkaXJlY3RvcnlSZWFkZXIucmVhZEVudHJpZXMoZW50cmllcyA9PiB7XG4gICAgICBpZiAoZW50cmllcyAmJiBlbnRyaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChlbnRyaWVzKTtcbiAgICAgICAgdGhpcy5jb25zdW1lUmVhZGVyVG9Db21wbGV0aW9uKG9ic2VydmVyLCBkaXJlY3RvcnlSZWFkZXIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgIH1cbiAgICB9LCBlcnIgPT4ge1xuICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgfSk7XG4gIH1cblxufVxuIl19
@@ -9946,6 +9946,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
9946
9946
  }] } });
9947
9947
 
9948
9948
  class FileListingRx {
9949
+ constructor() {
9950
+ this.log = LoggerFactory.getLogger(this.constructor.name);
9951
+ }
9949
9952
  /***************************************************************************
9950
9953
  * *
9951
9954
  * Public API *
@@ -9960,7 +9963,22 @@ class FileListingRx {
9960
9963
  obs.push(this.listFilesRecursive(entry));
9961
9964
  }
9962
9965
  else {
9963
- obs.push(of([FileEntry.ofFile(transferItem.getAsFile())]));
9966
+ const itemAsFile = transferItem.getAsFile();
9967
+ if (itemAsFile) {
9968
+ obs.push(of([FileEntry.ofFile(itemAsFile)]));
9969
+ }
9970
+ else {
9971
+ if (transferItem.kind == 'file') {
9972
+ obs.push(of([
9973
+ FileEntry.ofFile(new File([], '', {
9974
+ type: transferItem.type
9975
+ }))
9976
+ ]));
9977
+ }
9978
+ else {
9979
+ this.log.warn('Could not handle DataTransferItem!', transferItem);
9980
+ }
9981
+ }
9964
9982
  }
9965
9983
  }
9966
9984
  return zip(obs).pipe(map(files => files.flat()));
@@ -10045,8 +10063,15 @@ class ElderFileDropZoneDirective {
10045
10063
  this.logger = LoggerFactory.getLogger(this.constructor.name);
10046
10064
  this.dropFilesEnabled = false;
10047
10065
  this._dropFiles = new EventEmitter();
10048
- this.dragOverFilesEnabled = false;
10049
- this._dragOverFiles = new EventEmitter();
10066
+ this.dragEnterFilesEnabled = false;
10067
+ this._dragEnterFiles = new EventEmitter();
10068
+ /**
10069
+ * Fired once when drag zone is entered.
10070
+ */
10071
+ this.dragEnter = new EventEmitter();
10072
+ /**
10073
+ * Fired continuously inside drag-zone
10074
+ */
10050
10075
  this.dragOver = new EventEmitter();
10051
10076
  this.dragEnd = new EventEmitter();
10052
10077
  this.dragOverClass = 'is-dragover';
@@ -10056,9 +10081,9 @@ class ElderFileDropZoneDirective {
10056
10081
  * Properties *
10057
10082
  * *
10058
10083
  **************************************************************************/
10059
- get dragOverFiles() {
10060
- this.dragOverFilesEnabled = true;
10061
- return this._dragOverFiles;
10084
+ get dragEnterFiles() {
10085
+ this.dragEnterFilesEnabled = true;
10086
+ return this._dragEnterFiles;
10062
10087
  }
10063
10088
  get dropFiles() {
10064
10089
  this.dropFilesEnabled = true;
@@ -10072,13 +10097,17 @@ class ElderFileDropZoneDirective {
10072
10097
  * Public API *
10073
10098
  * *
10074
10099
  **************************************************************************/
10100
+ onDragEnter(evt) {
10101
+ evt.preventDefault(); // Prevent default browser action
10102
+ this.dragEnter.emit(evt);
10103
+ if (this.dragEnterFilesEnabled) {
10104
+ this.collectFilesAsync(evt, files => this.dragEnterFiles.emit(files));
10105
+ }
10106
+ }
10075
10107
  onDragOver(evt) {
10076
10108
  evt.preventDefault(); // Prevent default browser action
10077
10109
  this.renderer.addClass(this.hostRef.nativeElement, this.dragOverClass);
10078
10110
  this.dragOver.emit(evt);
10079
- if (this.dragOverFilesEnabled) {
10080
- this.collectFilesAsync(evt, files => this.dragOverFiles.emit(files));
10081
- }
10082
10111
  }
10083
10112
  onDragEnd(evt) {
10084
10113
  evt.preventDefault(); // Prevent default browser action
@@ -10119,24 +10148,29 @@ class ElderFileDropZoneDirective {
10119
10148
  }
10120
10149
  }
10121
10150
  ElderFileDropZoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderFileDropZoneDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
10122
- ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { dragOver: "dragOver", dragEnd: "dragEnd", dragOverFiles: "dragOverFiles", dropFiles: "dropFiles", elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
10151
+ ElderFileDropZoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: { dragOverClass: "dragOverClass" }, outputs: { dragEnter: "dragEnter", dragOver: "dragOver", dragEnd: "dragEnd", dragEnterFiles: "dragEnterFiles", dropFiles: "dropFiles", elderFileDropZoneChange: "elderFileDropZoneChange" }, host: { listeners: { "dragenter": "onDragEnter($event)", "dragover": "onDragOver($event)", "dragend": "onDragEnd($event)", "dragleave": "onDragEnd($event)", "drop": "onDrop($event)" } }, ngImport: i0 });
10123
10152
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderFileDropZoneDirective, decorators: [{
10124
10153
  type: Directive,
10125
10154
  args: [{
10126
10155
  selector: '[elderFileDropZone]'
10127
10156
  }]
10128
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { dragOver: [{
10157
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { dragEnter: [{
10158
+ type: Output
10159
+ }], dragOver: [{
10129
10160
  type: Output
10130
10161
  }], dragEnd: [{
10131
10162
  type: Output
10132
10163
  }], dragOverClass: [{
10133
10164
  type: Input
10134
- }], dragOverFiles: [{
10165
+ }], dragEnterFiles: [{
10135
10166
  type: Output
10136
10167
  }], dropFiles: [{
10137
10168
  type: Output
10138
10169
  }], elderFileDropZoneChange: [{
10139
10170
  type: Output
10171
+ }], onDragEnter: [{
10172
+ type: HostListener,
10173
+ args: ['dragenter', ['$event']]
10140
10174
  }], onDragOver: [{
10141
10175
  type: HostListener,
10142
10176
  args: ['dragover', ['$event']]
@@ -10714,7 +10748,7 @@ class ElderDropZoneComponent {
10714
10748
  * Fields *
10715
10749
  * *
10716
10750
  **************************************************************************/
10717
- this.logger = LoggerFactory.getLogger(this.constructor.name);
10751
+ this.log = LoggerFactory.getLogger(this.constructor.name);
10718
10752
  this.filesDropped = new EventEmitter();
10719
10753
  this.dragOver = new EventEmitter();
10720
10754
  this.dragEnd = new EventEmitter();
@@ -10723,7 +10757,7 @@ class ElderDropZoneComponent {
10723
10757
  }
10724
10758
  }
10725
10759
  ElderDropZoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDropZoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10726
- ElderDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDropZoneComponent, selector: "elder-drop-zone", inputs: { icon: "icon", prompt: "prompt" }, outputs: { filesDropped: "filesDropped", dragOver: "dragOver", dragEnd: "dragEnd" }, ngImport: i0, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: ["dragOverClass"], outputs: ["dragOver", "dragEnd", "dragOverFiles", "dropFiles", "elderFileDropZoneChange"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10760
+ ElderDropZoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDropZoneComponent, selector: "elder-drop-zone", inputs: { icon: "icon", prompt: "prompt" }, outputs: { filesDropped: "filesDropped", dragOver: "dragOver", dragEnd: "dragEnd" }, ngImport: i0, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n", styles: [""], dependencies: [{ kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: ElderFileDropZoneDirective, selector: "[elderFileDropZone]", inputs: ["dragOverClass"], outputs: ["dragEnter", "dragOver", "dragEnd", "dragEnterFiles", "dropFiles", "elderFileDropZoneChange"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10727
10761
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDropZoneComponent, decorators: [{
10728
10762
  type: Component,
10729
10763
  args: [{ selector: 'elder-drop-zone', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"full p-lg\"\n>\n <div class=\"layout-col full elder-drop-zone\"\n elderFileDropZone\n (dropFiles)=\"filesDropped.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n (dragEnd)=\"dragEnd.emit($event)\"\n >\n <div class=\"layout-col flex\">\n <ng-content></ng-content>\n <!-- Default content -->\n <div class=\"layout-col flex place-center-center gap-sm elder-default-content\">\n <mat-icon class=\"elder-drop-zone-icon\">{{icon}}</mat-icon>\n <span class=\"elder-drop-zone-prompt\">{{prompt | translate}}</span>\n </div>\n </div>\n </div>\n</div>\n\n\n" }]
@@ -10746,24 +10780,42 @@ class GlobalDragDropService {
10746
10780
  * *
10747
10781
  **************************************************************************/
10748
10782
  constructor() {
10783
+ /***************************************************************************
10784
+ * *
10785
+ * Fields *
10786
+ * *
10787
+ **************************************************************************/
10788
+ this.log = LoggerFactory.getLogger(this.constructor.name);
10789
+ this._onDragStart$ = fromEvent(window, 'dragstart');
10749
10790
  this._onDragOver$ = fromEvent(window, 'dragover');
10791
+ this._onDragEnter$ = fromEvent(window, 'dragenter');
10750
10792
  this._onDragLeave$ = fromEvent(window, 'dragleave');
10751
10793
  this._onDrop$ = fromEvent(window, 'drop');
10794
+ this._onDragEnd$ = fromEvent(window, 'dragend');
10752
10795
  }
10753
10796
  /***************************************************************************
10754
10797
  * *
10755
10798
  * Properties *
10756
10799
  * *
10757
10800
  **************************************************************************/
10801
+ get dragStart$() {
10802
+ return this._onDragStart$;
10803
+ }
10758
10804
  get dragOver$() {
10759
10805
  return this._onDragOver$;
10760
10806
  }
10761
10807
  get dragLeave$() {
10762
10808
  return this._onDragLeave$;
10763
10809
  }
10810
+ get dragEnter$() {
10811
+ return this._onDragEnter$;
10812
+ }
10764
10813
  get drop$() {
10765
10814
  return this._onDrop$;
10766
10815
  }
10816
+ get dragEnd$() {
10817
+ return this._onDragEnd$;
10818
+ }
10767
10819
  /***************************************************************************
10768
10820
  * *
10769
10821
  * Public API *
@@ -10777,11 +10829,20 @@ class GlobalDragDropService {
10777
10829
  preventDefaultFileLoading() {
10778
10830
  if (!this.preventDefaultsSub) {
10779
10831
  this.preventDefaultsSub = {
10780
- preventDragOver: this.dragOver$.subscribe({ next: e => e.preventDefault() }),
10781
- preventDrop: this.drop$.subscribe({ next: e => e.preventDefault() })
10832
+ preventDragOver: this.dragOver$.subscribe({ next: e => this.preventDefaultBrowserAction(e) }),
10833
+ preventDrop: this.drop$.subscribe({ next: e => this.preventDefaultBrowserAction(e) })
10782
10834
  };
10783
10835
  }
10784
10836
  }
10837
+ /***************************************************************************
10838
+ * *
10839
+ * Private methods *
10840
+ * *
10841
+ **************************************************************************/
10842
+ preventDefaultBrowserAction(e) {
10843
+ e.preventDefault();
10844
+ this.log.warn('Prevented default Browser Action on DragEvent ', e);
10845
+ }
10785
10846
  }
10786
10847
  GlobalDragDropService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: GlobalDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10787
10848
  GlobalDragDropService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: GlobalDragDropService, providedIn: 'root' });