@dereekb/dbx-firebase 12.6.21 → 12.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/auth/login/login.email.form.component.mjs +1 -1
- package/esm2022/lib/development/development.directive.mjs +6 -5
- package/esm2022/lib/development/development.popup.content.component.mjs +7 -13
- package/esm2022/lib/model/modules/model/entities/model.entities.component.mjs +4 -6
- package/esm2022/lib/model/modules/model/entities/model.entities.entity.component.mjs +4 -7
- package/esm2022/lib/model/modules/model/entities/model.entities.widget.entity.debug.component.mjs +3 -6
- package/esm2022/lib/model/modules/model/model.types.view.directive.mjs +9 -9
- package/esm2022/lib/model/modules/store/store.collection.change.directive.mjs +6 -9
- package/esm2022/lib/model/modules/store/store.collection.directive.mjs +6 -10
- package/esm2022/lib/model/modules/store/store.collection.list.directive.mjs +9 -10
- package/esm2022/lib/model/modules/store/store.document.directive.mjs +6 -11
- package/esm2022/lib/model/modules/store/store.document.twoway.key.directive.mjs +5 -6
- package/esm2022/lib/model/modules/store/store.subcollection.directive.mjs +5 -9
- package/esm2022/lib/model/system/systemstate.document.store.accessor.mjs +1 -4
- package/esm2022/lib/modules/notification/store/notification.item.store.mjs +1 -1
- package/esm2022/lib/modules/storagefile/container/storagefile.upload.action.handler.directive.mjs +12 -19
- package/esm2022/lib/modules/storagefile/container/storagefile.upload.initialize.document.directive.mjs +7 -12
- package/esm2022/lib/modules/storagefile/container/storagefile.upload.store.directive.mjs +5 -10
- package/esm2022/lib/modules/storagefile/container/storagefile.upload.sync.directive.mjs +5 -13
- package/esm2022/lib/modules/storagefile/store/storagefile.upload.store.mjs +1 -1
- package/fesm2022/dereekb-dbx-firebase.mjs +62 -126
- package/fesm2022/dereekb-dbx-firebase.mjs.map +1 -1
- package/lib/auth/login/login.email.form.component.d.ts +1 -2
- package/lib/development/development.directive.d.ts +3 -3
- package/lib/development/development.popup.content.component.d.ts +2 -5
- package/lib/model/modules/model/entities/model.entities.component.d.ts +1 -3
- package/lib/model/modules/model/entities/model.entities.entity.component.d.ts +1 -3
- package/lib/model/modules/model/entities/model.entities.widget.entity.debug.component.d.ts +3 -4
- package/lib/model/modules/model/model.types.view.directive.d.ts +2 -4
- package/lib/model/modules/store/store.collection.change.directive.d.ts +2 -4
- package/lib/model/modules/store/store.collection.directive.d.ts +2 -4
- package/lib/model/modules/store/store.collection.list.directive.d.ts +1 -4
- package/lib/model/modules/store/store.document.directive.d.ts +2 -4
- package/lib/model/modules/store/store.document.twoway.key.directive.d.ts +1 -2
- package/lib/model/modules/store/store.subcollection.directive.d.ts +2 -4
- package/lib/model/system/systemstate.document.store.accessor.d.ts +1 -3
- package/lib/modules/notification/store/notification.item.store.d.ts +1 -2
- package/lib/modules/storagefile/container/storagefile.upload.action.handler.directive.d.ts +2 -8
- package/lib/modules/storagefile/container/storagefile.upload.initialize.document.directive.d.ts +1 -4
- package/lib/modules/storagefile/container/storagefile.upload.store.directive.d.ts +1 -5
- package/lib/modules/storagefile/container/storagefile.upload.sync.directive.d.ts +1 -6
- package/lib/modules/storagefile/store/storagefile.upload.store.d.ts +1 -2
- package/package.json +1 -1
package/esm2022/lib/modules/storagefile/container/storagefile.upload.action.handler.directive.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Directive, effect, inject, input } from '@angular/core';
|
|
2
2
|
import { DbxFirebaseStorageFileUploadStore } from '../store/storagefile.upload.store';
|
|
3
3
|
import { storageFileUploadFiles } from './storagefile.upload.handler';
|
|
4
|
-
import { DbxActionContextStoreSourceInstance, DbxActionHandlerInstance } from '@dereekb/dbx-core';
|
|
5
|
-
import { errorResult, startWithBeginLoading,
|
|
4
|
+
import { clean, cleanSubscription, DbxActionContextStoreSourceInstance, DbxActionHandlerInstance } from '@dereekb/dbx-core';
|
|
5
|
+
import { errorResult, startWithBeginLoading, successResult } from '@dereekb/rxjs';
|
|
6
6
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
7
|
import { distinctUntilChanged, filter, map, of, switchMap, tap, throttleTime } from 'rxjs';
|
|
8
8
|
import { StorageFileUploadFilesError } from './storagefile.upload.error';
|
|
@@ -11,13 +11,9 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
* Connects a DbxFirebaseStorageFileUploadStore to a DbxActionContext, and handles the upload action.
|
|
12
12
|
*/
|
|
13
13
|
export class DbxFirebaseStorageFileUploadActionHandlerDirective {
|
|
14
|
-
_triggerSub = new SubscriptionObject();
|
|
15
|
-
_readySub = new SubscriptionObject();
|
|
16
|
-
_isWorkingSub = new SubscriptionObject();
|
|
17
|
-
_progressSub = new SubscriptionObject();
|
|
18
14
|
source = inject((DbxActionContextStoreSourceInstance));
|
|
19
15
|
uploadStore = inject(DbxFirebaseStorageFileUploadStore);
|
|
20
|
-
_dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
|
|
16
|
+
_dbxActionHandlerInstance = clean(new DbxActionHandlerInstance(this.source));
|
|
21
17
|
/**
|
|
22
18
|
* If true, the action will be triggered when files are set.
|
|
23
19
|
*
|
|
@@ -76,10 +72,10 @@ export class DbxFirebaseStorageFileUploadActionHandlerDirective {
|
|
|
76
72
|
});
|
|
77
73
|
files$ = this.uploadStore.files$;
|
|
78
74
|
uploadHandler$ = toObservable(this.uploadHandler);
|
|
79
|
-
|
|
75
|
+
constructor() {
|
|
80
76
|
this._dbxActionHandlerInstance.init();
|
|
81
77
|
// trigger the action if files are available
|
|
82
|
-
this.
|
|
78
|
+
cleanSubscription(this.triggerOnFiles$
|
|
83
79
|
.pipe(switchMap((triggerOnFiles) => {
|
|
84
80
|
if (triggerOnFiles) {
|
|
85
81
|
return this.files$.pipe(map((x) => x?.length));
|
|
@@ -92,18 +88,15 @@ export class DbxFirebaseStorageFileUploadActionHandlerDirective {
|
|
|
92
88
|
if (canTrigger) {
|
|
93
89
|
this.source.trigger();
|
|
94
90
|
}
|
|
95
|
-
});
|
|
91
|
+
}));
|
|
96
92
|
// ready the source with files after trigger is called and files are available
|
|
97
|
-
this.
|
|
93
|
+
cleanSubscription(this.files$.pipe(switchMap((files) => this.source.triggered$.pipe(map(() => files)))).subscribe((files) => {
|
|
98
94
|
this.source.readyValue(files);
|
|
99
|
-
});
|
|
95
|
+
}));
|
|
100
96
|
// sync isWorking
|
|
101
|
-
this.
|
|
97
|
+
cleanSubscription(this.uploadStore.setIsUploadHandlerWorking(this.source.isWorking$));
|
|
102
98
|
// sync progress amount
|
|
103
|
-
this.
|
|
104
|
-
}
|
|
105
|
-
ngOnDestroy() {
|
|
106
|
-
this._dbxActionHandlerInstance.destroy();
|
|
99
|
+
this.source.setWorkProgress(this.uploadStore.latestProgressEvent$.pipe(throttleTime(100, undefined, { leading: true, trailing: true }), map((x) => x?.overallProgress), distinctUntilChanged()));
|
|
107
100
|
}
|
|
108
101
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadActionHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
109
102
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadActionHandlerDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadActionHandler]", inputs: { triggerOnFiles: { classPropertyName: "triggerOnFiles", publicName: "triggerOnFiles", isSignal: true, isRequired: false, transformFunction: null }, cancelUploadsOnUploadError: { classPropertyName: "cancelUploadsOnUploadError", publicName: "cancelUploadsOnUploadError", isSignal: true, isRequired: false, transformFunction: null }, actionFailureOnUploadError: { classPropertyName: "actionFailureOnUploadError", publicName: "actionFailureOnUploadError", isSignal: true, isRequired: false, transformFunction: null }, uploadHandler: { classPropertyName: "uploadHandler", publicName: "dbxFirebaseStorageFileUploadActionHandler", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
|
|
@@ -114,5 +107,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
114
107
|
selector: '[dbxFirebaseStorageFileUploadActionHandler]',
|
|
115
108
|
standalone: true
|
|
116
109
|
}]
|
|
117
|
-
}] });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLmFjdGlvbi5oYW5kbGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvc3RvcmFnZWZpbGUvY29udGFpbmVyL3N0b3JhZ2VmaWxlLnVwbG9hZC5hY3Rpb24uaGFuZGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEYsT0FBTyxFQUFFLHNCQUFzQixFQUErRCxNQUFNLDhCQUE4QixDQUFDO0FBQ25JLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxXQUFXLEVBQWdCLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFekU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sa0RBQWtEO0lBQzVDLFdBQVcsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7SUFDdkMsU0FBUyxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztJQUNyQyxhQUFhLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO0lBQ3pDLFlBQVks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QUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsaUJBQWlCO1FBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVyRyx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUN4QyxZQUFZLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQy9ELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxFQUM5QixvQkFBb0IsRUFBRSxDQUN2QixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQyxDQUFDO3dHQS9IVSxrREFBa0Q7NEZBQWxELGtEQUFrRDs7NEZBQWxELGtEQUFrRDtrQkFKOUQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkNBQTZDO29CQUN2RCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUgfSBmcm9tICcuLi9zdG9yZS9zdG9yYWdlZmlsZS51cGxvYWQuc3RvcmUnO1xuaW1wb3J0IHsgc3RvcmFnZUZpbGVVcGxvYWRGaWxlcywgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0ZpbmFsUmVzdWx0LCBTdG9yYWdlRmlsZVVwbG9hZEhhbmRsZXIgfSBmcm9tICcuL3N0b3JhZ2VmaWxlLnVwbG9hZC5oYW5kbGVyJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlLCBEYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBlcnJvclJlc3VsdCwgTG9hZGluZ1N0YXRlLCBzdGFydFdpdGhCZWdpbkxvYWRpbmcsIFN1YnNjcmlwdGlvbk9iamVjdCwgc3VjY2Vzc1Jlc3VsdCwgV29ya1VzaW5nQ29udGV4dCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBvZiwgc3dpdGNoTWFwLCB0YXAsIHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0Vycm9yIH0gZnJvbSAnLi9zdG9yYWdlZmlsZS51cGxvYWQuZXJyb3InO1xuXG4vKipcbiAqIENvbm5lY3RzIGEgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlIHRvIGEgRGJ4QWN0aW9uQ29udGV4dCwgYW5kIGhhbmRsZXMgdGhlIHVwbG9hZCBhY3Rpb24uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkQWN0aW9uSGFuZGxlcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRBY3Rpb25IYW5kbGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF90cmlnZ2VyU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZWFkeVN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaXNXb3JraW5nU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wcm9ncmVzc1N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2U8RmlsZVtdLCBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQ+KTtcbiAgcmVhZG9ubHkgdXBsb2FkU3RvcmUgPSBpbmplY3QoRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlKTtcblxuICByZWFkb25seSBfZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlID0gbmV3IERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZTxGaWxlW10sIFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD4odGhpcy5zb3VyY2UpO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYWN0aW9uIHdpbGwgYmUgdHJpZ2dlcmVkIHdoZW4gZmlsZXMgYXJlIHNldC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gZmFsc2UuXG4gICAqL1xuICByZWFkb25seSB0cmlnZ2VyT25GaWxlcyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgdHJpZ2dlck9uRmlsZXMkID0gdG9PYnNlcnZhYmxlKHRoaXMudHJpZ2dlck9uRmlsZXMpO1xuXG4gIC8qKlxuICAgKiBVcGxvYWRpbmcgb2YgYWxsL2FueSBmaWxlcyBzaG91bGQgYmUgY2FuY2VsbGVkIGlmIGFueSBmaWxlIGZhaWxzIHRvIHVwbG9hZC5cbiAgICpcbiAgICogQW55IGZpbGUgdGhhdCB3YXMgc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHdpbGwgbm90IGJlIHJldmVydGVkLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbFVwbG9hZHNPblVwbG9hZEVycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXBsb2FkIHNob3VsZCBmYWlsIGlmIGFueSBmaWxlIGZhaWxzIHRvIHVwbG9hZCwgcmF0aGVyIHRoYW4gaWYgYWxsIGZpbGVzIGZhaWwgdG8gdXBsb2FkLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHJlYWRvbmx5IHVwbG9hZEhhbmRsZXIgPSBpbnB1dC5yZXF1aXJlZDxNYXliZTxTdG9yYWdlRmlsZVVwbG9hZEhhbmRsZXI+Pih7IGFsaWFzOiAnZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEFjdGlvbkhhbmRsZXInIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfdXBsb2FkSGFuZGxlckVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdXBsb2FkSGFuZGxlciA9IHRoaXMudXBsb2FkSGFuZGxlcigpO1xuICAgIGxldCBoYW5kbGVyRnVuY3Rpb246IE1heWJlPFdvcmtVc2luZ0NvbnRleHQ8RmlsZVtdLCBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQ+PjtcblxuICAgIGlmICh1cGxvYWRIYW5kbGVyKSB7XG4gICAgICBoYW5kbGVyRnVuY3Rpb24gPSAoZmlsZXMsIGNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgeyB1cGxvYWQsIGNhbmNlbCB9ID0gc3RvcmFnZUZpbGVVcGxvYWRGaWxlcyh7XG4gICAgICAgICAgZmlsZXMsXG4gICAgICAgICAgdXBsb2FkSGFuZGxlclxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBsb2FkaW5nU3RhdGVPYnMgPSB1cGxvYWQucGlwZShcbiAgICAgICAgICB0YXAoKHgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudXBsb2FkU3RvcmUuc2V0TGF0ZXN0UHJvZ3Jlc3NFdmVudCh4KTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWx0ZXIoKHgpID0+IHguaXNDb21wbGV0ZSksXG4gICAgICAgICAgdGFwKCh4KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwbG9hZFN0b3JlLnNldFVwbG9hZFJlc3VsdCh4LnJlc3VsdCBhcyBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIG1hcCgoeCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0geC5yZXN1bHQgYXMgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0ZpbmFsUmVzdWx0O1xuICAgICAgICAgICAgY29uc3QgeyBzdWNjZXNzRmlsZVJlc3VsdHMsIGVycm9yRmlsZVJlc3VsdHMgfSA9IHJlc3VsdDtcblxuICAgICAgICAgICAgY29uc3QgYWN0aW9uRmFpbHVyZU9uVXBsb2FkRXJyb3IgPSB0aGlzLmFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yKCk7XG5cbiAgICAgICAgICAgIGxldCBmaW5hbExvYWRpbmdTdGF0ZTogTG9hZGluZ1N0YXRlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD47XG5cbiAgICAgICAgICAgIGlmICgoZXJyb3JGaWxlUmVzdWx0cy5sZW5ndGggPiAwICYmIGFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yKSB8fCAoc3VjY2Vzc0ZpbGVSZXN1bHRzLmxlbmd0aCA9PT0gMCAmJiBlcnJvckZpbGVSZXN1bHRzLmxlbmd0aCA+IDApKSB7XG4gICAgICAgICAgICAgIGZpbmFsTG9hZGluZ1N0YXRlID0gZXJyb3JSZXN1bHQobmV3IFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNFcnJvcihyZXN1bHQpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGZpbmFsTG9hZGluZ1N0YXRlID0gc3VjY2Vzc1Jlc3VsdCh4LnJlc3VsdCBhcyBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZmluYWxMb2FkaW5nU3RhdGU7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgc3RhcnRXaXRoQmVnaW5Mb2FkaW5nKClcbiAgICAgICAgKTtcblxuICAgICAgICBjb250ZXh0LnN0YXJ0V29ya2luZ1dpdGhMb2FkaW5nU3RhdGVPYnNlcnZhYmxlKGxvYWRpbmdTdGF0ZU9icyk7XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBoYW5kbGVyRnVuY3Rpb24gPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLnNldEhhbmRsZXJGdW5jdGlvbihoYW5kbGVyRnVuY3Rpb24pO1xuICB9KTtcblxuICByZWFkb25seSBmaWxlcyQgPSB0aGlzLnVwbG9hZFN0b3JlLmZpbGVzJDtcbiAgcmVhZG9ubHkgdXBsb2FkSGFuZGxlciQgPSB0b09ic2VydmFibGUodGhpcy51cGxvYWRIYW5kbGVyKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UuaW5pdCgpO1xuXG4gICAgLy8gdHJpZ2dlciB0aGUgYWN0aW9uIGlmIGZpbGVzIGFyZSBhdmFpbGFibGVcbiAgICB0aGlzLl90cmlnZ2VyU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMudHJpZ2dlck9uRmlsZXMkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh0cmlnZ2VyT25GaWxlcykgPT4ge1xuICAgICAgICAgIGlmICh0cmlnZ2VyT25GaWxlcykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmlsZXMkLnBpcGUobWFwKCh4KSA9PiB4Py5sZW5ndGgpKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChjYW5UcmlnZ2VyKSA9PiB7XG4gICAgICAgIGlmIChjYW5UcmlnZ2VyKSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2UudHJpZ2dlcigpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIC8vIHJlYWR5IHRoZSBzb3VyY2Ugd2l0aCBmaWxlcyBhZnRlciB0cmlnZ2VyIGlzIGNhbGxlZCBhbmQgZmlsZXMgYXJlIGF2YWlsYWJsZVxuICAgIHRoaXMuX3JlYWR5U3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZXMkLnBpcGUoc3dpdGNoTWFwKChmaWxlcykgPT4gdGhpcy5zb3VyY2UudHJpZ2dlcmVkJC5waXBlKG1hcCgoKSA9PiBmaWxlcykpKSkuc3Vic2NyaWJlKChmaWxlcykgPT4ge1xuICAgICAgdGhpcy5zb3VyY2UucmVhZHlWYWx1ZShmaWxlcyk7XG4gICAgfSk7XG5cbiAgICAvLyBzeW5jIGlzV29ya2luZ1xuICAgIHRoaXMuX2lzV29ya2luZ1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLnVwbG9hZFN0b3JlLnNldElzVXBsb2FkSGFuZGxlcldvcmtpbmcodGhpcy5zb3VyY2UuaXNXb3JraW5nJCk7XG5cbiAgICAvLyBzeW5jIHByb2dyZXNzIGFtb3VudFxuICAgIHRoaXMuX3Byb2dyZXNzU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuc291cmNlLnNldFdvcmtQcm9ncmVzcyhcbiAgICAgIHRoaXMudXBsb2FkU3RvcmUubGF0ZXN0UHJvZ3Jlc3NFdmVudCQucGlwZShcbiAgICAgICAgdGhyb3R0bGVUaW1lKDEwMCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICBtYXAoKHgpID0+IHg/Lm92ZXJhbGxQcm9ncmVzcyksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
|
|
110
|
+
}], ctorParameters: () => [] });
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLmFjdGlvbi5oYW5kbGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvc3RvcmFnZWZpbGUvY29udGFpbmVyL3N0b3JhZ2VmaWxlLnVwbG9hZC5hY3Rpb24uaGFuZGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN0RixPQUFPLEVBQUUsc0JBQXNCLEVBQStELE1BQU0sOEJBQThCLENBQUM7QUFDbkksT0FBTyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxtQ0FBbUMsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVILE9BQU8sRUFBRSxXQUFXLEVBQWdCLHFCQUFxQixFQUFFLGFBQWEsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFekU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sa0RBQWtEO0lBQ3BELE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQSxtQ0FBOEUsQ0FBQSxDQUFDLENBQUM7SUFDaEcsV0FBVyxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRXhELHlCQUF5QixHQUFHLEtB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RXRGLHVCQUF1QjtRQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQ3hDLFlBQVksQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFDL0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsZUFBZSxDQUFDLEVBQzlCLG9CQUFvQixFQUFFLENBQ3ZCLENBQ0YsQ0FBQztJQUNKLENBQUM7d0dBMUhVLGtEQUFrRDs0RkFBbEQsa0RBQWtEOzs0RkFBbEQsa0RBQWtEO2tCQUo5RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlIH0gZnJvbSAnLi4vc3RvcmUvc3RvcmFnZWZpbGUudXBsb2FkLnN0b3JlJztcbmltcG9ydCB7IHN0b3JhZ2VGaWxlVXBsb2FkRmlsZXMsIFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdCwgU3RvcmFnZUZpbGVVcGxvYWRIYW5kbGVyIH0gZnJvbSAnLi9zdG9yYWdlZmlsZS51cGxvYWQuaGFuZGxlcic7XG5pbXBvcnQgeyBjbGVhbiwgY2xlYW5TdWJzY3JpcHRpb24sIERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlLCBEYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBlcnJvclJlc3VsdCwgTG9hZGluZ1N0YXRlLCBzdGFydFdpdGhCZWdpbkxvYWRpbmcsIHN1Y2Nlc3NSZXN1bHQsIFdvcmtVc2luZ0NvbnRleHQgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgb2YsIHN3aXRjaE1hcCwgdGFwLCB0aHJvdHRsZVRpbWUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNFcnJvciB9IGZyb20gJy4vc3RvcmFnZWZpbGUudXBsb2FkLmVycm9yJztcblxuLyoqXG4gKiBDb25uZWN0cyBhIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSB0byBhIERieEFjdGlvbkNvbnRleHQsIGFuZCBoYW5kbGVzIHRoZSB1cGxvYWQgYWN0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEFjdGlvbkhhbmRsZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkQWN0aW9uSGFuZGxlckRpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxGaWxlW10sIFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD4pO1xuICByZWFkb25seSB1cGxvYWRTdG9yZSA9IGluamVjdChEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUpO1xuXG4gIHJlYWRvbmx5IF9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UgPSBjbGVhbihuZXcgRGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlPEZpbGVbXSwgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0ZpbmFsUmVzdWx0Pih0aGlzLnNvdXJjZSkpO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYWN0aW9uIHdpbGwgYmUgdHJpZ2dlcmVkIHdoZW4gZmlsZXMgYXJlIHNldC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gZmFsc2UuXG4gICAqL1xuICByZWFkb25seSB0cmlnZ2VyT25GaWxlcyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgdHJpZ2dlck9uRmlsZXMkID0gdG9PYnNlcnZhYmxlKHRoaXMudHJpZ2dlck9uRmlsZXMpO1xuXG4gIC8qKlxuICAgKiBVcGxvYWRpbmcgb2YgYWxsL2FueSBmaWxlcyBzaG91bGQgYmUgY2FuY2VsbGVkIGlmIGFueSBmaWxlIGZhaWxzIHRvIHVwbG9hZC5cbiAgICpcbiAgICogQW55IGZpbGUgdGhhdCB3YXMgc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHdpbGwgbm90IGJlIHJldmVydGVkLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbFVwbG9hZHNPblVwbG9hZEVycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXBsb2FkIHNob3VsZCBmYWlsIGlmIGFueSBmaWxlIGZhaWxzIHRvIHVwbG9hZCwgcmF0aGVyIHRoYW4gaWYgYWxsIGZpbGVzIGZhaWwgdG8gdXBsb2FkLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHJlYWRvbmx5IHVwbG9hZEhhbmRsZXIgPSBpbnB1dC5yZXF1aXJlZDxNYXliZTxTdG9yYWdlRmlsZVVwbG9hZEhhbmRsZXI+Pih7IGFsaWFzOiAnZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEFjdGlvbkhhbmRsZXInIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfdXBsb2FkSGFuZGxlckVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdXBsb2FkSGFuZGxlciA9IHRoaXMudXBsb2FkSGFuZGxlcigpO1xuICAgIGxldCBoYW5kbGVyRnVuY3Rpb246IE1heWJlPFdvcmtVc2luZ0NvbnRleHQ8RmlsZVtdLCBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQ+PjtcblxuICAgIGlmICh1cGxvYWRIYW5kbGVyKSB7XG4gICAgICBoYW5kbGVyRnVuY3Rpb24gPSAoZmlsZXMsIGNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgeyB1cGxvYWQsIGNhbmNlbCB9ID0gc3RvcmFnZUZpbGVVcGxvYWRGaWxlcyh7XG4gICAgICAgICAgZmlsZXMsXG4gICAgICAgICAgdXBsb2FkSGFuZGxlclxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBsb2FkaW5nU3RhdGVPYnMgPSB1cGxvYWQucGlwZShcbiAgICAgICAgICB0YXAoKHgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudXBsb2FkU3RvcmUuc2V0TGF0ZXN0UHJvZ3Jlc3NFdmVudCh4KTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWx0ZXIoKHgpID0+IHguaXNDb21wbGV0ZSksXG4gICAgICAgICAgdGFwKCh4KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwbG9hZFN0b3JlLnNldFVwbG9hZFJlc3VsdCh4LnJlc3VsdCBhcyBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIG1hcCgoeCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0geC5yZXN1bHQgYXMgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0ZpbmFsUmVzdWx0O1xuICAgICAgICAgICAgY29uc3QgeyBzdWNjZXNzRmlsZVJlc3VsdHMsIGVycm9yRmlsZVJlc3VsdHMgfSA9IHJlc3VsdDtcblxuICAgICAgICAgICAgY29uc3QgYWN0aW9uRmFpbHVyZU9uVXBsb2FkRXJyb3IgPSB0aGlzLmFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yKCk7XG5cbiAgICAgICAgICAgIGxldCBmaW5hbExvYWRpbmdTdGF0ZTogTG9hZGluZ1N0YXRlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD47XG5cbiAgICAgICAgICAgIGlmICgoZXJyb3JGaWxlUmVzdWx0cy5sZW5ndGggPiAwICYmIGFjdGlvbkZhaWx1cmVPblVwbG9hZEVycm9yKSB8fCAoc3VjY2Vzc0ZpbGVSZXN1bHRzLmxlbmd0aCA9PT0gMCAmJiBlcnJvckZpbGVSZXN1bHRzLmxlbmd0aCA+IDApKSB7XG4gICAgICAgICAgICAgIGZpbmFsTG9hZGluZ1N0YXRlID0gZXJyb3JSZXN1bHQobmV3IFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNFcnJvcihyZXN1bHQpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGZpbmFsTG9hZGluZ1N0YXRlID0gc3VjY2Vzc1Jlc3VsdCh4LnJlc3VsdCBhcyBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZmluYWxMb2FkaW5nU3RhdGU7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgc3RhcnRXaXRoQmVnaW5Mb2FkaW5nKClcbiAgICAgICAgKTtcblxuICAgICAgICBjb250ZXh0LnN0YXJ0V29ya2luZ1dpdGhMb2FkaW5nU3RhdGVPYnNlcnZhYmxlKGxvYWRpbmdTdGF0ZU9icyk7XG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBoYW5kbGVyRnVuY3Rpb24gPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLnNldEhhbmRsZXJGdW5jdGlvbihoYW5kbGVyRnVuY3Rpb24pO1xuICB9KTtcblxuICByZWFkb25seSBmaWxlcyQgPSB0aGlzLnVwbG9hZFN0b3JlLmZpbGVzJDtcbiAgcmVhZG9ubHkgdXBsb2FkSGFuZGxlciQgPSB0b09ic2VydmFibGUodGhpcy51cGxvYWRIYW5kbGVyKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2UuaW5pdCgpO1xuXG4gICAgLy8gdHJpZ2dlciB0aGUgYWN0aW9uIGlmIGZpbGVzIGFyZSBhdmFpbGFibGVcbiAgICBjbGVhblN1YnNjcmlwdGlvbihcbiAgICAgIHRoaXMudHJpZ2dlck9uRmlsZXMkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgodHJpZ2dlck9uRmlsZXMpID0+IHtcbiAgICAgICAgICAgIGlmICh0cmlnZ2VyT25GaWxlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWxlcyQucGlwZShtYXAoKHgpID0+IHg/Lmxlbmd0aCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKGNhblRyaWdnZXIpID0+IHtcbiAgICAgICAgICBpZiAoY2FuVHJpZ2dlcikge1xuICAgICAgICAgICAgdGhpcy5zb3VyY2UudHJpZ2dlcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICApO1xuXG4gICAgLy8gcmVhZHkgdGhlIHNvdXJjZSB3aXRoIGZpbGVzIGFmdGVyIHRyaWdnZXIgaXMgY2FsbGVkIGFuZCBmaWxlcyBhcmUgYXZhaWxhYmxlXG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLmZpbGVzJC5waXBlKHN3aXRjaE1hcCgoZmlsZXMpID0+IHRoaXMuc291cmNlLnRyaWdnZXJlZCQucGlwZShtYXAoKCkgPT4gZmlsZXMpKSkpLnN1YnNjcmliZSgoZmlsZXMpID0+IHtcbiAgICAgICAgdGhpcy5zb3VyY2UucmVhZHlWYWx1ZShmaWxlcyk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBzeW5jIGlzV29ya2luZ1xuICAgIGNsZWFuU3Vic2NyaXB0aW9uKHRoaXMudXBsb2FkU3RvcmUuc2V0SXNVcGxvYWRIYW5kbGVyV29ya2luZyh0aGlzLnNvdXJjZS5pc1dvcmtpbmckKSk7XG5cbiAgICAvLyBzeW5jIHByb2dyZXNzIGFtb3VudFxuICAgIHRoaXMuc291cmNlLnNldFdvcmtQcm9ncmVzcyhcbiAgICAgIHRoaXMudXBsb2FkU3RvcmUubGF0ZXN0UHJvZ3Jlc3NFdmVudCQucGlwZShcbiAgICAgICAgdGhyb3R0bGVUaW1lKDEwMCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICBtYXAoKHgpID0+IHg/Lm92ZXJhbGxQcm9ncmVzcyksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgIClcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,28 +1,27 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
2
|
import { DbxFirebaseStorageFileUploadStore, StorageFileDocumentStore } from '../store';
|
|
3
|
-
import {
|
|
3
|
+
import { DbxActionContextStoreSourceInstance, DbxActionHandlerInstance, clean, cleanSubscription } from '@dereekb/dbx-core';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
/**
|
|
6
6
|
* Directive that passes the upload result to a StorageFileDocumentStore to initialize the document immediately.
|
|
7
7
|
*
|
|
8
8
|
* Use with a DbxAction instance.
|
|
9
9
|
*/
|
|
10
|
-
export class DbxFirebaseStorageFileUploadInitializeDocumentDirective
|
|
10
|
+
export class DbxFirebaseStorageFileUploadInitializeDocumentDirective {
|
|
11
11
|
uploadStore = inject(DbxFirebaseStorageFileUploadStore);
|
|
12
12
|
storageFileDocumentStore = inject(StorageFileDocumentStore);
|
|
13
13
|
initializeWithExpediteProcessing = input();
|
|
14
14
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
15
|
-
_dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
|
|
15
|
+
_dbxActionHandlerInstance = clean(new DbxActionHandlerInstance(this.source));
|
|
16
16
|
constructor() {
|
|
17
|
-
super();
|
|
18
17
|
// set the trigger
|
|
19
|
-
this.
|
|
18
|
+
cleanSubscription(this.uploadStore.uploadResult$.subscribe(async (result) => {
|
|
20
19
|
const successFileResult = result.successFileResults.find((x) => x.fileRef != null);
|
|
21
20
|
const fileRef = successFileResult?.fileRef;
|
|
22
21
|
if (fileRef) {
|
|
23
22
|
this.source.triggerWithValue(fileRef);
|
|
24
23
|
}
|
|
25
|
-
});
|
|
24
|
+
}));
|
|
26
25
|
// set the handler function
|
|
27
26
|
this._dbxActionHandlerInstance.setHandlerFunction((fileRef, context) => {
|
|
28
27
|
context.startWorkingWithLoadingStateObservable(this.storageFileDocumentStore.initializeStorageFileFromUpload({
|
|
@@ -33,12 +32,8 @@ export class DbxFirebaseStorageFileUploadInitializeDocumentDirective extends Abs
|
|
|
33
32
|
});
|
|
34
33
|
this._dbxActionHandlerInstance.init();
|
|
35
34
|
}
|
|
36
|
-
ngOnDestroy() {
|
|
37
|
-
super.ngOnDestroy();
|
|
38
|
-
this._dbxActionHandlerInstance.destroy();
|
|
39
|
-
}
|
|
40
35
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
41
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", inputs: { initializeWithExpediteProcessing: { classPropertyName: "initializeWithExpediteProcessing", publicName: "initializeWithExpediteProcessing", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"],
|
|
36
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadInitializeDocument]", inputs: { initializeWithExpediteProcessing: { classPropertyName: "initializeWithExpediteProcessing", publicName: "initializeWithExpediteProcessing", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dbxFirebaseStorageFileUploadInitializeDocument"], ngImport: i0 });
|
|
42
37
|
}
|
|
43
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadInitializeDocumentDirective, decorators: [{
|
|
44
39
|
type: Directive,
|
|
@@ -48,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
48
43
|
standalone: true
|
|
49
44
|
}]
|
|
50
45
|
}], ctorParameters: () => [] });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9jb250YWluZXIvc3RvcmFnZWZpbGUudXBsb2FkLmluaXRpYWxpemUuZG9jdW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLHdCQUF3QixFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUk1SDs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHVEQUF1RDtJQUN6RCxXQUFXLEdBQUcsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDeEQsd0JBQXdCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFFNUQsZ0NBQWdDLEdBQUcsS0FBSyxFQUFrQixDQUFDO0lBRW5ELE1BQU0sR0FBOEYsTUFBTSxDQUFDLENBQUEsbUNBQXlGLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ROLHlCQUF5QixHQUFHLEtBQUssQ0FBQyxJQUFJLHdCQUF3QixDQUF1RCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUVwSjtRQUNFLGtCQUFrQjtRQUNsQixpQkFBaUIsQ0FDZixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3hELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQztZQUNuRixNQUFNLE9BQU8sR0FBRyxpQkFBaUIsRUFBRSxPQUFPLENBQUM7WUFFM0MsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNyRSxPQUFPLENBQUMsc0NBQXNDLENBQzVDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQywrQkFBK0IsQ0FBQztnQkFDNUQsVUFBVSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVTtnQkFDMUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsUUFBUTtnQkFDdEMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLElBQUksU0FBUzthQUN6RSxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7d0dBbENVLHVEQUF1RDs0RkFBdkQsdURBQXVEOzs0RkFBdkQsdURBQXVEO2tCQUxuRSxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrREFBa0Q7b0JBQzVELFFBQVEsRUFBRSxnREFBZ0Q7b0JBQzFELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlLCBTdG9yYWdlRmlsZURvY3VtZW50U3RvcmUgfSBmcm9tICcuLi9zdG9yZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSwgRGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLCBjbGVhbiwgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBGaXJlYmFzZVN0b3JhZ2VBY2Nlc3NvckZpbGUsIE9uQ2FsbENyZWF0ZU1vZGVsUmVzdWx0IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBwYXNzZXMgdGhlIHVwbG9hZCByZXN1bHQgdG8gYSBTdG9yYWdlRmlsZURvY3VtZW50U3RvcmUgdG8gaW5pdGlhbGl6ZSB0aGUgZG9jdW1lbnQgaW1tZWRpYXRlbHkuXG4gKlxuICogVXNlIHdpdGggYSBEYnhBY3Rpb24gaW5zdGFuY2UuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkSW5pdGlhbGl6ZURvY3VtZW50XScsXG4gIGV4cG9ydEFzOiAnZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEluaXRpYWxpemVEb2N1bWVudCcsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZEluaXRpYWxpemVEb2N1bWVudERpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IHVwbG9hZFN0b3JlID0gaW5qZWN0KERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSk7XG4gIHJlYWRvbmx5IHN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZSA9IGluamVjdChTdG9yYWdlRmlsZURvY3VtZW50U3RvcmUpO1xuXG4gIHJlYWRvbmx5IGluaXRpYWxpemVXaXRoRXhwZWRpdGVQcm9jZXNzaW5nID0gaW5wdXQ8TWF5YmU8Ym9vbGVhbj4+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzb3VyY2U6IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPEZpcmViYXNlU3RvcmFnZUFjY2Vzc29yRmlsZSwgT25DYWxsQ3JlYXRlTW9kZWxSZXN1bHQ+ID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPEZpcmViYXNlU3RvcmFnZUFjY2Vzc29yRmlsZSwgT25DYWxsQ3JlYXRlTW9kZWxSZXN1bHQ+LCB7IGhvc3Q6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZSA9IGNsZWFuKG5ldyBEYnhBY3Rpb25IYW5kbGVySW5zdGFuY2U8RmlyZWJhc2VTdG9yYWdlQWNjZXNzb3JGaWxlLCBPbkNhbGxDcmVhdGVNb2RlbFJlc3VsdD4odGhpcy5zb3VyY2UpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBzZXQgdGhlIHRyaWdnZXJcbiAgICBjbGVhblN1YnNjcmlwdGlvbihcbiAgICAgIHRoaXMudXBsb2FkU3RvcmUudXBsb2FkUmVzdWx0JC5zdWJzY3JpYmUoYXN5bmMgKHJlc3VsdCkgPT4ge1xuICAgICAgICBjb25zdCBzdWNjZXNzRmlsZVJlc3VsdCA9IHJlc3VsdC5zdWNjZXNzRmlsZVJlc3VsdHMuZmluZCgoeCkgPT4geC5maWxlUmVmICE9IG51bGwpO1xuICAgICAgICBjb25zdCBmaWxlUmVmID0gc3VjY2Vzc0ZpbGVSZXN1bHQ/LmZpbGVSZWY7XG5cbiAgICAgICAgaWYgKGZpbGVSZWYpIHtcbiAgICAgICAgICB0aGlzLnNvdXJjZS50cmlnZ2VyV2l0aFZhbHVlKGZpbGVSZWYpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBzZXQgdGhlIGhhbmRsZXIgZnVuY3Rpb25cbiAgICB0aGlzLl9kYnhBY3Rpb25IYW5kbGVySW5zdGFuY2Uuc2V0SGFuZGxlckZ1bmN0aW9uKChmaWxlUmVmLCBjb250ZXh0KSA9PiB7XG4gICAgICBjb250ZXh0LnN0YXJ0V29ya2luZ1dpdGhMb2FkaW5nU3RhdGVPYnNlcnZhYmxlKFxuICAgICAgICB0aGlzLnN0b3JhZ2VGaWxlRG9jdW1lbnRTdG9yZS5pbml0aWFsaXplU3RvcmFnZUZpbGVGcm9tVXBsb2FkKHtcbiAgICAgICAgICBwYXRoU3RyaW5nOiBmaWxlUmVmLnN0b3JhZ2VQYXRoLnBhdGhTdHJpbmcsXG4gICAgICAgICAgYnVja2V0SWQ6IGZpbGVSZWYuc3RvcmFnZVBhdGguYnVja2V0SWQsXG4gICAgICAgICAgZXhwZWRpdGVQcm9jZXNzaW5nOiB0aGlzLmluaXRpYWxpemVXaXRoRXhwZWRpdGVQcm9jZXNzaW5nKCkgPz8gdW5kZWZpbmVkXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLmluaXQoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { skipAllInitialMaybe
|
|
2
|
+
import { skipAllInitialMaybe } from '@dereekb/rxjs';
|
|
3
3
|
import { DbxFirebaseStorageFileUploadStore } from '../store';
|
|
4
4
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
5
5
|
import { shareReplay } from 'rxjs';
|
|
6
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
/**
|
|
8
9
|
* Directive that provides a DbxFirebaseStorageFileUploadStore, and sync's the inputs to the store.
|
|
9
10
|
*/
|
|
10
11
|
export class DbxFirebaseStorageFileUploadStoreDirective {
|
|
11
|
-
_allowedSub = new SubscriptionObject();
|
|
12
|
-
_multiSub = new SubscriptionObject();
|
|
13
12
|
uploadStore = inject(DbxFirebaseStorageFileUploadStore);
|
|
14
13
|
multipleUpload = input();
|
|
15
14
|
fileTypesAccepted = input();
|
|
16
15
|
fileTypesAccepted$ = toObservable(this.fileTypesAccepted).pipe(skipAllInitialMaybe(), shareReplay(1));
|
|
17
16
|
isMultiUploadAllowed$ = toObservable(this.multipleUpload).pipe(skipAllInitialMaybe(), shareReplay(1));
|
|
18
17
|
constructor() {
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
21
|
-
}
|
|
22
|
-
ngOnDestroy() {
|
|
23
|
-
this._allowedSub.destroy();
|
|
24
|
-
this._multiSub.destroy();
|
|
18
|
+
cleanSubscription(this.fileTypesAccepted$.subscribe((x) => this.uploadStore.setFileTypesAccepted(x)));
|
|
19
|
+
cleanSubscription(this.isMultiUploadAllowed$.subscribe((x) => this.uploadStore.setIsMultiUploadAllowed(x)));
|
|
25
20
|
}
|
|
26
21
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadStoreDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
27
22
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadStoreDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadStore]", inputs: { multipleUpload: { classPropertyName: "multipleUpload", publicName: "multipleUpload", isSignal: true, isRequired: false, transformFunction: null }, fileTypesAccepted: { classPropertyName: "fileTypesAccepted", publicName: "fileTypesAccepted", isSignal: true, isRequired: false, transformFunction: null } }, providers: [DbxFirebaseStorageFileUploadStore], exportAs: ["dbxFirebaseStorageFileUploadStore"], ngImport: i0 });
|
|
@@ -35,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
35
30
|
standalone: true
|
|
36
31
|
}]
|
|
37
32
|
}], ctorParameters: () => [] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLnN0b3JlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZHVsZXMvc3RvcmFnZWZpbGUvY29udGFpbmVyL3N0b3JhZ2VmaWxlLnVwbG9hZC5zdG9yZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXREOztHQUVHO0FBT0gsTUFBTSxPQUFPLDBDQUEwQztJQUM1QyxXQUFXLEdBQUcsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFFeEQsY0FBYyxHQUFHLEtBQUssRUFBa0IsQ0FBQztJQUN6QyxpQkFBaUIsR0FBRyxLQUFLLEVBQW1ELENBQUM7SUFFN0Usa0JBQWtCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFL0c7UUFDRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RyxDQUFDO3dHQVpVLDBDQUEwQzs0RkFBMUMsMENBQTBDLDZZQUgxQyxDQUFDLGlDQUFpQyxDQUFDOzs0RkFHbkMsMENBQTBDO2tCQU50RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQ0FBcUM7b0JBQy9DLFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO29CQUM5QyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNraXBBbGxJbml0aWFsTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSB9IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IEFycmF5T3JWYWx1ZSwgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGaWxlQWNjZXB0RmlsdGVyVHlwZVN0cmluZyB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgYSBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUsIGFuZCBzeW5jJ3MgdGhlIGlucHV0cyB0byB0aGUgc3RvcmUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVdJyxcbiAgZXhwb3J0QXM6ICdkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUnLFxuICBwcm92aWRlcnM6IFtEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZURpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IHVwbG9hZFN0b3JlID0gaW5qZWN0KERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSk7XG5cbiAgcmVhZG9ubHkgbXVsdGlwbGVVcGxvYWQgPSBpbnB1dDxNYXliZTxib29sZWFuPj4oKTtcbiAgcmVhZG9ubHkgZmlsZVR5cGVzQWNjZXB0ZWQgPSBpbnB1dDxNYXliZTxBcnJheU9yVmFsdWU8RmlsZUFjY2VwdEZpbHRlclR5cGVTdHJpbmc+Pj4oKTtcblxuICByZWFkb25seSBmaWxlVHlwZXNBY2NlcHRlZCQgPSB0b09ic2VydmFibGUodGhpcy5maWxlVHlwZXNBY2NlcHRlZCkucGlwZShza2lwQWxsSW5pdGlhbE1heWJlKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgaXNNdWx0aVVwbG9hZEFsbG93ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMubXVsdGlwbGVVcGxvYWQpLnBpcGUoc2tpcEFsbEluaXRpYWxNYXliZSgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24odGhpcy5maWxlVHlwZXNBY2NlcHRlZCQuc3Vic2NyaWJlKCh4KSA9PiB0aGlzLnVwbG9hZFN0b3JlLnNldEZpbGVUeXBlc0FjY2VwdGVkKHgpKSk7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24odGhpcy5pc011bHRpVXBsb2FkQWxsb3dlZCQuc3Vic2NyaWJlKCh4KSA9PiB0aGlzLnVwbG9hZFN0b3JlLnNldElzTXVsdGlVcGxvYWRBbGxvd2VkKHgpKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,26 +1,18 @@
|
|
|
1
1
|
import { Directive, inject } from '@angular/core';
|
|
2
|
-
import { SubscriptionObject } from '@dereekb/rxjs';
|
|
3
2
|
import { DbxFirebaseStorageFileUploadStore } from '../store';
|
|
4
3
|
import { DbxFileUploadComponent } from '@dereekb/dbx-web';
|
|
4
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
7
7
|
* Directive that syncs a DbxFirebaseStorageFileUploadStore's configuration to a DbxFileUploadComponent.
|
|
8
8
|
*/
|
|
9
9
|
export class DbxFirebaseStorageFileUploadSyncDirective {
|
|
10
|
-
_allowedSub = new SubscriptionObject();
|
|
11
|
-
_multiSub = new SubscriptionObject();
|
|
12
|
-
_filesSub = new SubscriptionObject();
|
|
13
10
|
uploadStore = inject(DbxFirebaseStorageFileUploadStore);
|
|
14
11
|
uploadComponent = inject(DbxFileUploadComponent);
|
|
15
12
|
constructor() {
|
|
16
|
-
this.
|
|
17
|
-
this.
|
|
18
|
-
this.
|
|
19
|
-
}
|
|
20
|
-
ngOnDestroy() {
|
|
21
|
-
this._allowedSub.destroy();
|
|
22
|
-
this._multiSub.destroy();
|
|
23
|
-
this._filesSub.destroy();
|
|
13
|
+
cleanSubscription(this.uploadStore.fileTypesAllowed$.subscribe((x) => this.uploadComponent.setAccept(x)));
|
|
14
|
+
cleanSubscription(this.uploadStore.isMultiUploadAllowed$.subscribe((x) => this.uploadComponent.setMultiple(x)));
|
|
15
|
+
cleanSubscription(this.uploadComponent.filesChanged.subscribe((files) => this.uploadStore.setFiles(files.matchResult.accepted)));
|
|
24
16
|
}
|
|
25
17
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadSyncDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
18
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFirebaseStorageFileUploadSyncDirective, isStandalone: true, selector: "[dbxFirebaseStorageFileUploadSync]", exportAs: ["dbxFirebaseStorageFileUploadSync"], ngImport: i0 });
|
|
@@ -33,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
25
|
standalone: true
|
|
34
26
|
}]
|
|
35
27
|
}], ctorParameters: () => [] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLnN5bmMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9jb250YWluZXIvc3RvcmFnZWZpbGUudXBsb2FkLnN5bmMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFdEQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8seUNBQXlDO0lBQzNDLFdBQVcsR0FBRyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN4RCxlQUFlLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFFMUQ7UUFDRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEgsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuSSxDQUFDO3dHQVJVLHlDQUF5Qzs0RkFBekMseUNBQXlDOzs0RkFBekMseUNBQXlDO2tCQUxyRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQ0FBb0M7b0JBQzlDLFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUgfSBmcm9tICcuLi9zdG9yZSc7XG5pbXBvcnQgeyBEYnhGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBjbGVhblN1YnNjcmlwdGlvbiB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBzeW5jcyBhIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZSdzIGNvbmZpZ3VyYXRpb24gdG8gYSBEYnhGaWxlVXBsb2FkQ29tcG9uZW50LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN5bmNdJyxcbiAgZXhwb3J0QXM6ICdkYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3luYycsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN5bmNEaXJlY3RpdmUge1xuICByZWFkb25seSB1cGxvYWRTdG9yZSA9IGluamVjdChEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUpO1xuICByZWFkb25seSB1cGxvYWRDb21wb25lbnQgPSBpbmplY3QoRGJ4RmlsZVVwbG9hZENvbXBvbmVudCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24odGhpcy51cGxvYWRTdG9yZS5maWxlVHlwZXNBbGxvd2VkJC5zdWJzY3JpYmUoKHgpID0+IHRoaXMudXBsb2FkQ29tcG9uZW50LnNldEFjY2VwdCh4KSkpO1xuICAgIGNsZWFuU3Vic2NyaXB0aW9uKHRoaXMudXBsb2FkU3RvcmUuaXNNdWx0aVVwbG9hZEFsbG93ZWQkLnN1YnNjcmliZSgoeCkgPT4gdGhpcy51cGxvYWRDb21wb25lbnQuc2V0TXVsdGlwbGUoeCkpKTtcbiAgICBjbGVhblN1YnNjcmlwdGlvbih0aGlzLnVwbG9hZENvbXBvbmVudC5maWxlc0NoYW5nZWQuc3Vic2NyaWJlKChmaWxlcykgPT4gdGhpcy51cGxvYWRTdG9yZS5zZXRGaWxlcyhmaWxlcy5tYXRjaFJlc3VsdC5hY2NlcHRlZCkpKTtcbiAgfVxufVxuIl19
|
|
@@ -60,4 +60,4 @@ export class DbxFirebaseStorageFileUploadStore extends ComponentStore {
|
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFirebaseStorageFileUploadStore, decorators: [{
|
|
61
61
|
type: Injectable
|
|
62
62
|
}], ctorParameters: () => [] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9zdG9yZS9zdG9yYWdlZmlsZS51cGxvYWQuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUd0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBZ0IsT0FBTyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBbUk5RDs7R0FFRztBQUVILE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxjQUFzRDtJQUMzRztRQUNFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxrQkFBa0I7SUFDVCwyQkFBMkIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUN2Riw4QkFBOEIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUxSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksS0FBSyxDQUFDLDBCQUEwQixJQUFJ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QyxpQ0FBaUM7OzRGQUFqQyxpQ0FBaUM7a0JBRDdDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpbGVBY2NlcHRGaWx0ZXJUeXBlU3RyaW5nIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBGaXJlYmFzZVN0b3JhZ2VBY2Nlc3NvckZpbGUsIFN0b3JhZ2VQYXRoSW5wdXQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsSGFzRGlmZmVyZW50VmFsdWVzLCBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQXJyYXlPclZhbHVlLCBhc0FycmF5LCBNYXliZSwgUGVyY2VudERlY2ltYWwgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSAnQG5ncngvY29tcG9uZW50LXN0b3JlJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRXZlbnQsIFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdCB9IGZyb20gJy4uL2NvbnRhaW5lcic7XG5cbi8qKlxuICogVGhlIHN0YWdlIG9mIHRoZSB1cGxvYWQgcHJvY2Vzcy5cbiAqXG4gKiAtIGNvbmZpZ3VyYXRpb246IFRoZSBpbml0aWFsIHN0YWdlIHdoZXJlIHRoZSB1cGxvYWQgc3RvcmUgaXMgYmVpbmcgY29uZmlndXJlZC5cbiAqIC0gZmlsZXM6IFRoZSBzdGFnZSB3aGVyZSB0aGUgZmlsZXMgYXJlIHRvIGJlIHNlbGVjdGVkLlxuICogLSB1cGxvYWRpbmc6IFRoZSBzdGFnZSB3aGVyZSB0aGUgZmlsZXMgYXJlIGJlaW5nIHVwbG9hZGVkLlxuICogLSBzdWNjZXNzOiBUaGUgc3RhZ2Ugd2hlcmUgdGhlIGZpbGVzIGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgdXBsb2FkZWQuXG4gKiAtIGVycm9yOiBUaGUgc3RhZ2Ugd2hlcmUgdGhlIHVwbG9hZCBoYXMgZmFpbGVkLlxuICovXG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVVcGxvYWRTdGFnZSA9ICdjb25maWd1cmF0aW9uJyB8ICdmaWxlcycgfCAndXBsb2FkaW5nJyB8ICdzdWNjZXNzJyB8ICdlcnJvcic7XG5cbi8qKlxuICogVGhlIGFjY2VwdGVkIGZpbGUgdHlwZXMgZm9yIHRoZSB1cGxvYWQuXG4gKlxuICogSWYgdW5zZXQsIHRoZW4gYWxsIGZpbGUgdHlwZXMgYXJlIGFjY2VwdGVkLlxuICovXG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVBbGxvd2VkVHlwZXMgPSBGaWxlQWNjZXB0RmlsdGVyVHlwZVN0cmluZ1tdO1xuXG4vKipcbiAqIFRoZSBwcm9ncmVzcyBvZiBhIGZpbGUgYmVpbmcgdXBsb2FkZWQuXG4gKlxuICogRmlsZSBwcm9ncmVzc2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgZm9yIGFsbCBmaWxlcyB3aGVuIG9uZSBmaWxlJ3MgcHJvZ3Jlc3MgaXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVGaWxlUHJvZ3Jlc3M8VCA9IHVua25vd24+IHtcbiAgLyoqXG4gICAqIFRoZSBmaWxlIGJlaW5nIHVwbG9hZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsZTogRmlsZTtcbiAgLyoqXG4gICAqIFRoZSBhY2Nlc3NvciBmaWxlIGZvciB0aGUgZmlsZSwgaWYgYXZhaWxhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsZVJlZj86IE1heWJlPEZpcmViYXNlU3RvcmFnZUFjY2Vzc29yRmlsZT47XG4gIC8qKlxuICAgKiBUaGUgdXBsb2FkIHJlZmVyZW5jZSBpbmZvIGZvciB0aGUgZmlsZSwgaWYgYXZhaWxhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgdXBsb2FkUmVmPzogTWF5YmU8VD47XG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGJ5dGVzIHRoYXQgaGF2ZSBiZWVuIHRyYW5zZmVycmVkIGZvciB0aGlzIGZpbGUuXG4gICAqL1xuICByZWFkb25seSBieXRlc1RyYW5zZmVycmVkPzogTWF5YmU8bnVtYmVyPjtcbiAgLyoqXG4gICAqIFRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgdG8gYmUgdXBsb2FkZWQuXG4gICAqL1xuICByZWFkb25seSB0b3RhbEJ5dGVzPzogTWF5YmU8bnVtYmVyPjtcbiAgLyoqXG4gICAqIFRoZSBwcm9ncmVzcyBvZiB0aGUgdXBsb2FkLlxuICAgKlxuICAgKiBJZiB1bnNldCwgdGhlbiB0aGUgZmlsZSBoYXMgbm90IHN0YXJ0ZWQgdXBsb2FkaW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZ3Jlc3M/OiBNYXliZTxQZXJjZW50RGVjaW1hbD47XG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgdXBsb2FkIGhhcyBmYWlsZWQgZm9yIHRoaXMgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IGZhaWxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgZXJyb3IgdGhhdCBvY2N1cnJlZCBkdXJpbmcgdGhlIHVwbG9hZCBmb3IgdGhpcyBmaWxlLlxuICAgKi9cbiAgcmVhZG9ubHkgZXJyb3I/OiB1bmtub3duO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZVN0YXRlIHtcbiAgLy8gQ29tcG9uZW50IENvbmZpZ3VyYXRpb25cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGFjY2VwdGVkIGZpbGUgdHlwZXMgZm9yIHRoZSB1cGxvYWQuXG4gICAqXG4gICAqIFRoaXMgbWF5IGJlIHNldCBieSB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQ/OiBNYXliZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVBbGxvd2VkVHlwZXM+O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgY29tcG9uZW50IGFsbG93cyBtdWx0aXBsZSBmaWxlcyB0byBiZSBzZWxlY3RlZC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gdW5kZWZpbmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNDb21wb25lbnRNdWx0aVVwbG9hZEFsbG93ZWQ/OiBNYXliZTxib29sZWFuPjtcblxuICAvLyBDb25maWd1cmF0aW9uIFN0ZXBcbiAgLyoqXG4gICAqIFRoZSBhY2NlcHRlZCBmaWxlIHR5cGVzIGZvciB0aGUgdXBsb2FkLlxuICAgKlxuICAgKiBJcyB1c2VkIHRvIGZpbHRlciB0aGUgZmlsZXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQgZm9yIHVwbG9hZC5cbiAgICpcbiAgICogT3ZlcnJpZGVzIHRoZSBjb21wb25lbnRGaWxlVHlwZXNBY2NlcHRlZCB2YWx1ZSBpZiBzZXQuXG4gICAqL1xuICByZWFkb25seSBmaWxlVHlwZXNBY2NlcHRlZD86IE1heWJlPERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZUFsbG93ZWRUeXBlcz47XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIGFsbG93IHNlbGVjdGluZyBtdWx0aXBsZSBmaWxlcyBmb3IgdXBsb2FkLlxuICAgKlxuICAgKiBJZiBpc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZCBpcyBmYWxzZSwgdGhlbiB0aGlzIHZhbHVlIGlzIGlnbm9yZWQuXG4gICAqL1xuICByZWFkb25seSBpc011bHRpVXBsb2FkQWxsb3dlZD86IE1heWJlPGJvb2xlYW4+O1xuXG4gIC8qKlxuICAgKiBQYXRoIHRvIHVwbG9hZCB0aGUgZmlsZShzKSB0by5cbiAgICpcbiAgICogTXVzdCBiZSBzZXQgYmVmb3JlIHVwbG9hZGluZy5cbiAgICovXG4gIHJlYWRvbmx5IHVwbG9hZFBhdGg/OiBNYXliZTxTdG9yYWdlUGF0aElucHV0PjtcblxuICAvLyBGaWxlcyBTdGVwXG4gIC8qKlxuICAgKiBUaGUgY3VycmVudCBmaWxlKHMpIHRvIHVwbG9hZC5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGVzPzogTWF5YmU8RmlsZVtdPjtcblxuICAvLyBVcGxvYWQgU3RlcFxuICAvKipcbiAgICogVGhlIHByb2dyZXNzIG9mIHRoZSB1cGxvYWQgZm9yIGVhY2ggZmlsZS5cbiAgICpcbiAgICogT25seSBzZXQgd2hpbGUgb25lIG9yIG1vcmUgZmlsZXMgYXJlIGJlaW5nIHVwbG9hZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbGF0ZXN0UHJvZ3Jlc3NFdmVudD86IE1heWJlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNFdmVudD47XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHRoZSB1cGxvYWQgaGFuZGxlciBpcyB3b3JraW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNVcGxvYWRIYW5kbGVyV29ya2luZz86IE1heWJlPGJvb2xlYW4+O1xuXG4gIC8vIFVwbG9hZCBSZXN1bHRcbiAgLyoqXG4gICAqIFRoZSBmaW5hbCB1cGxvYWQgcmVzdWx0IGZvciB0aGUgZmlsZXMuXG4gICAqXG4gICAqIE9ubHkgc2V0IGFmdGVyIHRoZSB1cGxvYWQgaGFzIGNvbXBsZXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHVwbG9hZFJlc3VsdD86IE1heWJlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD47XG59XG5cbi8qKlxuICogU3RvcmUgdXNlZCBmb3Igc2VsZWN0aW5nIGEgc3BlY2lmaWMgTm90aWZpY2F0aW9uSXRlbSBmcm9tIGEgbGlzdCBvZiBub3RpZmljYXRpb24gaXRlbXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmUgZXh0ZW5kcyBDb21wb25lbnRTdG9yZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVTdGF0ZT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7fSk7XG4gIH1cblxuICAvLyBNQVJLOiBBY2Nlc3NvcnNcbiAgcmVhZG9ubHkgY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS5jb21wb25lbnRGaWxlVHlwZXNBY2NlcHRlZCk7XG4gIHJlYWRvbmx5IGlzQ29tcG9uZW50TXVsdGlVcGxvYWRBbGxvd2VkJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuaXNDb21wb25lbnRNdWx0aVVwbG9hZEFsbG93ZWQpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IGZpbGVUeXBlc0FsbG93ZWQkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS5maWxlVHlwZXNBY2NlcHRlZCA/PyBzdGF0ZS5jb21wb25lbnRGaWxlVHlwZXNBY2NlcHRlZCA/PyBbXSkucGlwZShkaXN0aW5jdFVudGlsSGFzRGlmZmVyZW50VmFsdWVzKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgZmlsZVR5cGVzQWNjZXB0U3RyaW5nJCA9IHRoaXMuZmlsZVR5cGVzQWxsb3dlZCQucGlwZShcbiAgICBtYXAoKHgpID0+IHguam9pbignLCcpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaXNNdWx0aVVwbG9hZEFsbG93ZWQkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS5pc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZCAhPT0gZmFsc2UgJiYgc3RhdGUuaXNNdWx0aVVwbG9hZEFsbG93ZWQpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHVwbG9hZFBhdGgkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS51cGxvYWRQYXRoKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgY3VycmVudEZpbGVzJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuZmlsZXMpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSBmaWxlcyQgPSB0aGlzLmN1cnJlbnRGaWxlcyQucGlwZShmaWx0ZXJNYXliZSgpKTtcblxuICByZWFkb25seSBpc1VwbG9hZEhhbmRsZXJXb3JraW5nJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuaXNVcGxvYWRIYW5kbGVyV29ya2luZykucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IGxhdGVzdFByb2dyZXNzRXZlbnQkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS5sYXRlc3RQcm9ncmVzc0V2ZW50KS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgY3VycmVudFVwbG9hZFJlc3VsdCQgPSB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLnVwbG9hZFJlc3VsdCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IHVwbG9hZFJlc3VsdCQgPSB0aGlzLmN1cnJlbnRVcGxvYWRSZXN1bHQkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgLy8gTUFSSzogU3RhdGUgQ2hhbmdlc1xuICByZWFkb25seSBzZXRDb21wb25lbnRGaWxlVHlwZXNBY2NlcHRlZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGNvbXBvbmVudEZpbGVUeXBlc0FjY2VwdGVkOiBNYXliZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVBbGxvd2VkVHlwZXM+KSA9PiAoeyAuLi5zdGF0ZSwgY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQgfSkpO1xuICByZWFkb25seSBzZXRJc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGlzQ29tcG9uZW50TXVsdGlVcGxvYWRBbGxvd2VkOiBNYXliZTxib29sZWFuPikgPT4gKHsgLi4uc3RhdGUsIGlzQ29tcG9uZW50TXVsdGlVcGxvYWRBbGxvd2VkIH0pKTtcblxuICByZWFkb25seSBzZXRVcGxvYWRQYXRoID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgdXBsb2FkUGF0aDogTWF5YmU8U3RvcmFnZVBhdGhJbnB1dD4pID0+ICh7IC4uLnN0YXRlLCB1cGxvYWRQYXRoIH0pKTtcbiAgcmVhZG9ubHkgc2V0RmlsZVR5cGVzQWNjZXB0ZWQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBmaWxlVHlwZXNBY2NlcHRlZDogTWF5YmU8QXJyYXlPclZhbHVlPEZpbGVBY2NlcHRGaWx0ZXJUeXBlU3RyaW5nPj4pID0+ICh7IC4uLnN0YXRlLCBmaWxlVHlwZXNBY2NlcHRlZDogZmlsZVR5cGVzQWNjZXB0ZWQgPyBhc0FycmF5KGZpbGVUeXBlc0FjY2VwdGVkKSA6IHVuZGVmaW5lZCB9KSk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZpbGUgbGlzdCB0byB1cGxvYWQuXG4gICAqXG4gICAqIElmIHRoZSB1cGxvYWQgaGFuZGxlciBpcyB3b3JraW5nLCB0aGUgZmlsZSBsaXN0IGNhbm5vdCBiZSBjaGFuZ2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2V0RmlsZXMgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBmaWxlczogTWF5YmU8RmlsZVtdPikgPT4gKHsgLi4uc3RhdGUsIGZpbGVzOiBzdGF0ZS5pc1VwbG9hZEhhbmRsZXJXb3JraW5nID8gc3RhdGUuZmlsZXMgOiBmaWxlcyB9KSk7XG4gIHJlYWRvbmx5IHNldElzTXVsdGlVcGxvYWRBbGxvd2VkID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgaXNNdWx0aVVwbG9hZEFsbG93ZWQ6IE1heWJlPGJvb2xlYW4+KSA9PiAoeyAuLi5zdGF0ZSwgaXNNdWx0aVVwbG9hZEFsbG93ZWQgfSkpO1xuXG4gIC8qKlxuICAgKiBGbGFncyB0aGUgdXBsb2FkIGhhbmRsZXIgdG8gYmVnaW4gd29ya2luZy5cbiAgICpcbiAgICogT25jZSB0aGUgdXBsb2FkIGhhbmRsZXIgaXMgZmxhZ2dlZCwgaXQgY2Fubm90IGJlIHVuc2V0IHVudGlsIHRoZSB1cGxvYWQgaGFuZGxlciBoYXMgZmluaXNoZWQuXG4gICAqL1xuICByZWFkb25seSBzZXRJc1VwbG9hZEhhbmRsZXJXb3JraW5nID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgaXNVcGxvYWRIYW5kbGVyV29ya2luZzogYm9vbGVhbikgPT4gKHsgLi4uc3RhdGUsIGlzVXBsb2FkSGFuZGxlcldvcmtpbmcgfSkpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsYXRlc3QgcHJvZ3Jlc3MgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBzZXRMYXRlc3RQcm9ncmVzc0V2ZW50ID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgbGF0ZXN0UHJvZ3Jlc3NFdmVudDogTWF5YmU8U3RvcmFnZUZpbGVVcGxvYWRGaWxlc0V2ZW50PikgPT4gKHsgLi4uc3RhdGUsIGxhdGVzdFByb2dyZXNzRXZlbnQgfSkpO1xuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSB1cGxvYWQgcHJvZ3Jlc3MgZm9yIG9uZSBvciBtb3JlIGZpbGVzLlxuICAgKi9cbiAgLy8gcmVhZG9ubHkgdXBkYXRlVXBsb2FkUHJvZ3Jlc3MgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCB1cGxvYWRQcm9ncmVzczogQXJyYXlPclZhbHVlPERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZUZpbGVQcm9ncmVzcz4pID0+IHVwZGF0ZVVwbG9hZFN0b3JhZ2VGaWxlU3RvcmVTdGF0ZVdpdGhVcGxvYWRQcm9ncmVzcyhzdGF0ZSwgdXBsb2FkUHJvZ3Jlc3MpKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgdXBsb2FkIHJlc3VsdC5cbiAgICovXG4gIHJlYWRvbmx5IHNldFVwbG9hZFJlc3VsdCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIHVwbG9hZFJlc3VsdDogTWF5YmU8U3RvcmFnZUZpbGVVcGxvYWRGaWxlc0ZpbmFsUmVzdWx0PikgPT4gKHsgLi4uc3RhdGUsIGlzVXBsb2FkSGFuZGxlcldvcmtpbmc6IGZhbHNlLCB1cGxvYWRQcm9ncmVzczogdW5kZWZpbmVkLCB1cGxvYWRSZXN1bHQgfSkpO1xufVxuXG4vLyBUT0RPOiBDb25zaWRlciBtb3ZpbmcgdGhpcyBiYWNrLCBidXQgbWlnaHQgbm90IGJlIG5lZWRlZC4uLlxuLypcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVVcGxvYWRTdG9yYWdlRmlsZVN0b3JlU3RhdGVXaXRoVXBsb2FkUHJvZ3Jlc3Moc3RhdGU6IERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZVN0YXRlLCB1cGxvYWRQcm9ncmVzczogQXJyYXlPclZhbHVlPERieEZpcmViYXNlU3RvcmFnZUZpbGVVcGxvYWRTdG9yZUZpbGVQcm9ncmVzcz4pOiBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVTdGF0ZSB7XG4gIGNvbnN0IHsgdXBsb2FkUHJvZ3Jlc3M6IGN1cnJlbnRVcGxvYWRQcm9ncmVzcyB9ID0gc3RhdGU7XG5cbiAgY29uc3QgbmV3VXBsb2FkUHJvZ3Jlc3MgPSBhc0FycmF5KHVwbG9hZFByb2dyZXNzKTtcbiAgY29uc3QgbmV3VXBsb2FkUHJvZ3Jlc3NNYXAgPSBuZXcgTWFwKG5ld1VwbG9hZFByb2dyZXNzLm1hcCgocHJvZ3Jlc3MpID0+IFtwcm9ncmVzcy5maWxlLCBwcm9ncmVzc10pKTtcblxuICBjb25zdCB1cGRhdGVkVXBsb2FkUHJvZ3Jlc3MgPSAoY3VycmVudFVwbG9hZFByb2dyZXNzID8/IFtdKS5tYXAoKHByb2dyZXNzKSA9PiB7XG4gICAgY29uc3QgbmV3UHJvZ3Jlc3MgPSBuZXdVcGxvYWRQcm9ncmVzc01hcC5nZXQocHJvZ3Jlc3MuZmlsZSk7XG4gICAgcmV0dXJuIG5ld1Byb2dyZXNzID8/IHByb2dyZXNzO1xuICB9KTtcblxuICByZXR1cm4geyAuLi5zdGF0ZSwgdXBsb2FkUHJvZ3Jlc3M6IHVwZGF0ZWRVcGxvYWRQcm9ncmVzcyB9O1xufVxuKi9cbiJdfQ==
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZWZpbGUudXBsb2FkLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlcy9zdG9yYWdlZmlsZS9zdG9yZS9zdG9yYWdlZmlsZS51cGxvYWQuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBZ0IsT0FBTyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBbUk5RDs7R0FFRztBQUVILE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxjQUFzRDtJQUMzRztRQUNFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxrQkFBa0I7SUFDVCwyQkFBMkIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUN2Riw4QkFBOEIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUxSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksS0FBSyxDQUFDLDBCQUEwQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RLLHNCQUFzQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQzNELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUN2QixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVPLHFCQUFxQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsS0FBSyxLQUFLLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFekssV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRyxhQUFhLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pHLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBRWhELHVCQUF1QixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVILG9CQUFvQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RILG9CQUFvQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvRyxhQUFhLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBRXZFLHNCQUFzQjtJQUNiLDZCQUE2QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsMEJBQWdGLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSwwQkFBMEIsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0TCxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLDZCQUE2QyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFekosYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsVUFBbUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLGlCQUFrRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFM047Ozs7T0FJRztJQUNNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQW9CLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEksdUJBQXVCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxvQkFBb0MsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXZJOzs7O09BSUc7SUFDTSx5QkFBeUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLHNCQUErQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFdEk7O09BRUc7SUFDTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLG1CQUF1RCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFeEo7O09BRUc7SUFDSCxvTkFBb047SUFFcE47O09BRUc7SUFDTSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxZQUFzRCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO3dHQTlEeEwsaUNBQWlDOzRHQUFqQyxpQ0FBaUM7OzRGQUFqQyxpQ0FBaUM7a0JBRDdDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWxlQWNjZXB0RmlsdGVyVHlwZVN0cmluZyB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRmlyZWJhc2VTdG9yYWdlQWNjZXNzb3JGaWxlLCBTdG9yYWdlUGF0aElucHV0IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcywgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEFycmF5T3JWYWx1ZSwgYXNBcnJheSwgTWF5YmUsIFBlcmNlbnREZWNpbWFsIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BuZ3J4L2NvbXBvbmVudC1zdG9yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RvcmFnZUZpbGVVcGxvYWRGaWxlc0V2ZW50LCBTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQgfSBmcm9tICcuLi9jb250YWluZXInO1xuXG4vKipcbiAqIFRoZSBzdGFnZSBvZiB0aGUgdXBsb2FkIHByb2Nlc3MuXG4gKlxuICogLSBjb25maWd1cmF0aW9uOiBUaGUgaW5pdGlhbCBzdGFnZSB3aGVyZSB0aGUgdXBsb2FkIHN0b3JlIGlzIGJlaW5nIGNvbmZpZ3VyZWQuXG4gKiAtIGZpbGVzOiBUaGUgc3RhZ2Ugd2hlcmUgdGhlIGZpbGVzIGFyZSB0byBiZSBzZWxlY3RlZC5cbiAqIC0gdXBsb2FkaW5nOiBUaGUgc3RhZ2Ugd2hlcmUgdGhlIGZpbGVzIGFyZSBiZWluZyB1cGxvYWRlZC5cbiAqIC0gc3VjY2VzczogVGhlIHN0YWdlIHdoZXJlIHRoZSBmaWxlcyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkLlxuICogLSBlcnJvcjogVGhlIHN0YWdlIHdoZXJlIHRoZSB1cGxvYWQgaGFzIGZhaWxlZC5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlVXBsb2FkU3RhZ2UgPSAnY29uZmlndXJhdGlvbicgfCAnZmlsZXMnIHwgJ3VwbG9hZGluZycgfCAnc3VjY2VzcycgfCAnZXJyb3InO1xuXG4vKipcbiAqIFRoZSBhY2NlcHRlZCBmaWxlIHR5cGVzIGZvciB0aGUgdXBsb2FkLlxuICpcbiAqIElmIHVuc2V0LCB0aGVuIGFsbCBmaWxlIHR5cGVzIGFyZSBhY2NlcHRlZC5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlQWxsb3dlZFR5cGVzID0gRmlsZUFjY2VwdEZpbHRlclR5cGVTdHJpbmdbXTtcblxuLyoqXG4gKiBUaGUgcHJvZ3Jlc3Mgb2YgYSBmaWxlIGJlaW5nIHVwbG9hZGVkLlxuICpcbiAqIEZpbGUgcHJvZ3Jlc3NlcyBhcmUgYXV0b21hdGljYWxseSBjcmVhdGVkIGZvciBhbGwgZmlsZXMgd2hlbiBvbmUgZmlsZSdzIHByb2dyZXNzIGlzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlRmlsZVByb2dyZXNzPFQgPSB1bmtub3duPiB7XG4gIC8qKlxuICAgKiBUaGUgZmlsZSBiZWluZyB1cGxvYWRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGU6IEZpbGU7XG4gIC8qKlxuICAgKiBUaGUgYWNjZXNzb3IgZmlsZSBmb3IgdGhlIGZpbGUsIGlmIGF2YWlsYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGVSZWY/OiBNYXliZTxGaXJlYmFzZVN0b3JhZ2VBY2Nlc3NvckZpbGU+O1xuICAvKipcbiAgICogVGhlIHVwbG9hZCByZWZlcmVuY2UgaW5mbyBmb3IgdGhlIGZpbGUsIGlmIGF2YWlsYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IHVwbG9hZFJlZj86IE1heWJlPFQ+O1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBieXRlcyB0aGF0IGhhdmUgYmVlbiB0cmFuc2ZlcnJlZCBmb3IgdGhpcyBmaWxlLlxuICAgKi9cbiAgcmVhZG9ubHkgYnl0ZXNUcmFuc2ZlcnJlZD86IE1heWJlPG51bWJlcj47XG4gIC8qKlxuICAgKiBUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHVwbG9hZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgdG90YWxCeXRlcz86IE1heWJlPG51bWJlcj47XG4gIC8qKlxuICAgKiBUaGUgcHJvZ3Jlc3Mgb2YgdGhlIHVwbG9hZC5cbiAgICpcbiAgICogSWYgdW5zZXQsIHRoZW4gdGhlIGZpbGUgaGFzIG5vdCBzdGFydGVkIHVwbG9hZGluZy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2dyZXNzPzogTWF5YmU8UGVyY2VudERlY2ltYWw+O1xuICAvKipcbiAgICogSWYgdHJ1ZSwgdGhlIHVwbG9hZCBoYXMgZmFpbGVkIGZvciB0aGlzIGZpbGUuXG4gICAqL1xuICByZWFkb25seSBmYWlsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGVycm9yIHRoYXQgb2NjdXJyZWQgZHVyaW5nIHRoZSB1cGxvYWQgZm9yIHRoaXMgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IGVycm9yPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVTdGF0ZSB7XG4gIC8vIENvbXBvbmVudCBDb25maWd1cmF0aW9uXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBhY2NlcHRlZCBmaWxlIHR5cGVzIGZvciB0aGUgdXBsb2FkLlxuICAgKlxuICAgKiBUaGlzIG1heSBiZSBzZXQgYnkgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbXBvbmVudEZpbGVUeXBlc0FjY2VwdGVkPzogTWF5YmU8RGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlQWxsb3dlZFR5cGVzPjtcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgdGhlIGNvbXBvbmVudCBhbGxvd3MgbXVsdGlwbGUgZmlsZXMgdG8gYmUgc2VsZWN0ZWQuXG4gICAqXG4gICAqIERlZmF1bHRzIHRvIHVuZGVmaW5lZC5cbiAgICovXG4gIHJlYWRvbmx5IGlzQ29tcG9uZW50TXVsdGlVcGxvYWRBbGxvd2VkPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgLy8gQ29uZmlndXJhdGlvbiBTdGVwXG4gIC8qKlxuICAgKiBUaGUgYWNjZXB0ZWQgZmlsZSB0eXBlcyBmb3IgdGhlIHVwbG9hZC5cbiAgICpcbiAgICogSXMgdXNlZCB0byBmaWx0ZXIgdGhlIGZpbGVzIHRoYXQgY2FuIGJlIHNlbGVjdGVkIGZvciB1cGxvYWQuXG4gICAqXG4gICAqIE92ZXJyaWRlcyB0aGUgY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQgdmFsdWUgaWYgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsZVR5cGVzQWNjZXB0ZWQ/OiBNYXliZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVBbGxvd2VkVHlwZXM+O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCBhbGxvdyBzZWxlY3RpbmcgbXVsdGlwbGUgZmlsZXMgZm9yIHVwbG9hZC5cbiAgICpcbiAgICogSWYgaXNDb21wb25lbnRNdWx0aVVwbG9hZEFsbG93ZWQgaXMgZmFsc2UsIHRoZW4gdGhpcyB2YWx1ZSBpcyBpZ25vcmVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNNdWx0aVVwbG9hZEFsbG93ZWQ/OiBNYXliZTxib29sZWFuPjtcblxuICAvKipcbiAgICogUGF0aCB0byB1cGxvYWQgdGhlIGZpbGUocykgdG8uXG4gICAqXG4gICAqIE11c3QgYmUgc2V0IGJlZm9yZSB1cGxvYWRpbmcuXG4gICAqL1xuICByZWFkb25seSB1cGxvYWRQYXRoPzogTWF5YmU8U3RvcmFnZVBhdGhJbnB1dD47XG5cbiAgLy8gRmlsZXMgU3RlcFxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgZmlsZShzKSB0byB1cGxvYWQuXG4gICAqL1xuICByZWFkb25seSBmaWxlcz86IE1heWJlPEZpbGVbXT47XG5cbiAgLy8gVXBsb2FkIFN0ZXBcbiAgLyoqXG4gICAqIFRoZSBwcm9ncmVzcyBvZiB0aGUgdXBsb2FkIGZvciBlYWNoIGZpbGUuXG4gICAqXG4gICAqIE9ubHkgc2V0IHdoaWxlIG9uZSBvciBtb3JlIGZpbGVzIGFyZSBiZWluZyB1cGxvYWRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGxhdGVzdFByb2dyZXNzRXZlbnQ/OiBNYXliZTxTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRXZlbnQ+O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgdXBsb2FkIGhhbmRsZXIgaXMgd29ya2luZy5cbiAgICovXG4gIHJlYWRvbmx5IGlzVXBsb2FkSGFuZGxlcldvcmtpbmc/OiBNYXliZTxib29sZWFuPjtcblxuICAvLyBVcGxvYWQgUmVzdWx0XG4gIC8qKlxuICAgKiBUaGUgZmluYWwgdXBsb2FkIHJlc3VsdCBmb3IgdGhlIGZpbGVzLlxuICAgKlxuICAgKiBPbmx5IHNldCBhZnRlciB0aGUgdXBsb2FkIGhhcyBjb21wbGV0ZWQuXG4gICAqL1xuICByZWFkb25seSB1cGxvYWRSZXN1bHQ/OiBNYXliZTxTdG9yYWdlRmlsZVVwbG9hZEZpbGVzRmluYWxSZXN1bHQ+O1xufVxuXG4vKipcbiAqIFN0b3JlIHVzZWQgZm9yIHNlbGVjdGluZyBhIHNwZWNpZmljIE5vdGlmaWNhdGlvbkl0ZW0gZnJvbSBhIGxpc3Qgb2Ygbm90aWZpY2F0aW9uIGl0ZW1zLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlIGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8RGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlU3RhdGU+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoe30pO1xuICB9XG5cbiAgLy8gTUFSSzogQWNjZXNzb3JzXG4gIHJlYWRvbmx5IGNvbXBvbmVudEZpbGVUeXBlc0FjY2VwdGVkJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQpO1xuICByZWFkb25seSBpc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZCQgPSB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLmlzQ29tcG9uZW50TXVsdGlVcGxvYWRBbGxvd2VkKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBmaWxlVHlwZXNBbGxvd2VkJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuZmlsZVR5cGVzQWNjZXB0ZWQgPz8gc3RhdGUuY29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQgPz8gW10pLnBpcGUoZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcygpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IGZpbGVUeXBlc0FjY2VwdFN0cmluZyQgPSB0aGlzLmZpbGVUeXBlc0FsbG93ZWQkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LmpvaW4oJywnKSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGlzTXVsdGlVcGxvYWRBbGxvd2VkJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUuaXNDb21wb25lbnRNdWx0aVVwbG9hZEFsbG93ZWQgIT09IGZhbHNlICYmIHN0YXRlLmlzTXVsdGlVcGxvYWRBbGxvd2VkKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSB1cGxvYWRQYXRoJCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUudXBsb2FkUGF0aCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IGN1cnJlbnRGaWxlcyQgPSB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLmZpbGVzKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgZmlsZXMkID0gdGhpcy5jdXJyZW50RmlsZXMkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgcmVhZG9ubHkgaXNVcGxvYWRIYW5kbGVyV29ya2luZyQgPSB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLmlzVXBsb2FkSGFuZGxlcldvcmtpbmcpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSBsYXRlc3RQcm9ncmVzc0V2ZW50JCA9IHRoaXMuc2VsZWN0KChzdGF0ZSkgPT4gc3RhdGUubGF0ZXN0UHJvZ3Jlc3NFdmVudCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IGN1cnJlbnRVcGxvYWRSZXN1bHQkID0gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS51cGxvYWRSZXN1bHQpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICByZWFkb25seSB1cGxvYWRSZXN1bHQkID0gdGhpcy5jdXJyZW50VXBsb2FkUmVzdWx0JC5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIC8vIE1BUks6IFN0YXRlIENoYW5nZXNcbiAgcmVhZG9ubHkgc2V0Q29tcG9uZW50RmlsZVR5cGVzQWNjZXB0ZWQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBjb21wb25lbnRGaWxlVHlwZXNBY2NlcHRlZDogTWF5YmU8RGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlQWxsb3dlZFR5cGVzPikgPT4gKHsgLi4uc3RhdGUsIGNvbXBvbmVudEZpbGVUeXBlc0FjY2VwdGVkIH0pKTtcbiAgcmVhZG9ubHkgc2V0SXNDb21wb25lbnRNdWx0aVVwbG9hZEFsbG93ZWQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBpc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZDogTWF5YmU8Ym9vbGVhbj4pID0+ICh7IC4uLnN0YXRlLCBpc0NvbXBvbmVudE11bHRpVXBsb2FkQWxsb3dlZCB9KSk7XG5cbiAgcmVhZG9ubHkgc2V0VXBsb2FkUGF0aCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIHVwbG9hZFBhdGg6IE1heWJlPFN0b3JhZ2VQYXRoSW5wdXQ+KSA9PiAoeyAuLi5zdGF0ZSwgdXBsb2FkUGF0aCB9KSk7XG4gIHJlYWRvbmx5IHNldEZpbGVUeXBlc0FjY2VwdGVkID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgZmlsZVR5cGVzQWNjZXB0ZWQ6IE1heWJlPEFycmF5T3JWYWx1ZTxGaWxlQWNjZXB0RmlsdGVyVHlwZVN0cmluZz4+KSA9PiAoeyAuLi5zdGF0ZSwgZmlsZVR5cGVzQWNjZXB0ZWQ6IGZpbGVUeXBlc0FjY2VwdGVkID8gYXNBcnJheShmaWxlVHlwZXNBY2NlcHRlZCkgOiB1bmRlZmluZWQgfSkpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBmaWxlIGxpc3QgdG8gdXBsb2FkLlxuICAgKlxuICAgKiBJZiB0aGUgdXBsb2FkIGhhbmRsZXIgaXMgd29ya2luZywgdGhlIGZpbGUgbGlzdCBjYW5ub3QgYmUgY2hhbmdlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNldEZpbGVzID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgZmlsZXM6IE1heWJlPEZpbGVbXT4pID0+ICh7IC4uLnN0YXRlLCBmaWxlczogc3RhdGUuaXNVcGxvYWRIYW5kbGVyV29ya2luZyA/IHN0YXRlLmZpbGVzIDogZmlsZXMgfSkpO1xuICByZWFkb25seSBzZXRJc011bHRpVXBsb2FkQWxsb3dlZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGlzTXVsdGlVcGxvYWRBbGxvd2VkOiBNYXliZTxib29sZWFuPikgPT4gKHsgLi4uc3RhdGUsIGlzTXVsdGlVcGxvYWRBbGxvd2VkIH0pKTtcblxuICAvKipcbiAgICogRmxhZ3MgdGhlIHVwbG9hZCBoYW5kbGVyIHRvIGJlZ2luIHdvcmtpbmcuXG4gICAqXG4gICAqIE9uY2UgdGhlIHVwbG9hZCBoYW5kbGVyIGlzIGZsYWdnZWQsIGl0IGNhbm5vdCBiZSB1bnNldCB1bnRpbCB0aGUgdXBsb2FkIGhhbmRsZXIgaGFzIGZpbmlzaGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2V0SXNVcGxvYWRIYW5kbGVyV29ya2luZyA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGlzVXBsb2FkSGFuZGxlcldvcmtpbmc6IGJvb2xlYW4pID0+ICh7IC4uLnN0YXRlLCBpc1VwbG9hZEhhbmRsZXJXb3JraW5nIH0pKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgbGF0ZXN0IHByb2dyZXNzIGV2ZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgc2V0TGF0ZXN0UHJvZ3Jlc3NFdmVudCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGxhdGVzdFByb2dyZXNzRXZlbnQ6IE1heWJlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNFdmVudD4pID0+ICh7IC4uLnN0YXRlLCBsYXRlc3RQcm9ncmVzc0V2ZW50IH0pKTtcblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgdXBsb2FkIHByb2dyZXNzIGZvciBvbmUgb3IgbW9yZSBmaWxlcy5cbiAgICovXG4gIC8vIHJlYWRvbmx5IHVwZGF0ZVVwbG9hZFByb2dyZXNzID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgdXBsb2FkUHJvZ3Jlc3M6IEFycmF5T3JWYWx1ZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVGaWxlUHJvZ3Jlc3M+KSA9PiB1cGRhdGVVcGxvYWRTdG9yYWdlRmlsZVN0b3JlU3RhdGVXaXRoVXBsb2FkUHJvZ3Jlc3Moc3RhdGUsIHVwbG9hZFByb2dyZXNzKSk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHVwbG9hZCByZXN1bHQuXG4gICAqL1xuICByZWFkb25seSBzZXRVcGxvYWRSZXN1bHQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCB1cGxvYWRSZXN1bHQ6IE1heWJlPFN0b3JhZ2VGaWxlVXBsb2FkRmlsZXNGaW5hbFJlc3VsdD4pID0+ICh7IC4uLnN0YXRlLCBpc1VwbG9hZEhhbmRsZXJXb3JraW5nOiBmYWxzZSwgdXBsb2FkUHJvZ3Jlc3M6IHVuZGVmaW5lZCwgdXBsb2FkUmVzdWx0IH0pKTtcbn1cblxuLy8gVE9ETzogQ29uc2lkZXIgbW92aW5nIHRoaXMgYmFjaywgYnV0IG1pZ2h0IG5vdCBiZSBuZWVkZWQuLi5cbi8qXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlVXBsb2FkU3RvcmFnZUZpbGVTdG9yZVN0YXRlV2l0aFVwbG9hZFByb2dyZXNzKHN0YXRlOiBEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVTdGF0ZSwgdXBsb2FkUHJvZ3Jlc3M6IEFycmF5T3JWYWx1ZTxEYnhGaXJlYmFzZVN0b3JhZ2VGaWxlVXBsb2FkU3RvcmVGaWxlUHJvZ3Jlc3M+KTogRGJ4RmlyZWJhc2VTdG9yYWdlRmlsZVVwbG9hZFN0b3JlU3RhdGUge1xuICBjb25zdCB7IHVwbG9hZFByb2dyZXNzOiBjdXJyZW50VXBsb2FkUHJvZ3Jlc3MgfSA9IHN0YXRlO1xuXG4gIGNvbnN0IG5ld1VwbG9hZFByb2dyZXNzID0gYXNBcnJheSh1cGxvYWRQcm9ncmVzcyk7XG4gIGNvbnN0IG5ld1VwbG9hZFByb2dyZXNzTWFwID0gbmV3IE1hcChuZXdVcGxvYWRQcm9ncmVzcy5tYXAoKHByb2dyZXNzKSA9PiBbcHJvZ3Jlc3MuZmlsZSwgcHJvZ3Jlc3NdKSk7XG5cbiAgY29uc3QgdXBkYXRlZFVwbG9hZFByb2dyZXNzID0gKGN1cnJlbnRVcGxvYWRQcm9ncmVzcyA/PyBbXSkubWFwKChwcm9ncmVzcykgPT4ge1xuICAgIGNvbnN0IG5ld1Byb2dyZXNzID0gbmV3VXBsb2FkUHJvZ3Jlc3NNYXAuZ2V0KHByb2dyZXNzLmZpbGUpO1xuICAgIHJldHVybiBuZXdQcm9ncmVzcyA/PyBwcm9ncmVzcztcbiAgfSk7XG5cbiAgcmV0dXJuIHsgLi4uc3RhdGUsIHVwbG9hZFByb2dyZXNzOiB1cGRhdGVkVXBsb2FkUHJvZ3Jlc3MgfTtcbn1cbiovXG4iXX0=
|