@elderbyte/ngx-starter 15.7.1 → 15.7.2

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.
@@ -77,7 +77,7 @@ export class ElderFileDropZoneDirective {
77
77
  obs.push(FileListingRx.INSTANCE.listFilesRecursive(entry));
78
78
  }
79
79
  else {
80
- obs.push(of([new FileEntry(transferItem.getAsFile(), null)]));
80
+ obs.push(of([FileEntry.ofFile(transferItem.getAsFile())]));
81
81
  }
82
82
  }
83
83
  return zip(obs).pipe(map(files => files.flat()));
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
107
107
  type: HostListener,
108
108
  args: ['drop', ['$event']]
109
109
  }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQ08sRUFBRSxFQUNkLEdBQUcsRUFDSixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQVF4RCxNQUFNLE9BQU8sMEJBQTBCO0lBZ0JyQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxPQUFtQixFQUNuQixRQUFtQixFQUNuQixNQUFjO1FBRmQsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUF2QnhCOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBR3pELDRCQUF1QixHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFHbkUsa0JBQWEsR0FBRyxhQUFhLENBQUM7SUFhckMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUdyRSxVQUFVLENBQUMsR0FBYztRQUM5QixHQUFHLENBQUMsY0FB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QTBCOzJHQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs4SUFZaUIsdUJBQXVCO3NCQUR0QyxNQUFNO2dCQUlBLGFBQWE7c0JBRG5CLEtBQUs7Z0JBdUJDLFVBQVU7c0JBRGhCLFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVE3QixTQUFTO3NCQUZmLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDbEMsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTzlCLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFJlbmRlcmVyMn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsIG9mLFxuICB6aXBcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vbGlzdGluZy9maWxlLWVudHJ5JztcbmltcG9ydCB7RmlsZUxpc3RpbmdSeH0gZnJvbSAnLi9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeCc7XG5cblxuXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckZpbGVEcm9wWm9uZV0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbGRlckZpbGVEcm9wWm9uZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRyYWdPdmVyQ2xhc3MgPSAnaXMtZHJhZ292ZXInO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxuICApIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ092ZXIoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGJyb3dzZXIgYWN0aW9uXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdlbmQnLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25EcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBicm93c2VyIGFjdGlvblxuICAgIHRoaXMuZHJhZ0VuZChldnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyb3AoZXZ0OiBEcmFnRXZlbnQpOiB2b2lkIHtcblxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdEcm9wIGV2ZW50IScsIGV2dCk7XG5cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5kcmFnRW5kKGV2dCk7IC8vIFRPRE8gRG8gdGhpcyBsYXRlclxuXG4gICAgdGhpcy5jb2xsZWN0RmlsZXNBc3luYyhldnQpO1xuICAgIC8vIHRoaXMubG9nZ2VyLmRlYnVnKCdVc2VyIGRyb3BwZWQgJyArIGZpbGVzLnNpemUgKyAnZmlsZXMhJywgZmlsZXMpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBkcmFnRW5kKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5kcmFnT3ZlckNsYXNzKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGVjdEZpbGVzQXN5bmMoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gZXZlbnQuZGF0YVRyYW5zZmVyLml0ZW1zO1xuICAgICAgICB0aGlzLnRvRmlsZUxpc3QoaXRlbXMpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiBmaWxlcyA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT5cbiAgICAgICAgICAgICAgdGhpcy5lbGRlckZpbGVEcm9wWm9uZUNoYW5nZS5lbWl0KGZpbGVzKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGVycm9yOiBlcnIgPT4gdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBsaXN0IEZpbGVzIGZyb20gRGF0YVRyYW5zZmVySXRlbUxpc3QnLCBlcnIpXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBoYW5kbGUgRHJhZ0V2ZW50IScsIGVycm9yKTtcbiAgICAgICAgLy8gdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMuZXJyb3IuZW1pdCgnRm9sZGVyIHVwbG9hZCBpcyB1bnN1cHBvcnRlZCBieSB0aGlzIGJyb3dzZXInKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHRvRmlsZUxpc3QodHJhbnNmZXJJdGVtTGlzdDogRGF0YVRyYW5zZmVySXRlbUxpc3QpOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgY29uc3Qgb2JzOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPltdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0cmFuc2Zlckl0ZW1MaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB0cmFuc2Zlckl0ZW0gPSB0cmFuc2Zlckl0ZW1MaXN0W2ldO1xuICAgICAgY29uc3QgZW50cnkgPSB0cmFuc2Zlckl0ZW0ud2Via2l0R2V0QXNFbnRyeSgpO1xuICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgIG9icy5wdXNoKEZpbGVMaXN0aW5nUnguSU5TVEFOQ0UubGlzdEZpbGVzUmVjdXJzaXZlKGVudHJ5KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnMucHVzaChvZihbbmV3IEZpbGVFbnRyeSh0cmFuc2Zlckl0ZW0uZ2V0QXNGaWxlKCksIG51bGwpXSkpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gemlwKG9icykucGlwZShcbiAgICAgIG1hcChmaWxlcyA9PiBmaWxlcy5mbGF0KCkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1kcm9wLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBNkIsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQ08sRUFBRSxFQUNkLEdBQUcsRUFDSixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUt4RCxNQUFNLE9BQU8sMEJBQTBCO0lBZ0JyQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxPQUFtQixFQUNuQixRQUFtQixFQUNuQixNQUFjO1FBRmQsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUF2QnhCOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBR3pELDRCQUF1QixHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFHbkUsa0JBQWEsR0FBRyxhQUFhLENBQUM7SUFhckMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUdyRSxVQUFVLENBQUMsR0FBYztRQUM5QixHQUFHLENBQUMsY0FB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R0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OElBWWlCLHVCQUF1QjtzQkFEdEMsTUFBTTtnQkFJQSxhQUFhO3NCQURuQixLQUFLO2dCQXVCQyxVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRN0IsU0FBUztzQkFGZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2xDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU85QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlLCBvZixcbiAgemlwXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RmlsZUVudHJ5fSBmcm9tICcuL2xpc3RpbmcvZmlsZS1lbnRyeSc7XG5pbXBvcnQge0ZpbGVMaXN0aW5nUnh9IGZyb20gJy4vbGlzdGluZy9maWxlLWxpc3RpbmctcngnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJGaWxlRHJvcFpvbmVdJ1xufSlcbmV4cG9ydCBjbGFzcyBFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZWxkZXJGaWxlRHJvcFpvbmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVFbnRyeVtdPigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkcmFnT3ZlckNsYXNzID0gJ2lzLWRyYWdvdmVyJztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyYWdPdmVyKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBicm93c2VyIGFjdGlvblxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZHJhZ092ZXJDbGFzcyk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkcmFnZW5kJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ0VuZChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpOyAvLyBQcmV2ZW50IGRlZmF1bHQgYnJvd3NlciBhY3Rpb25cbiAgICB0aGlzLmRyYWdFbmQoZXZ0KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2Ryb3AnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25Ecm9wKGV2dDogRHJhZ0V2ZW50KTogdm9pZCB7XG5cbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnRHJvcCBldmVudCEnLCBldnQpO1xuXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZHJhZ0VuZChldnQpOyAvLyBUT0RPIERvIHRoaXMgbGF0ZXJcblxuICAgIHRoaXMuY29sbGVjdEZpbGVzQXN5bmMoZXZ0KTtcbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnVXNlciBkcm9wcGVkICcgKyBmaWxlcy5zaXplICsgJ2ZpbGVzIScsIGZpbGVzKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZHJhZ0VuZChldnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5ob3N0UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZHJhZ092ZXJDbGFzcyk7XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RGaWxlc0FzeW5jKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBpdGVtcyA9IGV2ZW50LmRhdGFUcmFuc2Zlci5pdGVtcztcbiAgICAgICAgdGhpcy50b0ZpbGVMaXN0KGl0ZW1zKS5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgbmV4dDogZmlsZXMgPT4gdGhpcy5uZ1pvbmUucnVuKCgpID0+XG4gICAgICAgICAgICAgIHRoaXMuZWxkZXJGaWxlRHJvcFpvbmVDaGFuZ2UuZW1pdChmaWxlcylcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBlcnJvcjogZXJyID0+IHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gbGlzdCBGaWxlcyBmcm9tIERhdGFUcmFuc2Zlckl0ZW1MaXN0JywgZXJyKVxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gaGFuZGxlIERyYWdFdmVudCEnLCBlcnJvcik7XG4gICAgICAgIC8vIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLmVycm9yLmVtaXQoJ0ZvbGRlciB1cGxvYWQgaXMgdW5zdXBwb3J0ZWQgYnkgdGhpcyBicm93c2VyJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB0b0ZpbGVMaXN0KHRyYW5zZmVySXRlbUxpc3Q6IERhdGFUcmFuc2Zlckl0ZW1MaXN0KTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGNvbnN0IG9iczogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT5bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJhbnNmZXJJdGVtTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgdHJhbnNmZXJJdGVtID0gdHJhbnNmZXJJdGVtTGlzdFtpXTtcbiAgICAgIGNvbnN0IGVudHJ5ID0gdHJhbnNmZXJJdGVtLndlYmtpdEdldEFzRW50cnkoKTtcbiAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICBvYnMucHVzaChGaWxlTGlzdGluZ1J4LklOU1RBTkNFLmxpc3RGaWxlc1JlY3Vyc2l2ZShlbnRyeSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JzLnB1c2gob2YoW0ZpbGVFbnRyeS5vZkZpbGUodHJhbnNmZXJJdGVtLmdldEFzRmlsZSgpKV0pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHppcChvYnMpLnBpcGUoXG4gICAgICBtYXAoZmlsZXMgPT4gZmlsZXMuZmxhdCgpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
2
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
3
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
+ import { FileEntry } from './listing/file-entry';
4
5
  import * as i0 from "@angular/core";
5
6
  export class ElderFileSelectDirective {
6
7
  /***************************************************************************
@@ -113,7 +114,7 @@ export class ElderFileSelectDirective {
113
114
  }
114
115
  fileInputChanged(event) {
115
116
  const fileList = this._fileInput.files;
116
- const files = this.toArray(fileList);
117
+ const files = this.toFileEntries(fileList);
117
118
  this.logger.debug('fileInputChanged, files:', files);
118
119
  this.emitFileList(files);
119
120
  this.clearFileList();
@@ -125,17 +126,17 @@ export class ElderFileSelectDirective {
125
126
  emitFileList(files) {
126
127
  if (files.length > 0) {
127
128
  this.elderFileSelectChange.next(files);
128
- this.elderSingleFileSelectChange.emit(files[0]);
129
+ this.elderSingleFileSelectChange.emit(files[0].file);
129
130
  }
130
131
  else {
131
132
  this.logger.warn('User did not select any File or the Folder was empty.');
132
133
  }
133
134
  }
134
- toArray(fileList) {
135
+ toFileEntries(fileList) {
135
136
  const files = [];
136
137
  for (const key in fileList) {
137
138
  if (!isNaN(parseInt(key, 0))) {
138
- files.push(fileList[key]);
139
+ files.push(FileEntry.ofFile(fileList[key]));
139
140
  }
140
141
  }
141
142
  return files;
@@ -162,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
162
163
  type: HostListener,
163
164
  args: ['click', ['$event']]
164
165
  }] } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBZSxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQUsxRSxNQUFNLE9BQU8sd0JBQXdCO0lBdUJuQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxFQUFjLEVBQ2QsUUFBbUI7UUFEbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7UUE3QjdCOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBTXpELDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFHbkQsZ0NBQTJCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQWdCdkUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUNXLGVBQWUsQ0FBQyxLQUFhO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLFVB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QztRQUN6QixLQUFLLE1BQU0sR0FBRyxJQUFJLFFBQVEsRUFBRTtZQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDNUIsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUMzQjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztxSEF0TFUsd0JBQXdCO3lHQUF4Qix3QkFBd0I7MkZBQXhCLHdCQUF3QjtrQkFIcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2lCQUM5Qjt5SEFlaUIscUJBQXFCO3NCQURwQyxNQUFNO2dCQUlTLDJCQUEyQjtzQkFEMUMsTUFBTTtnQkF3Q0ksZUFBZTtzQkFEekIsS0FBSztnQkFTSyx1QkFBdUI7c0JBRGpDLEtBQUs7Z0JBY0ssd0JBQXdCO3NCQURsQyxLQUFLO2dCQWdCQyxPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRmlsZVNlbGVjdF0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfZmlsZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50O1xuICBwcml2YXRlIF91bmxpc3RlbjogKCkgPT4gdm9pZDtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVsZGVyRmlsZVNlbGVjdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZWxkZXJTaW5nbGVGaWxlU2VsZWN0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuXG4gIHByaXZhdGUgX211bHRpcGxlOiBib29sZWFuO1xuICBwcml2YXRlIF9kaXJlY3Rvcnk6IGJvb2xlYW47XG4gIHByaXZhdGUgX2FjY2VwdDogc3RyaW5nO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyXG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY3JlYXRlRmlsZVNlbGVjdCgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMucmVtb3ZlRmlsZVNlbGVjdCgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbGRlckZpbGVTZWxlY3QodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2FjY2VwdCA9IHZhbHVlO1xuICAgIGlmICh0aGlzLl9maWxlSW5wdXQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZmlsZUlucHV0LCAnYWNjZXB0JywgdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZWxkZXJGaWxlU2VsZWN0TXVsdGlwbGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX211bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5fZmlsZUlucHV0KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX2ZpbGVJbnB1dCwgJ211bHRpcGxlJywgdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvdyB0aGUgdXNlciB0byBzZWxlY3QgYSBkaXJlY3RvcnkuIEFsbCBmaWxlcyB0aGF0IGFyZSByZWN1cnNpdmVseSBjb250YWluZWQgYXJlIHNlbGVjdGVkLlxuICAgKiBIb3dldmVyLCB0aGUgdXNlciB3aWxsIG5vIGxvbmdlciBiZSBhYmxlIHRvIHNlbGVjdCBpbmRpdmlkdWFsIGZpbGVzIGlmIHRoaXMgaXMgZW5hYmxlZC5cbiAgICogQHBhcmFtIHZhbHVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVsZGVyRmlsZVNlbGVjdERpcmVjdG9yeSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlyZWN0b3J5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5fZmlsZUlucHV0KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9maWxlSW5wdXQsICd3ZWJraXRkaXJlY3RvcnknLCAndHJ1ZScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZmlsZUlucHV0LCAnZGlyZWN0b3J5JywgJ3RydWUnKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5GaWxlU2VsZWN0RGlhbG9nKCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbkZpbGVTZWxlY3REaWFsb2coKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsZUlucHV0LmNsaWNrKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogPGlucHV0IHR5cGU9XCJmaWxlXCJcbiAgICogICAgIGhpZGRlbiAjZmlsZUlucHV0XG4gICAqICAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxuICAgKiAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgKiAgICAgKGNoYW5nZSk9XCJmaWxlSW5wdXRDaGFuZ2VkKClcIlxuICAgKiAvPlxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVGaWxlU2VsZWN0KCk6IHZvaWQge1xuXG4gICAgdGhpcy5fZmlsZUlucHV0ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuX2ZpbGVJbnB1dCwgJ2hpZGRlbicsICd0cnVlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZmlsZUlucHV0LCAndHlwZScsICdmaWxlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMuX2ZpbGVJbnB1dCk7XG5cbiAgICBpZiAodGhpcy5fYWNjZXB0KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX2ZpbGVJbnB1dCwgJ2FjY2VwdCcsIHRoaXMuX2FjY2VwdCk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9tdWx0aXBsZSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLl9maWxlSW5wdXQsICdtdWx0aXBsZScsIHRoaXMuX211bHRpcGxlKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2RpcmVjdG9yeSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZmlsZUlucHV0LCAnd2Via2l0ZGlyZWN0b3J5JywgJ3RydWUnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuX2ZpbGVJbnB1dCwgJ2RpcmVjdG9yeScsICd0cnVlJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fdW5saXN0ZW4gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgIHRoaXMuX2ZpbGVJbnB1dCxcbiAgICAgICdjaGFuZ2UnLFxuICAgICAgZXZlbnQgPT4gdGhpcy5maWxlSW5wdXRDaGFuZ2VkKGV2ZW50KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUZpbGVTZWxlY3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3VubGlzdGVuKSB7XG4gICAgICB0aGlzLl91bmxpc3RlbigpO1xuICAgICAgdGhpcy5fdW5saXN0ZW4gPSBudWxsO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZmlsZUlucHV0KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy5fZmlsZUlucHV0KTtcbiAgICAgIHRoaXMuX2ZpbGVJbnB1dCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaWxlSW5wdXRDaGFuZ2VkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBmaWxlTGlzdCA9IHRoaXMuX2ZpbGVJbnB1dC5maWxlcztcbiAgICBjb25zdCBmaWxlcyA9IHRoaXMudG9BcnJheShmaWxlTGlzdCk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ2ZpbGVJbnB1dENoYW5nZWQsIGZpbGVzOicsIGZpbGVzKTtcbiAgICB0aGlzLmVtaXRGaWxlTGlzdChmaWxlcyk7XG4gICAgdGhpcy5jbGVhckZpbGVMaXN0KCk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyRmlsZUxpc3QoKSB7XG4gICAgLy8gbm90IG5pY2UgYnV0IHdvcmtzXG4gICAgdGhpcy5fZmlsZUlucHV0LnZhbHVlID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZpbGVMaXN0KGZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICBpZiAoZmlsZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5lbGRlckZpbGVTZWxlY3RDaGFuZ2UubmV4dChmaWxlcyk7XG4gICAgICB0aGlzLmVsZGVyU2luZ2xlRmlsZVNlbGVjdENoYW5nZS5lbWl0KFxuICAgICAgICBmaWxlc1swXVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIud2FybignVXNlciBkaWQgbm90IHNlbGVjdCBhbnkgRmlsZSBvciB0aGUgRm9sZGVyIHdhcyBlbXB0eS4nKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRvQXJyYXkoZmlsZUxpc3Q6IEZpbGVMaXN0KTogRmlsZVtdIHtcbiAgICBjb25zdCBmaWxlczogRmlsZVtdID0gW107XG4gICAgZm9yIChjb25zdCBrZXkgaW4gZmlsZUxpc3QpIHtcbiAgICAgIGlmICghaXNOYU4ocGFyc2VJbnQoa2V5LCAwKSkpIHtcbiAgICAgICAgZmlsZXMucHVzaChmaWxlTGlzdFtrZXldKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbGVzO1xuICB9XG5cbn1cbiJdfQ==
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBZSxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzFFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7QUFLL0MsTUFBTSxPQUFPLHdCQUF3QjtJQXVCbkM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ1UsRUFBYyxFQUNkLFFBQW1CO1FBRG5CLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBN0I3Qjs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQU16RCwwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBR3hELGdDQUEyQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFnQnZFLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxlQUFlLENBQUMsS0FBYTtRQUN0QyxJQUFJLENBQUMs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QUFDO0lBRU8sYUFBYSxDQUFDLFFBQWtCO1FBQ3RDLE1BQU0sS0FBSyxHQUFnQixFQUFFLENBQUM7UUFDOUIsS0FBSyxNQUFNLEdBQUcsSUFBSSxRQUFRLEVBQUU7WUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQzVCLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzdDO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O3FIQXRMVSx3QkFBd0I7eUdBQXhCLHdCQUF3QjsyRkFBeEIsd0JBQXdCO2tCQUhwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7aUJBQzlCO3lIQWVpQixxQkFBcUI7c0JBRHBDLE1BQU07Z0JBSVMsMkJBQTJCO3NCQUQxQyxNQUFNO2dCQXdDSSxlQUFlO3NCQUR6QixLQUFLO2dCQVNLLHVCQUF1QjtzQkFEakMsS0FBSztnQkFjSyx3QkFBd0I7c0JBRGxDLEtBQUs7Z0JBZ0JDLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0Jvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vbGlzdGluZy9maWxlLWVudHJ5JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRmlsZVNlbGVjdF0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfZmlsZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50O1xuICBwcml2YXRlIF91bmxpc3RlbjogKCkgPT4gdm9pZDtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVsZGVyRmlsZVNlbGVjdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbGRlclNpbmdsZUZpbGVTZWxlY3RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGU+KCk7XG5cbiAgcHJpdmF0ZSBfbXVsdGlwbGU6IGJvb2xlYW47XG4gIHByaXZhdGUgX2RpcmVjdG9yeTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfYWNjZXB0OiBzdHJpbmc7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jcmVhdGVGaWxlU2VsZWN0KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5yZW1vdmVGaWxlU2VsZWN0KCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVsZGVyRmlsZVNlbGVjdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fYWNjZXB0ID0gdmFsdWU7XG4gICAgaWYgKHRoaXMuX2ZpbGVJbnB1dCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLl9maWxlSW5wdXQsICdhY2NlcHQnLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbGRlckZpbGVTZWxlY3RNdWx0aXBsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fbXVsdGlwbGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGlmICh0aGlzLl9maWxlSW5wdXQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZmlsZUlucHV0LCAnbXVsdGlwbGUnLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93IHRoZSB1c2VyIHRvIHNlbGVjdCBhIGRpcmVjdG9yeS4gQWxsIGZpbGVzIHRoYXQgYXJlIHJlY3Vyc2l2ZWx5IGNvbnRhaW5lZCBhcmUgc2VsZWN0ZWQuXG4gICAqIEhvd2V2ZXIsIHRoZSB1c2VyIHdpbGwgbm8gbG9uZ2VyIGJlIGFibGUgdG8gc2VsZWN0IGluZGl2aWR1YWwgZmlsZXMgaWYgdGhpcyBpcyBlbmFibGVkLlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZWxkZXJGaWxlU2VsZWN0RGlyZWN0b3J5KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kaXJlY3RvcnkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGlmICh0aGlzLl9maWxlSW5wdXQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuX2ZpbGVJbnB1dCwgJ3dlYmtpdGRpcmVjdG9yeScsICd0cnVlJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9maWxlSW5wdXQsICdkaXJlY3RvcnknLCAndHJ1ZScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMub3BlbkZpbGVTZWxlY3REaWFsb2coKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuRmlsZVNlbGVjdERpYWxvZygpOiB2b2lkIHtcbiAgICB0aGlzLl9maWxlSW5wdXQuY2xpY2soKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiA8aW5wdXQgdHlwZT1cImZpbGVcIlxuICAgKiAgICAgaGlkZGVuICNmaWxlSW5wdXRcbiAgICogICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAqICAgICBbYWNjZXB0XT1cImFjY2VwdFwiXG4gICAqICAgICAoY2hhbmdlKT1cImZpbGVJbnB1dENoYW5nZWQoKVwiXG4gICAqIC8+XG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZUZpbGVTZWxlY3QoKTogdm9pZCB7XG5cbiAgICB0aGlzLl9maWxlSW5wdXQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZmlsZUlucHV0LCAnaGlkZGVuJywgJ3RydWUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9maWxlSW5wdXQsICd0eXBlJywgJ2ZpbGUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy5fZmlsZUlucHV0KTtcblxuICAgIGlmICh0aGlzLl9hY2NlcHQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZmlsZUlucHV0LCAnYWNjZXB0JywgdGhpcy5fYWNjZXB0KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX211bHRpcGxlKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX2ZpbGVJbnB1dCwgJ211bHRpcGxlJywgdGhpcy5fbXVsdGlwbGUpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZGlyZWN0b3J5KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9maWxlSW5wdXQsICd3ZWJraXRkaXJlY3RvcnknLCAndHJ1ZScpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5fZmlsZUlucHV0LCAnZGlyZWN0b3J5JywgJ3RydWUnKTtcbiAgICB9XG5cbiAgICB0aGlzLl91bmxpc3RlbiA9IHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgdGhpcy5fZmlsZUlucHV0LFxuICAgICAgJ2NoYW5nZScsXG4gICAgICBldmVudCA9PiB0aGlzLmZpbGVJbnB1dENoYW5nZWQoZXZlbnQpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlRmlsZVNlbGVjdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fdW5saXN0ZW4pIHtcbiAgICAgIHRoaXMuX3VubGlzdGVuKCk7XG4gICAgICB0aGlzLl91bmxpc3RlbiA9IG51bGw7XG4gICAgfVxuICAgIGlmICh0aGlzLl9maWxlSW5wdXQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLl9maWxlSW5wdXQpO1xuICAgICAgdGhpcy5fZmlsZUlucHV0ID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbGVJbnB1dENoYW5nZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGZpbGVMaXN0ID0gdGhpcy5fZmlsZUlucHV0LmZpbGVzO1xuICAgIGNvbnN0IGZpbGVzID0gdGhpcy50b0ZpbGVFbnRyaWVzKGZpbGVMaXN0KTtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnZmlsZUlucHV0Q2hhbmdlZCwgZmlsZXM6JywgZmlsZXMpO1xuICAgIHRoaXMuZW1pdEZpbGVMaXN0KGZpbGVzKTtcbiAgICB0aGlzLmNsZWFyRmlsZUxpc3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJGaWxlTGlzdCgpIHtcbiAgICAvLyBub3QgbmljZSBidXQgd29ya3NcbiAgICB0aGlzLl9maWxlSW5wdXQudmFsdWUgPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0RmlsZUxpc3QoZmlsZXM6IEZpbGVFbnRyeVtdKTogdm9pZCB7XG4gICAgaWYgKGZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuZWxkZXJGaWxlU2VsZWN0Q2hhbmdlLm5leHQoZmlsZXMpO1xuICAgICAgdGhpcy5lbGRlclNpbmdsZUZpbGVTZWxlY3RDaGFuZ2UuZW1pdChcbiAgICAgICAgZmlsZXNbMF0uZmlsZVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIud2FybignVXNlciBkaWQgbm90IHNlbGVjdCBhbnkgRmlsZSBvciB0aGUgRm9sZGVyIHdhcyBlbXB0eS4nKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRvRmlsZUVudHJpZXMoZmlsZUxpc3Q6IEZpbGVMaXN0KTogRmlsZUVudHJ5W10ge1xuICAgIGNvbnN0IGZpbGVzOiBGaWxlRW50cnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3Qga2V5IGluIGZpbGVMaXN0KSB7XG4gICAgICBpZiAoIWlzTmFOKHBhcnNlSW50KGtleSwgMCkpKSB7XG4gICAgICAgIGZpbGVzLnB1c2goRmlsZUVudHJ5Lm9mRmlsZShmaWxlTGlzdFtrZXldKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaWxlcztcbiAgfVxuXG59XG4iXX0=
@@ -17,7 +17,6 @@ export { ElderFileSelectDirective } from './elder-file-select.directive';
17
17
  export { ElderFileDropZoneDirective } from './elder-file-drop-zone.directive';
18
18
  export { ElderBlobViewerComponent } from './blob-viewer/elder-blob-viewer.component';
19
19
  export * from './blob-url';
20
- export * from './file-proxy';
21
20
  export * from './listing/file-entry';
22
21
  export * from './listing/file-listing-rx';
23
22
  export class ElderFileModule {
@@ -67,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
67
66
  ]
68
67
  }]
69
68
  }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2VsZGVyLWZpbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDOztBQUVuRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMkJBQTJCLENBQUM7QUE2QjFDLE1BQU0sT0FBTyxlQUFlOzs0R0FBZixlQUFlOzZHQUFmLGVBQWUsaUJBZHhCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQix3QkFBd0IsYUFmeEIsWUFBWTtRQUVaLGFBQWE7UUFFYixlQUFlLEVBQUUsYUFBYTtRQUU5QixvQkFBb0I7UUFFcEIsZ0JBQWdCLGFBVWhCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQix3QkFBd0I7NkdBR2YsZUFBZSxZQXpCeEIsWUFBWTtRQUVaLGFBQWE7UUFFYixlQUFlLEVBQUUsYUFBYTtRQUU5QixvQkFBb0I7UUFFcEIsZ0JBQWdCOzJGQWlCUCxlQUFlO2tCQTNCM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFFWixhQUFhO3dCQUViLGVBQWUsRUFBRSxhQUFhO3dCQUU5QixvQkFBb0I7d0JBRXBCLGdCQUFnQjtxQkFDakI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7cUJBQ3pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxkZXJGaWxlU2VsZWN0Q29tcG9uZW50fSBmcm9tICcuL2ZpbGUtc2VsZWN0L2ZpbGUtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01hdExpc3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHtNYXRQcm9ncmVzc0Jhck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7RWxkZXJQaXBlc01vZHVsZX0gZnJvbSAnLi4vLi4vcGlwZXMvZWxkZXItcGlwZXMubW9kdWxlJztcbmltcG9ydCB7RWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQge0VsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckJsb2JWaWV3ZXJDb21wb25lbnR9IGZyb20gJy4vYmxvYi12aWV3ZXIvZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IHtFbGRlckZpbGVTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vZmlsZS1zZWxlY3QvZmlsZS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCB7RWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5leHBvcnQge0VsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGRlckJsb2JWaWV3ZXJDb21wb25lbnR9IGZyb20gJy4vYmxvYi12aWV3ZXIvZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYmxvYi11cmwnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLXByb3h5JztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdGluZy9maWxlLWVudHJ5JztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdGluZy9maWxlLWxpc3RpbmctcngnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuXG4gICAgTWF0TGlzdE1vZHVsZSxcblxuICAgIE1hdEJ1dHRvbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSxcblxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlLFxuXG4gICAgRWxkZXJQaXBlc01vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBFbGRlckZpbGVTZWxlY3RDb21wb25lbnQsXG4gICAgRWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgIEVsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZSxcbiAgICBFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZSxcbiAgICBFbGRlckJsb2JWaWV3ZXJDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCxcbiAgICBFbGRlckZpbGVVcGxvYWRDb21wb25lbnQsXG4gICAgRWxkZXJGaWxlU2VsZWN0RGlyZWN0aXZlLFxuICAgIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlLFxuICAgIEVsZGVyQmxvYlZpZXdlckNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZU1vZHVsZSB7XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZmlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2VsZGVyLWZpbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDOztBQUVuRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMkJBQTJCLENBQUM7QUE2QjFDLE1BQU0sT0FBTyxlQUFlOzs0R0FBZixlQUFlOzZHQUFmLGVBQWUsaUJBZHhCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQix3QkFBd0IsYUFmeEIsWUFBWTtRQUVaLGFBQWE7UUFFYixlQUFlLEVBQUUsYUFBYTtRQUU5QixvQkFBb0I7UUFFcEIsZ0JBQWdCLGFBVWhCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQix3QkFBd0I7NkdBR2YsZUFBZSxZQXpCeEIsWUFBWTtRQUVaLGFBQWE7UUFFYixlQUFlLEVBQUUsYUFBYTtRQUU5QixvQkFBb0I7UUFFcEIsZ0JBQWdCOzJGQWlCUCxlQUFlO2tCQTNCM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFFWixhQUFhO3dCQUViLGVBQWUsRUFBRSxhQUFhO3dCQUU5QixvQkFBb0I7d0JBRXBCLGdCQUFnQjtxQkFDakI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7cUJBQ3pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxkZXJGaWxlU2VsZWN0Q29tcG9uZW50fSBmcm9tICcuL2ZpbGUtc2VsZWN0L2ZpbGUtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01hdExpc3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHtNYXRQcm9ncmVzc0Jhck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7RWxkZXJQaXBlc01vZHVsZX0gZnJvbSAnLi4vLi4vcGlwZXMvZWxkZXItcGlwZXMubW9kdWxlJztcbmltcG9ydCB7RWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQge0VsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckJsb2JWaWV3ZXJDb21wb25lbnR9IGZyb20gJy4vYmxvYi12aWV3ZXIvZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IHtFbGRlckZpbGVTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vZmlsZS1zZWxlY3QvZmlsZS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCB7RWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5leHBvcnQge0VsZGVyRmlsZVNlbGVjdERpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLXNlbGVjdC5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGRlckZpbGVEcm9wWm9uZURpcmVjdGl2ZX0gZnJvbSAnLi9lbGRlci1maWxlLWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGRlckJsb2JWaWV3ZXJDb21wb25lbnR9IGZyb20gJy4vYmxvYi12aWV3ZXIvZWxkZXItYmxvYi12aWV3ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYmxvYi11cmwnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0aW5nL2ZpbGUtZW50cnknO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG5cbiAgICBNYXRMaXN0TW9kdWxlLFxuXG4gICAgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLFxuXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXG5cbiAgICBFbGRlclBpcGVzTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCxcbiAgICBFbGRlckZpbGVVcGxvYWRDb21wb25lbnQsXG4gICAgRWxkZXJGaWxlU2VsZWN0RGlyZWN0aXZlLFxuICAgIEVsZGVyRmlsZURyb3Bab25lRGlyZWN0aXZlLFxuICAgIEVsZGVyQmxvYlZpZXdlckNvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRWxkZXJGaWxlU2VsZWN0Q29tcG9uZW50LFxuICAgIEVsZGVyRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBFbGRlckZpbGVTZWxlY3REaXJlY3RpdmUsXG4gICAgRWxkZXJGaWxlRHJvcFpvbmVEaXJlY3RpdmUsXG4gICAgRWxkZXJCbG9iVmlld2VyQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJGaWxlTW9kdWxlIHtcbn1cbiJdfQ==
@@ -52,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
52
52
  }], filesChange: [{
53
53
  type: Output
54
54
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtc2VsZWN0L2ZpbGUtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUXRHLE1BQU0sT0FBTyx3QkFBd0I7SUF1Qm5DOzs7O2dGQUk0RTtJQUU1RTtRQTNCQTs7OztvRkFJNEU7UUFHckUsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixXQUFNLEdBQVcsU0FBUyxDQUFDO1FBRzNCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFNSixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFTekQsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRO0lBRWYsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7O3FIQWxEVSx3QkFBd0I7eUdBQXhCLHdCQUF3QixvTENSckMsb1FBU0E7MkZERGEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNOzBFQVd4QyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSVUsV0FBVztzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1maWxlLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIG11bHRpcGxlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjY2VwdDogc3RyaW5nID0gdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uID0gJ2FkZCc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbG9yOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBmaWxlc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZmlsZUlucHV0Q2hhbmdlZChmaWxlczogRmlsZVtdKTogdm9pZCB7XG4gICAgdGhpcy5maWxlc0NoYW5nZS5uZXh0KGZpbGVzKTtcbiAgfVxuXG59XG4iLCJcblxuPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtlbGRlckZpbGVTZWxlY3RdPVwiYWNjZXB0XCJcbiAgICAgICAgW2VsZGVyRmlsZVNlbGVjdE11bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICAgICAgKGVsZGVyRmlsZVNlbGVjdENoYW5nZSk9XCJmaWxlSW5wdXRDaGFuZ2VkKCRldmVudClcIlxuPlxuICA8bWF0LWljb24gW2NvbG9yXT1cImNvbG9yXCI+e3tpY29ufX08L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXNlbGVjdC9maWxlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtc2VsZWN0L2ZpbGUtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0FBVXRHLE1BQU0sT0FBTyx3QkFBd0I7SUF1Qm5DOzs7O2dGQUk0RTtJQUU1RTtRQTNCQTs7OztvRkFJNEU7UUFHckUsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixXQUFNLEdBQVcsU0FBUyxDQUFDO1FBRzNCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFNSixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7SUFTOUQsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRO0lBRWYsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxnQkFBZ0IsQ0FBQyxLQUFrQjtRQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDOztxSEFsRFUsd0JBQXdCO3lHQUF4Qix3QkFBd0Isb0xDVnJDLG9RQVNBOzJGRENhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTTswRUFXeEMsUUFBUTtzQkFEZCxLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlVLFdBQVc7c0JBRDFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RmlsZUVudHJ5fSBmcm9tICcuLi9saXN0aW5nL2ZpbGUtZW50cnknO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1maWxlLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRmlsZVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIG11bHRpcGxlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjY2VwdDogc3RyaW5nID0gdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uID0gJ2FkZCc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBmaWxlc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUVudHJ5W10+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG5cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBmaWxlSW5wdXRDaGFuZ2VkKGZpbGVzOiBGaWxlRW50cnlbXSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZXNDaGFuZ2UubmV4dChmaWxlcyk7XG4gIH1cblxufVxuIiwiXG5cbjxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbZWxkZXJGaWxlU2VsZWN0XT1cImFjY2VwdFwiXG4gICAgICAgIFtlbGRlckZpbGVTZWxlY3RNdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgICAgIChlbGRlckZpbGVTZWxlY3RDaGFuZ2UpPVwiZmlsZUlucHV0Q2hhbmdlZCgkZXZlbnQpXCJcbj5cbiAgPG1hdC1pY29uIFtjb2xvcl09XCJjb2xvclwiPnt7aWNvbn19PC9tYXQtaWNvbj5cbjwvYnV0dG9uPlxuIl19
@@ -1,5 +1,6 @@
1
1
  import { Component, Input } from '@angular/core';
2
2
  import { forkJoin } from 'rxjs';
3
+ import { FileEntry } from '../listing/file-entry';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@angular/common";
5
6
  import * as i2 from "@angular/material/list";
@@ -44,16 +45,16 @@ export class ElderFileUploadComponent {
44
45
  * Private methods *
45
46
  * *
46
47
  **************************************************************************/
47
- uploadAllFiles(files) {
48
- this.uploadProgress = this.uploadClient.uploadFiles(files);
49
- return forkJoin(this.uploadProgress.values());
48
+ uploadAllFiles(entries) {
49
+ this.uploadProgress = this.uploadClient.uploadFiles(FileEntry.toFileArray(entries));
50
+ return forkJoin(Array.from(this.uploadProgress.values()));
50
51
  }
51
52
  }
52
53
  ElderFileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
53
- ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let file of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{file.name}}</h4>\n <p mat-line> {{file.size | bytes}} - {{file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.BytesPipe, name: "bytes" }, { kind: "pipe", type: i8.TimeAgoPipe, name: "timeAgo" }] });
54
+ ElderFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ElderFileUploadComponent, selector: "elder-file-upload", inputs: { files: "files", multiple: "multiple", accept: "accept", uploadClient: "uploadClient" }, ngImport: i0, template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.ElderFileSelectComponent, selector: "elder-file-select", inputs: ["multiple", "accept", "icon", "color"], outputs: ["filesChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.BytesPipe, name: "bytes" }, { kind: "pipe", type: i8.TimeAgoPipe, name: "timeAgo" }] });
54
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ElderFileUploadComponent, decorators: [{
55
56
  type: Component,
56
- args: [{ selector: 'elder-file-upload', template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let file of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{file.name}}</h4>\n <p mat-line> {{file.size | bytes}} - {{file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n" }]
57
+ args: [{ selector: 'elder-file-upload', template: "\n\n<div class=\"layout-col\">\n\n <div class=\"layout-row gap-md\">\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n *ngIf=\"uploadClient\" (click)=\"startUpload($event)\" [disabled]=\"files.length === 0\">\n <mat-icon>cloud_upload</mat-icon>\n </button>\n\n <elder-file-select\n [multiple]=\"multiple\"\n [accept]=\"accept\"\n (filesChange)=\"files = $event\"\n ></elder-file-select>\n\n </div>\n\n <mat-list>\n <h2 mat-subheader>Selected Files ({{files.length}})</h2>\n <mat-list-item *ngFor=\"let fileEntry of files\">\n <mat-icon mat-list-icon>attach_file</mat-icon>\n <h4 mat-line>{{fileEntry.relativePath}}</h4>\n <p mat-line> {{fileEntry.file.size | bytes}} - {{fileEntry.file.lastModified | timeAgo}}</p>\n\n <mat-progress-bar *ngIf=\"(transferOf(fileEntry.file)?.state$ | async) as state\"\n [color]=\"(state.hasFailed ? 'warn' : undefined)\"\n mode=\"determinate\"\n [value]=\"state.progress.percentDone\">\n </mat-progress-bar>\n\n </mat-list-item>\n </mat-list>\n\n</div>\n" }]
57
58
  }], ctorParameters: function () { return []; }, propDecorators: { files: [{
58
59
  type: Input
59
60
  }], multiple: [{
@@ -63,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
63
64
  }], uploadClient: [{
64
65
  type: Input
65
66
  }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxRQUFRLEVBQWEsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTMUMsTUFBTSxPQUFPLHdCQUF3QjtJQXVCbkM7Ozs7Z0ZBSTRFO0lBRTVFO1FBMUJBOzs7O29GQUk0RTtRQUdyRSxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBS25CLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsV0FBTSxHQUFXLFNBQVMsQ0FBQztJQVlsQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLFdBQVcsQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUFVO1FBQzFCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3RDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVwRSxjQUFjLENBQUMsS0FBYTtRQUNsQyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDOztxSEExRFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsMkpDVnJDLHFtQ0FvQ0E7MkZEMUJhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxtQkFBbUI7MEVBY3RCLEtBQUs7c0JBRFgsS0FBSztnQkFNQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2ZvcmtKb2luLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7SUZpbGVVcGxvYWRDbGllbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9odHRwL3VwbG9hZC9maWxlLXVwbG9hZC1jbGllbnQnO1xuaW1wb3J0IHtIdHRwRGF0YVRyYW5zZmVyfSBmcm9tICcuLi8uLi8uLi9jb21tb24vaHR0cC90cmFuc2Zlci9odHRwLWRhdGEtdHJhbnNmZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJGaWxlVXBsb2FkQ29tcG9uZW50IHtcblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWxlczogRmlsZVtdID0gW107XG4gIHB1YmxpYyB1cGxvYWRQcm9ncmVzczogTWFwPEZpbGUsIEh0dHBEYXRhVHJhbnNmZXI+O1xuICBwdWJsaWMgdG90YWxQcm9ncmVzczogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhY2NlcHQ6IHN0cmluZyA9IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdXBsb2FkQ2xpZW50OiBJRmlsZVVwbG9hZENsaWVudDtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBzdGFydFVwbG9hZChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy50b3RhbFByb2dyZXNzID0gdGhpcy51cGxvYWRBbGxGaWxlcyh0aGlzLmZpbGVzKTtcbiAgfVxuXG4gIHB1YmxpYyB0cmFuc2Zlck9mKGZpbGU6IEZpbGUpOiBIdHRwRGF0YVRyYW5zZmVyIHtcbiAgICBpZiAodGhpcy51cGxvYWRQcm9ncmVzcykge1xuICAgICAgcmV0dXJuIHRoaXMudXBsb2FkUHJvZ3Jlc3MuZ2V0KGZpbGUpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSB1cGxvYWRBbGxGaWxlcyhmaWxlczogRmlsZVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICB0aGlzLnVwbG9hZFByb2dyZXNzID0gdGhpcy51cGxvYWRDbGllbnQudXBsb2FkRmlsZXMoZmlsZXMpO1xuICAgIHJldHVybiBmb3JrSm9pbih0aGlzLnVwbG9hZFByb2dyZXNzLnZhbHVlcygpKTtcbiAgfVxuXG59XG4iLCJcblxuPGRpdiBjbGFzcz1cImxheW91dC1jb2xcIj5cblxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBnYXAtbWRcIj5cblxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgKm5nSWY9XCJ1cGxvYWRDbGllbnRcIiAgKGNsaWNrKT1cInN0YXJ0VXBsb2FkKCRldmVudClcIiBbZGlzYWJsZWRdPVwiZmlsZXMubGVuZ3RoID09PSAwXCI+XG4gICAgICA8bWF0LWljb24+Y2xvdWRfdXBsb2FkPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxlbGRlci1maWxlLXNlbGVjdFxuICAgICAgICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgIFthY2NlcHRdPVwiYWNjZXB0XCJcbiAgICAgICAgICAgIChmaWxlc0NoYW5nZSk9XCJmaWxlcyA9ICRldmVudFwiXG4gICAgPjwvZWxkZXItZmlsZS1zZWxlY3Q+XG5cbiAgPC9kaXY+XG5cbiAgPG1hdC1saXN0PlxuICAgIDxoMiBtYXQtc3ViaGVhZGVyPlNlbGVjdGVkIEZpbGVzICh7e2ZpbGVzLmxlbmd0aH19KTwvaDI+XG4gICAgPG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGZpbGUgb2YgZmlsZXNcIj5cbiAgICAgIDxtYXQtaWNvbiBtYXQtbGlzdC1pY29uPmF0dGFjaF9maWxlPC9tYXQtaWNvbj5cbiAgICAgIDxoNCBtYXQtbGluZT57e2ZpbGUubmFtZX19PC9oND5cbiAgICAgIDxwIG1hdC1saW5lPiB7e2ZpbGUuc2l6ZSB8IGJ5dGVzfX0gIC0ge3tmaWxlLmxhc3RNb2RpZmllZCB8IHRpbWVBZ299fTwvcD5cblxuICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgKm5nSWY9XCIodHJhbnNmZXJPZihmaWxlKT8uc3RhdGUkIHwgYXN5bmMpIGFzIHN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCIoc3RhdGUuaGFzRmFpbGVkID8gJ3dhcm4nIDogdW5kZWZpbmVkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtb2RlPVwiZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInN0YXRlLnByb2dyZXNzLnBlcmNlbnREb25lXCI+XG4gICAgICA8L21hdC1wcm9ncmVzcy1iYXI+XG5cbiAgICA8L21hdC1saXN0LWl0ZW0+XG4gIDwvbWF0LWxpc3Q+XG5cbjwvZGl2PlxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxRQUFRLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFHMUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7O0FBT2hELE1BQU0sT0FBTyx3QkFBd0I7SUF1Qm5DOzs7O2dGQUk0RTtJQUU1RTtRQTFCQTs7OztvRkFJNEU7UUFHckUsVUFBSyxHQUFnQixFQUFFLENBQUM7UUFLeEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixXQUFNLEdBQVcsU0FBUyxDQUFDO0lBWWxDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsV0FBVyxDQUFDLEtBQVU7UUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0sVUFBVSxDQUFDLElBQVU7UUFDMUIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLGNBQWMsQ0FBQyxPQUFvQjtRQUN6QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUNqRCxTQUFTLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUMvQixDQUFDO1FBQ0YsT0FBTyxRQUFRLENBQ2IsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQ3pDLENBQUM7SUFDSixDQUFDOztxSEE5RFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsMkpDWHJDLHFwQ0FvQ0E7MkZEekJhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxtQkFBbUI7MEVBY3RCLEtBQUs7c0JBRFgsS0FBSztnQkFNQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2ZvcmtKb2luLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7SUZpbGVVcGxvYWRDbGllbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9odHRwL3VwbG9hZC9maWxlLXVwbG9hZC1jbGllbnQnO1xuaW1wb3J0IHtIdHRwRGF0YVRyYW5zZmVyfSBmcm9tICcuLi8uLi8uLi9jb21tb24vaHR0cC90cmFuc2Zlci9odHRwLWRhdGEtdHJhbnNmZXInO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4uL2xpc3RpbmcvZmlsZS1lbnRyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckZpbGVVcGxvYWRDb21wb25lbnQge1xuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIGZpbGVzOiBGaWxlRW50cnlbXSA9IFtdO1xuICBwdWJsaWMgdXBsb2FkUHJvZ3Jlc3M6IE1hcDxGaWxlLCBIdHRwRGF0YVRyYW5zZmVyPjtcbiAgcHVibGljIHRvdGFsUHJvZ3Jlc3M6IE9ic2VydmFibGU8YW55PjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbXVsdGlwbGUgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYWNjZXB0OiBzdHJpbmcgPSB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHVwbG9hZENsaWVudDogSUZpbGVVcGxvYWRDbGllbnQ7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhcnRVcGxvYWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudG90YWxQcm9ncmVzcyA9IHRoaXMudXBsb2FkQWxsRmlsZXModGhpcy5maWxlcyk7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNmZXJPZihmaWxlOiBGaWxlKTogSHR0cERhdGFUcmFuc2ZlciB7XG4gICAgaWYgKHRoaXMudXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgIHJldHVybiB0aGlzLnVwbG9hZFByb2dyZXNzLmdldChmaWxlKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgdXBsb2FkQWxsRmlsZXMoZW50cmllczogRmlsZUVudHJ5W10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHRoaXMudXBsb2FkUHJvZ3Jlc3MgPSB0aGlzLnVwbG9hZENsaWVudC51cGxvYWRGaWxlcyhcbiAgICAgIEZpbGVFbnRyeS50b0ZpbGVBcnJheShlbnRyaWVzKVxuICAgICk7XG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgQXJyYXkuZnJvbSh0aGlzLnVwbG9hZFByb2dyZXNzLnZhbHVlcygpKVxuICAgICk7XG4gIH1cblxufVxuIiwiXG5cbjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sXCI+XG5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgZ2FwLW1kXCI+XG5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICpuZ0lmPVwidXBsb2FkQ2xpZW50XCIgIChjbGljayk9XCJzdGFydFVwbG9hZCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImZpbGVzLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgPG1hdC1pY29uPmNsb3VkX3VwbG9hZDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8ZWxkZXItZmlsZS1zZWxlY3RcbiAgICAgICAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgICAgICAgICBbYWNjZXB0XT1cImFjY2VwdFwiXG4gICAgICAgICAgICAoZmlsZXNDaGFuZ2UpPVwiZmlsZXMgPSAkZXZlbnRcIlxuICAgID48L2VsZGVyLWZpbGUtc2VsZWN0PlxuXG4gIDwvZGl2PlxuXG4gIDxtYXQtbGlzdD5cbiAgICA8aDIgbWF0LXN1YmhlYWRlcj5TZWxlY3RlZCBGaWxlcyAoe3tmaWxlcy5sZW5ndGh9fSk8L2gyPlxuICAgIDxtYXQtbGlzdC1pdGVtICpuZ0Zvcj1cImxldCBmaWxlRW50cnkgb2YgZmlsZXNcIj5cbiAgICAgIDxtYXQtaWNvbiBtYXQtbGlzdC1pY29uPmF0dGFjaF9maWxlPC9tYXQtaWNvbj5cbiAgICAgIDxoNCBtYXQtbGluZT57e2ZpbGVFbnRyeS5yZWxhdGl2ZVBhdGh9fTwvaDQ+XG4gICAgICA8cCBtYXQtbGluZT4ge3tmaWxlRW50cnkuZmlsZS5zaXplIHwgYnl0ZXN9fSAgLSB7e2ZpbGVFbnRyeS5maWxlLmxhc3RNb2RpZmllZCB8IHRpbWVBZ299fTwvcD5cblxuICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgKm5nSWY9XCIodHJhbnNmZXJPZihmaWxlRW50cnkuZmlsZSk/LnN0YXRlJCB8IGFzeW5jKSBhcyBzdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiKHN0YXRlLmhhc0ZhaWxlZCA/ICd3YXJuJyA6IHVuZGVmaW5lZClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbW9kZT1cImRldGVybWluYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzdGF0ZS5wcm9ncmVzcy5wZXJjZW50RG9uZVwiPlxuICAgICAgPC9tYXQtcHJvZ3Jlc3MtYmFyPlxuXG4gICAgPC9tYXQtbGlzdC1pdGVtPlxuICA8L21hdC1saXN0PlxuXG48L2Rpdj5cbiJdfQ==
@@ -1,30 +1,76 @@
1
- import { FileProxy } from '../file-proxy';
2
- export class FileEntry extends FileProxy {
1
+ /**
2
+ * Represents a file and the relative path where the user has selected it.
3
+ * This is useful if the user has selected a folder and files
4
+ * are listed recursively.
5
+ */
6
+ export class FileEntry {
7
+ /***************************************************************************
8
+ * *
9
+ * Constructor *
10
+ * *
11
+ **************************************************************************/
3
12
  constructor(file,
4
13
  /**
5
14
  * Contains the relative path from the selected folder
6
15
  * to this file. Only relevant if the user has selected a folder.
7
16
  */
8
17
  relativeParent) {
9
- super(file);
18
+ this.file = file;
10
19
  this.relativeParent = relativeParent;
20
+ this.relativePath = FileEntry.buildRelativePath(relativeParent, file);
11
21
  }
12
22
  /**
13
- * Returns a string which specifies the file's path relative to the directory selected by the user.
23
+ * Creates a file Entry without an explicit relative parent.
24
+ *
25
+ * However, depending how the file was selected, some browsers
26
+ * encode the relative parent path in the property 'webkitRelativePath'
27
+ * which is also supported by this method.
14
28
  */
15
- get relativePath() {
16
- if (this.relativeParent != null) {
17
- return this.relativeParent + '/' + this.name;
29
+ static ofFile(file) {
30
+ let relativeParent = null;
31
+ if (file.webkitRelativePath) {
32
+ if (file.webkitRelativePath.endsWith(file.name)) {
33
+ var nameStart = file.webkitRelativePath.length - file.name.length;
34
+ relativeParent = file.webkitRelativePath.substring(0, nameStart);
35
+ }
36
+ else {
37
+ relativeParent = file.webkitRelativePath;
38
+ }
18
39
  }
19
- else {
20
- return this.name;
40
+ return FileEntry.relativeFile(file, relativeParent);
41
+ }
42
+ /**
43
+ * Creates a file Entry with a relative parent path
44
+ */
45
+ static relativeFile(file, relativeParent) {
46
+ if (relativeParent && relativeParent.endsWith('/')) {
47
+ relativeParent = relativeParent.substring(0, relativeParent.length - 1);
21
48
  }
49
+ return new FileEntry(file, relativeParent);
22
50
  }
51
+ static toFileMap(entries) {
52
+ const map = new Map();
53
+ entries.forEach(e => map.set(e.file, e));
54
+ return map;
55
+ }
56
+ static toFileArray(entries) {
57
+ return entries.map(e => e.file);
58
+ }
59
+ /***************************************************************************
60
+ * *
61
+ * Private methods *
62
+ * *
63
+ **************************************************************************/
23
64
  /**
24
65
  * Returns a string which specifies the file's path relative to the directory selected by the user.
25
66
  */
26
- get webkitRelativePath() {
27
- return this.relativePath;
67
+ static buildRelativePath(relativeParent, file) {
68
+ if (relativeParent != null) {
69
+ return relativeParent + '/' + file.name;
70
+ }
71
+ else {
72
+ return file.name;
73
+ }
28
74
  }
29
75
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1lbnRyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZmlsZXMvbGlzdGluZy9maWxlLWVudHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxTQUFTO0lBQ3RDLFlBQ0UsSUFBVTtJQUNWOzs7T0FHRztJQUNhLGNBQTZCO1FBRTdDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUZJLG1CQUFjLEdBQWQsY0FBYyxDQUFlO0lBRy9DLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsWUFBWTtRQUNyQixJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztTQUM5QzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmlsZVByb3h5fSBmcm9tICcuLi9maWxlLXByb3h5JztcblxuZXhwb3J0IGNsYXNzIEZpbGVFbnRyeSBleHRlbmRzIEZpbGVQcm94eSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGZpbGU6IEZpbGUsXG4gICAgLyoqXG4gICAgICogQ29udGFpbnMgdGhlIHJlbGF0aXZlIHBhdGggZnJvbSB0aGUgc2VsZWN0ZWQgZm9sZGVyXG4gICAgICogdG8gdGhpcyBmaWxlLiBPbmx5IHJlbGV2YW50IGlmIHRoZSB1c2VyIGhhcyBzZWxlY3RlZCBhIGZvbGRlci5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVsYXRpdmVQYXJlbnQ6IHN0cmluZyB8IG51bGxcbiAgKSB7XG4gICAgc3VwZXIoZmlsZSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHN0cmluZyB3aGljaCBzcGVjaWZpZXMgdGhlIGZpbGUncyBwYXRoIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgc2VsZWN0ZWQgYnkgdGhlIHVzZXIuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHJlbGF0aXZlUGF0aCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnJlbGF0aXZlUGFyZW50ICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbGF0aXZlUGFyZW50ICsgJy8nICsgdGhpcy5uYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5uYW1lO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3RyaW5nIHdoaWNoIHNwZWNpZmllcyB0aGUgZmlsZSdzIHBhdGggcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSBzZWxlY3RlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIGdldCB3ZWJraXRSZWxhdGl2ZVBhdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZWxhdGl2ZVBhdGg7XG4gIH1cbn1cbiJdfQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1lbnRyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZmlsZXMvbGlzdGluZy9maWxlLWVudHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sU0FBUztJQTJEcEI7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ2tCLElBQVU7SUFDMUI7OztPQUdHO0lBQ2EsY0FBNkI7UUFMN0IsU0FBSSxHQUFKLElBQUksQ0FBTTtRQUtWLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBRTdDLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBeEVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBVTtRQUU3QixJQUFJLGNBQWMsR0FBVyxJQUFJLENBQUM7UUFFbEMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDL0MsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDbEUsY0FBYyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO2FBQ2xFO2lCQUFNO2dCQUNMLGNBQWMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7YUFDMUM7U0FDRjtRQUVELE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FDM0IsSUFBSSxFQUNKLGNBQWMsQ0FDZixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFVLEVBQUUsY0FBNkI7UUFDbEUsSUFBSSxjQUFjLElBQUksY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsRCxjQUFjLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN6RTtRQUNELE9BQU8sSUFBSSxTQUFTLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQW9CO1FBQzFDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO1FBQ3ZDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6QyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQW9CO1FBQzVDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBOEJEOzs7O2dGQUk0RTtJQUU1RTs7T0FFRztJQUNLLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxjQUFzQixFQUFFLElBQVU7UUFDakUsSUFBSSxjQUFjLElBQUksSUFBSSxFQUFFO1lBQzFCLE9BQU8sY0FBYyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3pDO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDbEI7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcHJlc2VudHMgYSBmaWxlIGFuZCB0aGUgcmVsYXRpdmUgcGF0aCB3aGVyZSB0aGUgdXNlciBoYXMgc2VsZWN0ZWQgaXQuXG4gKiBUaGlzIGlzIHVzZWZ1bCBpZiB0aGUgdXNlciBoYXMgc2VsZWN0ZWQgYSBmb2xkZXIgYW5kIGZpbGVzXG4gKiBhcmUgbGlzdGVkIHJlY3Vyc2l2ZWx5LlxuICovXG5leHBvcnQgY2xhc3MgRmlsZUVudHJ5IHtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGZpbGUgRW50cnkgd2l0aG91dCBhbiBleHBsaWNpdCByZWxhdGl2ZSBwYXJlbnQuXG4gICAqXG4gICAqIEhvd2V2ZXIsIGRlcGVuZGluZyBob3cgdGhlIGZpbGUgd2FzIHNlbGVjdGVkLCBzb21lIGJyb3dzZXJzXG4gICAqIGVuY29kZSB0aGUgcmVsYXRpdmUgcGFyZW50IHBhdGggaW4gdGhlIHByb3BlcnR5ICd3ZWJraXRSZWxhdGl2ZVBhdGgnXG4gICAqIHdoaWNoIGlzIGFsc28gc3VwcG9ydGVkIGJ5IHRoaXMgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvZkZpbGUoZmlsZTogRmlsZSk6IEZpbGVFbnRyeSB7XG5cbiAgICBsZXQgcmVsYXRpdmVQYXJlbnQ6IHN0cmluZyA9IG51bGw7XG5cbiAgICBpZiAoZmlsZS53ZWJraXRSZWxhdGl2ZVBhdGgpIHtcbiAgICAgIGlmIChmaWxlLndlYmtpdFJlbGF0aXZlUGF0aC5lbmRzV2l0aChmaWxlLm5hbWUpKSB7XG4gICAgICAgIHZhciBuYW1lU3RhcnQgPSBmaWxlLndlYmtpdFJlbGF0aXZlUGF0aC5sZW5ndGggLSBmaWxlLm5hbWUubGVuZ3RoO1xuICAgICAgICByZWxhdGl2ZVBhcmVudCA9IGZpbGUud2Via2l0UmVsYXRpdmVQYXRoLnN1YnN0cmluZygwLCBuYW1lU3RhcnQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVsYXRpdmVQYXJlbnQgPSBmaWxlLndlYmtpdFJlbGF0aXZlUGF0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gRmlsZUVudHJ5LnJlbGF0aXZlRmlsZShcbiAgICAgIGZpbGUsXG4gICAgICByZWxhdGl2ZVBhcmVudFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGZpbGUgRW50cnkgd2l0aCBhIHJlbGF0aXZlIHBhcmVudCBwYXRoXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlbGF0aXZlRmlsZShmaWxlOiBGaWxlLCByZWxhdGl2ZVBhcmVudDogc3RyaW5nIHwgbnVsbCkge1xuICAgIGlmIChyZWxhdGl2ZVBhcmVudCAmJiByZWxhdGl2ZVBhcmVudC5lbmRzV2l0aCgnLycpKSB7XG4gICAgICByZWxhdGl2ZVBhcmVudCA9IHJlbGF0aXZlUGFyZW50LnN1YnN0cmluZygwLCByZWxhdGl2ZVBhcmVudC5sZW5ndGggLSAxKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBGaWxlRW50cnkoZmlsZSwgcmVsYXRpdmVQYXJlbnQpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b0ZpbGVNYXAoZW50cmllczogRmlsZUVudHJ5W10pOiBNYXA8RmlsZSwgRmlsZUVudHJ5PiB7XG4gICAgY29uc3QgbWFwID0gbmV3IE1hcDxGaWxlLCBGaWxlRW50cnk+KCk7XG4gICAgZW50cmllcy5mb3JFYWNoKGUgPT4gbWFwLnNldChlLmZpbGUsIGUpKTtcbiAgICByZXR1cm4gbWFwO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b0ZpbGVBcnJheShlbnRyaWVzOiBGaWxlRW50cnlbXSk6IEZpbGVbXSB7XG4gICAgcmV0dXJuIGVudHJpZXMubWFwKGUgPT4gZS5maWxlKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3RyaW5nIHdoaWNoIHNwZWNpZmllcyB0aGUgZmlsZSdzIHBhdGggcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSBzZWxlY3RlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByZWxhdGl2ZVBhdGg6IHN0cmluZztcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBmaWxlOiBGaWxlLFxuICAgIC8qKlxuICAgICAqIENvbnRhaW5zIHRoZSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlIHNlbGVjdGVkIGZvbGRlclxuICAgICAqIHRvIHRoaXMgZmlsZS4gT25seSByZWxldmFudCBpZiB0aGUgdXNlciBoYXMgc2VsZWN0ZWQgYSBmb2xkZXIuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IHJlbGF0aXZlUGFyZW50OiBzdHJpbmcgfCBudWxsXG4gICkge1xuICAgIHRoaXMucmVsYXRpdmVQYXRoID0gRmlsZUVudHJ5LmJ1aWxkUmVsYXRpdmVQYXRoKHJlbGF0aXZlUGFyZW50LCBmaWxlKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3RyaW5nIHdoaWNoIHNwZWNpZmllcyB0aGUgZmlsZSdzIHBhdGggcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSBzZWxlY3RlZCBieSB0aGUgdXNlci5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGJ1aWxkUmVsYXRpdmVQYXRoKHJlbGF0aXZlUGFyZW50OiBzdHJpbmcsIGZpbGU6IEZpbGUpOiBzdHJpbmcge1xuICAgIGlmIChyZWxhdGl2ZVBhcmVudCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcmVsYXRpdmVQYXJlbnQgKyAnLycgKyBmaWxlLm5hbWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmaWxlLm5hbWU7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -31,7 +31,7 @@ export class FileListingRx {
31
31
  observableFile(fileEntry, parent) {
32
32
  return new Observable(observer => {
33
33
  fileEntry.file(file => {
34
- observer.next(new FileEntry(file, parent?.fullPath));
34
+ observer.next(FileEntry.relativeFile(file, this.trimStaringSlash(parent?.fullPath)));
35
35
  observer.complete();
36
36
  }, err => {
37
37
  observer.error(err);
@@ -39,6 +39,14 @@ export class FileListingRx {
39
39
  });
40
40
  });
41
41
  }
42
+ trimStaringSlash(path) {
43
+ if (path) {
44
+ if (path.startsWith('/')) {
45
+ path = path.substring(1);
46
+ }
47
+ }
48
+ return path;
49
+ }
42
50
  readEntries(directoryEntry) {
43
51
  return new Observable(observer => {
44
52
  this.consumeReaderToCompletion(observer, directoryEntry.createReader());
@@ -60,4 +68,4 @@ export class FileListingRx {
60
68
  }
61
69
  }
62
70
  FileListingRx.INSTANCE = new FileListingRx();
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQWtCLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxNQUFNLE9BQU8sYUFBYTtJQUl4Qjs7OztnRkFJNEU7SUFFckUsa0JBQWtCLENBQ3ZCLEtBQXNCO1FBRXRCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLHVCQUF1QixDQUM3QixLQUFzQixFQUN0QixNQUFnQztRQUVoQyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDckIsTUFBTSxjQUFjLEdBQUcsS0FBaUMsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUMxQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQzFFLENBQUMsRUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDM0IsQ0FBQztTQUNIO2FBQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3ZCLE1BQU0sU0FBUyxHQUFHLEtBQTRCLENBQUM7WUFDL0MsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDcEIsQ0FBQztTQUNIO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVPLGNBQWMsQ0FDcEIsU0FBOEIsRUFDOUIsTUFBdUM7UUFFdkMsT0FBTyxJQUFJLFVBQVUsQ0FDbkIsUUFBUSxDQUFDLEVBQUU7WUFDVCxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksU0FBUyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDckQsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RCLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRTtnQkFDUCxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNwQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQ2pCLGNBQXdDO1FBRXhDLE9BQU8sSUFBSSxVQUFVLENBQ25CLFFBQVEsQ0FBQyxFQUFFO1lBQ1QsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRSxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUMxRSxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyx5QkFBeUIsQ0FDL0IsUUFBdUMsRUFDdkMsZUFBMEM7UUFFMUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDakMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRSxlQUFlLENBQUMsQ0FBQzthQUMzRDtpQkFBTTtnQkFDTCxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcEZzQixzQkFBUSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VNUFRZLCBtZXJnZU1hcCwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmliZXIsIHppcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0ZpbGVFbnRyeX0gZnJvbSAnLi9maWxlLWVudHJ5JztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBjbGFzcyBGaWxlTGlzdGluZ1J4IHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElOU1RBTkNFID0gbmV3IEZpbGVMaXN0aW5nUngoKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbGlzdEZpbGVzUmVjdXJzaXZlKFxuICAgIGVudHJ5OiBGaWxlU3lzdGVtRW50cnlcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIHJldHVybiB0aGlzLmxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKGVudHJ5LCBudWxsKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgbGlzdEZpbGVzUmVjdXJzaXZlQXN5bmMoXG4gICAgZW50cnk6IEZpbGVTeXN0ZW1FbnRyeSxcbiAgICBwYXJlbnQ6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeVxuICApOiBPYnNlcnZhYmxlPEZpbGVFbnRyeVtdPiB7XG4gICAgaWYgKGVudHJ5LmlzRGlyZWN0b3J5KSB7XG4gICAgICBjb25zdCBkaXJlY3RvcnlFbnRyeSA9IGVudHJ5IGFzIEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeTtcbiAgICAgIHJldHVybiB0aGlzLnJlYWRFbnRyaWVzKGRpcmVjdG9yeUVudHJ5KS5waXBlKFxuICAgICAgICBtZXJnZU1hcChlbnRyaWVzID0+IHppcChcbiAgICAgICAgICBlbnRyaWVzLm1hcChlbnRyeSA9PiB0aGlzLmxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKGVudHJ5LCBkaXJlY3RvcnlFbnRyeSkpXG4gICAgICAgICkpLFxuICAgICAgICBtYXAoZmlsZXMgPT4gZmlsZXMuZmxhdCgpKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChlbnRyeS5pc0ZpbGUpIHtcbiAgICAgIGNvbnN0IGZpbGVFbnRyeSA9IGVudHJ5IGFzIEZpbGVTeXN0ZW1GaWxlRW50cnk7XG4gICAgICByZXR1cm4gdGhpcy5vYnNlcnZhYmxlRmlsZShmaWxlRW50cnksIHBhcmVudCkucGlwZShcbiAgICAgICAgbWFwKGZpbGUgPT4gW2ZpbGVdKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIEVNUFRZO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2YWJsZUZpbGUoXG4gICAgZmlsZUVudHJ5OiBGaWxlU3lzdGVtRmlsZUVudHJ5LFxuICAgIHBhcmVudDogRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5IHwgbnVsbFxuICApOiBPYnNlcnZhYmxlPEZpbGVFbnRyeT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxGaWxlRW50cnk+KFxuICAgICAgb2JzZXJ2ZXIgPT4ge1xuICAgICAgICBmaWxlRW50cnkuZmlsZShmaWxlID0+IHtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KG5ldyBGaWxlRW50cnkoZmlsZSwgcGFyZW50Py5mdWxsUGF0aCkpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkRW50cmllcyhcbiAgICBkaXJlY3RvcnlFbnRyeTogRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5XG4gICk6IE9ic2VydmFibGU8RmlsZVN5c3RlbUVudHJ5W10+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8RmlsZVN5c3RlbUVudHJ5W10+KFxuICAgICAgb2JzZXJ2ZXIgPT4ge1xuICAgICAgICB0aGlzLmNvbnN1bWVSZWFkZXJUb0NvbXBsZXRpb24ob2JzZXJ2ZXIsIGRpcmVjdG9yeUVudHJ5LmNyZWF0ZVJlYWRlcigpKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdW1lUmVhZGVyVG9Db21wbGV0aW9uKFxuICAgIG9ic2VydmVyOiBTdWJzY3JpYmVyPEZpbGVTeXN0ZW1FbnRyeVtdPixcbiAgICBkaXJlY3RvcnlSZWFkZXI6IEZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXJcbiAgKTogdm9pZCB7XG4gICAgZGlyZWN0b3J5UmVhZGVyLnJlYWRFbnRyaWVzKGVudHJpZXMgPT4ge1xuICAgICAgaWYgKGVudHJpZXMgJiYgZW50cmllcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIG9ic2VydmVyLm5leHQoZW50cmllcyk7XG4gICAgICAgIHRoaXMuY29uc3VtZVJlYWRlclRvQ29tcGxldGlvbihvYnNlcnZlciwgZGlyZWN0b3J5UmVhZGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9XG4gICAgfSwgZXJyID0+IHtcbiAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XG4gICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0aW5nLXJ4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy9saXN0aW5nL2ZpbGUtbGlzdGluZy1yeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQWtCLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxNQUFNLE9BQU8sYUFBYTtJQUl4Qjs7OztnRkFJNEU7SUFFckUsa0JBQWtCLENBQ3ZCLEtBQXNCO1FBRXRCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLHVCQUF1QixDQUM3QixLQUFzQixFQUN0QixNQUFnQztRQUVoQyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDckIsTUFBTSxjQUFjLEdBQUcsS0FBaUMsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUMxQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQzFFLENBQUMsRUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDM0IsQ0FBQztTQUNIO2FBQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3ZCLE1BQU0sU0FBUyxHQUFHLEtBQTRCLENBQUM7WUFDL0MsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDcEIsQ0FBQztTQUNIO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVPLGNBQWMsQ0FDcEIsU0FBOEIsRUFDOUIsTUFBdUM7UUFFdkMsT0FBTyxJQUFJLFVBQVUsQ0FDbkIsUUFBUSxDQUFDLEVBQUU7WUFDVCxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNQLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3BCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQW1CO1FBQzFDLElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN4QixJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMxQjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sV0FBVyxDQUNqQixjQUF3QztRQUV4QyxPQUFPLElBQUksVUFBVSxDQUNuQixRQUFRLENBQUMsRUFBRTtZQUNULElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDMUUsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU8seUJBQXlCLENBQy9CLFFBQXVDLEVBQ3ZDLGVBQTBDO1FBRTFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDcEMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2pDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUM7YUFDM0Q7aUJBQU07Z0JBQ0wsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ1AsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdGc0Isc0JBQVEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFTVBUWSwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpYmVyLCB6aXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWxlRW50cnl9IGZyb20gJy4vZmlsZS1lbnRyeSc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY2xhc3MgRmlsZUxpc3RpbmdSeCB7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJTlNUQU5DRSA9IG5ldyBGaWxlTGlzdGluZ1J4KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGxpc3RGaWxlc1JlY3Vyc2l2ZShcbiAgICBlbnRyeTogRmlsZVN5c3RlbUVudHJ5XG4gICk6IE9ic2VydmFibGU8RmlsZUVudHJ5W10+IHtcbiAgICByZXR1cm4gdGhpcy5saXN0RmlsZXNSZWN1cnNpdmVBc3luYyhlbnRyeSwgbnVsbCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGxpc3RGaWxlc1JlY3Vyc2l2ZUFzeW5jKFxuICAgIGVudHJ5OiBGaWxlU3lzdGVtRW50cnksXG4gICAgcGFyZW50OiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnlcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnlbXT4ge1xuICAgIGlmIChlbnRyeS5pc0RpcmVjdG9yeSkge1xuICAgICAgY29uc3QgZGlyZWN0b3J5RW50cnkgPSBlbnRyeSBhcyBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnk7XG4gICAgICByZXR1cm4gdGhpcy5yZWFkRW50cmllcyhkaXJlY3RvcnlFbnRyeSkucGlwZShcbiAgICAgICAgbWVyZ2VNYXAoZW50cmllcyA9PiB6aXAoXG4gICAgICAgICAgZW50cmllcy5tYXAoZW50cnkgPT4gdGhpcy5saXN0RmlsZXNSZWN1cnNpdmVBc3luYyhlbnRyeSwgZGlyZWN0b3J5RW50cnkpKVxuICAgICAgICApKSxcbiAgICAgICAgbWFwKGZpbGVzID0+IGZpbGVzLmZsYXQoKSksXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoZW50cnkuaXNGaWxlKSB7XG4gICAgICBjb25zdCBmaWxlRW50cnkgPSBlbnRyeSBhcyBGaWxlU3lzdGVtRmlsZUVudHJ5O1xuICAgICAgcmV0dXJuIHRoaXMub2JzZXJ2YWJsZUZpbGUoZmlsZUVudHJ5LCBwYXJlbnQpLnBpcGUoXG4gICAgICAgIG1hcChmaWxlID0+IFtmaWxlXSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBFTVBUWTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmFibGVGaWxlKFxuICAgIGZpbGVFbnRyeTogRmlsZVN5c3RlbUZpbGVFbnRyeSxcbiAgICBwYXJlbnQ6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeSB8IG51bGxcbiAgKTogT2JzZXJ2YWJsZTxGaWxlRW50cnk+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8RmlsZUVudHJ5PihcbiAgICAgIG9ic2VydmVyID0+IHtcbiAgICAgICAgZmlsZUVudHJ5LmZpbGUoZmlsZSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChGaWxlRW50cnkucmVsYXRpdmVGaWxlKGZpbGUsIHRoaXMudHJpbVN0YXJpbmdTbGFzaChwYXJlbnQ/LmZ1bGxQYXRoKSkpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmltU3RhcmluZ1NsYXNoKHBhdGg6IHN0cmluZyB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmIChwYXRoKSB7XG4gICAgICBpZiAocGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgICAgcGF0aCA9IHBhdGguc3Vic3RyaW5nKDEpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGF0aDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZEVudHJpZXMoXG4gICAgZGlyZWN0b3J5RW50cnk6IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeVxuICApOiBPYnNlcnZhYmxlPEZpbGVTeXN0ZW1FbnRyeVtdPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEZpbGVTeXN0ZW1FbnRyeVtdPihcbiAgICAgIG9ic2VydmVyID0+IHtcbiAgICAgICAgdGhpcy5jb25zdW1lUmVhZGVyVG9Db21wbGV0aW9uKG9ic2VydmVyLCBkaXJlY3RvcnlFbnRyeS5jcmVhdGVSZWFkZXIoKSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3VtZVJlYWRlclRvQ29tcGxldGlvbihcbiAgICBvYnNlcnZlcjogU3Vic2NyaWJlcjxGaWxlU3lzdGVtRW50cnlbXT4sXG4gICAgZGlyZWN0b3J5UmVhZGVyOiBGaWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyXG4gICk6IHZvaWQge1xuICAgIGRpcmVjdG9yeVJlYWRlci5yZWFkRW50cmllcyhlbnRyaWVzID0+IHtcbiAgICAgIGlmIChlbnRyaWVzICYmIGVudHJpZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBvYnNlcnZlci5uZXh0KGVudHJpZXMpO1xuICAgICAgICB0aGlzLmNvbnN1bWVSZWFkZXJUb0NvbXBsZXRpb24ob2JzZXJ2ZXIsIGRpcmVjdG9yeVJlYWRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgfVxuICAgIH0sIGVyciA9PiB7XG4gICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xuICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICB9KTtcbiAgfVxuXG59XG4iXX0=