@dereekb/dbx-firebase 8.1.1 → 8.3.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/esm2020/lib/auth/service/firebase.auth.service.mjs +4 -1
- package/esm2020/lib/model/loader/collection.loader.instance.mjs +2 -2
- package/esm2020/lib/model/loader/collection.loader.mjs +1 -1
- package/esm2020/lib/model/loader/document.loader.instance.mjs +57 -0
- package/esm2020/lib/model/loader/document.loader.mjs +2 -0
- package/esm2020/lib/model/loader/index.mjs +3 -1
- package/esm2020/lib/model/store/store.document.router.directive.mjs +48 -12
- package/fesm2015/dereekb-dbx-firebase.mjs +106 -15
- package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-firebase.mjs +106 -14
- package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
- package/lib/auth/service/firebase.auth.service.d.ts +3 -0
- package/lib/model/loader/collection.loader.d.ts +2 -2
- package/lib/model/loader/collection.loader.instance.d.ts +2 -2
- package/lib/model/loader/document.loader.d.ts +63 -0
- package/lib/model/loader/document.loader.instance.d.ts +37 -0
- package/lib/model/loader/index.d.ts +2 -0
- package/lib/model/store/store.document.router.directive.d.ts +14 -2
- package/package.json +6 -6
|
@@ -46,8 +46,11 @@ export class DbxFirebaseAuthService {
|
|
|
46
46
|
this.onLogIn$ = loggedInObsFromIsLoggedIn(this.isLoggedIn$);
|
|
47
47
|
this.onLogOut$ = loggedOutObsFromIsLoggedIn(this.isLoggedIn$);
|
|
48
48
|
this.userIdentifier$ = this.currentAuthUser$.pipe(map((x) => authUserIdentifier(x?.uid)));
|
|
49
|
+
this.uid$ = this.userIdentifier$;
|
|
49
50
|
this.idTokenResult$ = this.authUser$.pipe(switchMap((x) => x.getIdTokenResult()));
|
|
50
51
|
this.claims$ = this.idTokenResult$.pipe(map((x) => x.claims));
|
|
52
|
+
this.currentAuthContextInfo$ = this.currentAuthUser$.pipe(switchMap((x) => this.loadAuthContextInfoForUser(x)), shareReplay(1));
|
|
53
|
+
this.authContextInfo$ = this.currentAuthContextInfo$.pipe(filterMaybe());
|
|
51
54
|
delegate = delegate ?? DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE;
|
|
52
55
|
this.authUserState$ = delegate.authUserStateObs(this).pipe(distinctUntilChanged(), shareReplay(1));
|
|
53
56
|
this.authRoles$ = delegate.authRolesObs(this);
|
|
@@ -154,4 +157,4 @@ export class DbxFirebaseAuthContextInfo {
|
|
|
154
157
|
return this._token();
|
|
155
158
|
}
|
|
156
159
|
}
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UuYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvYXV0aC9zZXJ2aWNlL2ZpcmViYXNlLmF1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQWlDLDBCQUEwQixFQUFFLHlCQUF5QixFQUFzQixrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pLLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFvQyxrQkFBa0IsRUFBRSxlQUFlLEVBQXVDLGlCQUFpQixFQUFFLDBCQUEwQixFQUFrQixvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9ULE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6SCxPQUFPLEVBQW9FLGVBQWUsRUFBRSxZQUFZLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFnQix3QkFBd0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUc1RSxpQkFBaUI7QUFDakIsTUFBTSxPQUFnQiw4QkFBOEI7Q0FTbkQ7QUFFRCxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBbUM7SUFDeEYsZ0JBQWdC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UCxPQUFPLENBQXdCO1FBQVcsU0FBSSxHQUFKLElBQUksQ0FBTTtRQUFXLGFBQVEsR0FBUixRQUFRLENBQWU7UUFKbkcsV0FBTSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxXQUFNLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0UsYUFBUSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFc0IsQ0FBQztJQUUvRyxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBdUIsQ0FBQztJQUMvQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXJNYXliZSwgaXNOb3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoVXNlclN0YXRlLCBEYnhBdXRoU2VydmljZSwgbG9nZ2VkT3V0T2JzRnJvbUlzTG9nZ2VkSW4sIGxvZ2dlZEluT2JzRnJvbUlzTG9nZ2VkSW4sIEF1dGhVc2VySWRlbnRpZmllciwgYXV0aFVzZXJJZGVudGlmaWVyIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgQXV0aCwgYXV0aFN0YXRlLCBVc2VyLCBJZFRva2VuUmVzdWx0LCBQYXJzZWRUb2tlbiwgR29vZ2xlQXV0aFByb3ZpZGVyLCBzaWduSW5XaXRoUG9wdXAsIEF1dGhQcm92aWRlciwgUG9wdXBSZWRpcmVjdFJlc29sdmVyLCBzaWduSW5Bbm9ueW1vdXNseSwgc2lnbkluV2l0aEVtYWlsQW5kUGFzc3dvcmQsIFVzZXJDcmVkZW50aWFsLCBGYWNlYm9va0F1dGhQcm92aWRlciwgR2l0aHViQXV0aFByb3ZpZGVyLCBUd2l0dGVyQXV0aFByb3ZpZGVyLCBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQgfSBmcm9tICdAYW5ndWxhci9maXJlL2F1dGgnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGltZW91dCwgc3RhcnRXaXRoLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2hhcmVSZXBsYXksIG1hcCwgc3dpdGNoTWFwLCBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aENsYWltcywgQXV0aENsYWltc09iamVjdCwgQXV0aFJvbGVDbGFpbXNTZXJ2aWNlLCBBdXRoUm9sZVNldCwgQVVUSF9BRE1JTl9ST0xFLCBjYWNoZWRHZXR0ZXIsIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBdXRoVXNlckluZm8sIGF1dGhVc2VySW5mb0Zyb21BdXRoVXNlciwgZmlyZWJhc2VBdXRoVG9rZW5Gcm9tVXNlciB9IGZyb20gJy4uL2F1dGgnO1xuaW1wb3J0IHsgc2VuZFBhc3N3b3JkUmVzZXRFbWFpbCB9IGZyb20gJ2ZpcmViYXNlL2F1dGgnO1xuaW1wb3J0IHsgYXV0aFVzZXJTdGF0ZUZyb21GaXJlYmFzZUF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9maXJlYmFzZS5hdXRoLnJ4anMnO1xuaW1wb3J0IHsgRmlyZWJhc2VBdXRoQ29udGV4dEluZm8sIEZpcmViYXNlQXV0aFRva2VuIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuXG4vLyBNQVJLOiBEZWxlZ2F0ZVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSB7XG4gIGFic3RyYWN0IGF1dGhVc2VyU3RhdGVPYnMoZGJ4RmlyZWJhc2VBdXRoU2VydmljZTogRGJ4RmlyZWJhc2VBdXRoU2VydmljZSk6IE9ic2VydmFibGU8QXV0aFVzZXJTdGF0ZT47XG4gIGFic3RyYWN0IGF1dGhSb2xlc09icyhkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTogT2JzZXJ2YWJsZTxBdXRoUm9sZVNldD47XG4gIGFic3RyYWN0IGlzT25ib2FyZGVkKGRieEZpcmViYXNlQXV0aFNlcnZpY2U6IERieEZpcmViYXNlQXV0aFNlcnZpY2UpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIGlucHV0IHJvbGVzIGltcGx5IHRoZSBhZG1pbiBwcml2aWxlZGdlcy5cbiAgICovXG4gIGFic3RyYWN0IGlzQWRtaW5JbkF1dGhSb2xlU2V0KGF1dGhSb2xlU2V0OiBBdXRoUm9sZVNldCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGF1dGhSb2xlQ2xhaW1zU2VydmljZT86IE1heWJlPEF1dGhSb2xlQ2xhaW1zU2VydmljZTxBdXRoQ2xhaW1zT2JqZWN0Pj47XG59XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0RCWF9GSVJFQkFTRV9BVVRIX1NFUlZJQ0VfREVMRUdBVEU6IERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSA9IHtcbiAgYXV0aFVzZXJTdGF0ZU9icyhkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTogT2JzZXJ2YWJsZTxBdXRoVXNlclN0YXRlPiB7XG4gICAgcmV0dXJuIGF1dGhVc2VyU3RhdGVGcm9tRmlyZWJhc2VBdXRoU2VydmljZShkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTtcbiAgfSxcbiAgYXV0aFJvbGVzT2JzKGRieEZpcmViYXNlQXV0aFNlcnZpY2U6IERieEZpcmViYXNlQXV0aFNlcnZpY2UpOiBPYnNlcnZhYmxlPEF1dGhSb2xlU2V0PiB7XG4gICAgcmV0dXJuIGRieEZpcmViYXNlQXV0aFNlcnZpY2UuYXV0aFVzZXJTdGF0ZSQucGlwZShtYXAoKHgpID0+ICh4ID09PSAndXNlcicgPyBuZXcgU2V0KFsndXNlciddKSA6IG5ldyBTZXQoKSkpKTtcbiAgfSxcbiAgaXNPbmJvYXJkZWQoZGJ4RmlyZWJhc2VBdXRoU2VydmljZTogRGJ4RmlyZWJhc2VBdXRoU2VydmljZSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLmF1dGhVc2VyU3RhdGUkLnBpcGUobWFwKCh4KSA9PiB4ID09PSAndXNlcicpKTtcbiAgfSxcbiAgaXNBZG1pbkluQXV0aFJvbGVTZXQoYXV0aFJvbGVTZXQ6IEF1dGhSb2xlU2V0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGF1dGhSb2xlU2V0LmhhcyhBVVRIX0FETUlOX1JPTEUpO1xuICB9XG59O1xuXG4vLyBNQVJLOiBTZXJ2aWNlXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VBdXRoU2VydmljZSBpbXBsZW1lbnRzIERieEF1dGhTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0aFN0YXRlJDogT2JzZXJ2YWJsZTxNYXliZTxVc2VyPj4gPSBhdXRoU3RhdGUodGhpcy5maXJlYmFzZUF1dGgpO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRBdXRoVXNlciQ6IE9ic2VydmFibGU8TWF5YmU8VXNlcj4+ID0gdGhpcy5fYXV0aFN0YXRlJC5waXBlKFxuICAgIHRpbWVvdXQoe1xuICAgICAgZmlyc3Q6IDEwMDAsXG4gICAgICB3aXRoOiAoKSA9PiB0aGlzLl9hdXRoU3RhdGUkLnBpcGUoc3RhcnRXaXRoKG51bGwpKVxuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBjdXJyZW50QXV0aFVzZXJJbmZvJDogT2JzZXJ2YWJsZTxNYXliZTxBdXRoVXNlckluZm8+PiA9IHRoaXMuY3VycmVudEF1dGhVc2VyJC5waXBlKG1hcCgoeCkgPT4gKHggPyBhdXRoVXNlckluZm9Gcm9tQXV0aFVzZXIoeCkgOiB1bmRlZmluZWQpKSk7XG5cbiAgcmVhZG9ubHkgYXV0aFVzZXIkOiBPYnNlcnZhYmxlPFVzZXI+ID0gdGhpcy5jdXJyZW50QXV0aFVzZXIkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG4gIHJlYWRvbmx5IGF1dGhVc2VySW5mbyQ6IE9ic2VydmFibGU8QXV0aFVzZXJJbmZvPiA9IHRoaXMuYXV0aFVzZXIkLnBpcGUobWFwKGF1dGhVc2VySW5mb0Zyb21BdXRoVXNlcikpO1xuXG4gIHJlYWRvbmx5IGhhc0F1dGhVc2VyJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY3VycmVudEF1dGhVc2VyJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gQm9vbGVhbih4KSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuICByZWFkb25seSBpc0Fub255bW91c1VzZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5hdXRoVXNlciQucGlwZShcbiAgICBtYXAoKHgpID0+IHguaXNBbm9ueW1vdXMpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgaXNOb3RBbm9ueW1vdXNVc2VyJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuaXNBbm9ueW1vdXNVc2VyJC5waXBlKGlzTm90KCkpO1xuXG4gIHJlYWRvbmx5IGlzTG9nZ2VkSW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5oYXNBdXRoVXNlciQ7XG5cbiAgcmVhZG9ubHkgaXNOb3RMb2dnZWRJbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmlzTG9nZ2VkSW4kLnBpcGUoaXNOb3QoKSk7XG4gIHJlYWRvbmx5IG9uTG9nSW4kOiBPYnNlcnZhYmxlPHZvaWQ+ID0gbG9nZ2VkSW5PYnNGcm9tSXNMb2dnZWRJbih0aGlzLmlzTG9nZ2VkSW4kKTtcbiAgcmVhZG9ubHkgb25Mb2dPdXQkOiBPYnNlcnZhYmxlPHZvaWQ+ID0gbG9nZ2VkT3V0T2JzRnJvbUlzTG9nZ2VkSW4odGhpcy5pc0xvZ2dlZEluJCk7XG4gIHJlYWRvbmx5IHVzZXJJZGVudGlmaWVyJDogT2JzZXJ2YWJsZTxBdXRoVXNlcklkZW50aWZpZXI+ID0gdGhpcy5jdXJyZW50QXV0aFVzZXIkLnBpcGUobWFwKCh4KSA9PiBhdXRoVXNlcklkZW50aWZpZXIoeD8udWlkKSkpO1xuXG4gIHJlYWRvbmx5IGlkVG9rZW5SZXN1bHQkOiBPYnNlcnZhYmxlPElkVG9rZW5SZXN1bHQ+ID0gdGhpcy5hdXRoVXNlciQucGlwZShzd2l0Y2hNYXAoKHgpID0+IHguZ2V0SWRUb2tlblJlc3VsdCgpKSk7XG5cbiAgcmVhZG9ubHkgY2xhaW1zJDogT2JzZXJ2YWJsZTxQYXJzZWRUb2tlbj4gPSB0aGlzLmlkVG9rZW5SZXN1bHQkLnBpcGUobWFwKCh4KSA9PiB4LmNsYWltcykpO1xuXG4gIHJlYWRvbmx5IGF1dGhVc2VyU3RhdGUkOiBPYnNlcnZhYmxlPEF1dGhVc2VyU3RhdGU+O1xuICByZWFkb25seSBhdXRoUm9sZXMkOiBPYnNlcnZhYmxlPEF1dGhSb2xlU2V0PjtcbiAgcmVhZG9ubHkgaXNPbmJvYXJkZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgX2F1dGhSb2xlQ2xhaW1zU2VydmljZT86IE1heWJlPEF1dGhSb2xlQ2xhaW1zU2VydmljZTxBdXRoQ2xhaW1zT2JqZWN0Pj47XG4gIHJlYWRvbmx5IGlzQWRtaW5JbkF1dGhSb2xlU2V0OiAoYXV0aFJvbGVTZXQ6IEF1dGhSb2xlU2V0KSA9PiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmViYXNlQXV0aDogQXV0aCwgQE9wdGlvbmFsKCkgZGVsZWdhdGU6IERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSkge1xuICAgIGRlbGVnYXRlID0gZGVsZWdhdGUgPz8gREVGQVVMVF9EQlhfRklSRUJBU0VfQVVUSF9TRVJWSUNFX0RFTEVHQVRFO1xuICAgIHRoaXMuYXV0aFVzZXJTdGF0ZSQgPSBkZWxlZ2F0ZS5hdXRoVXNlclN0YXRlT2JzKHRoaXMpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICAgIHRoaXMuYXV0aFJvbGVzJCA9IGRlbGVnYXRlLmF1dGhSb2xlc09icyh0aGlzKTtcbiAgICB0aGlzLmlzT25ib2FyZGVkJCA9IGRlbGVnYXRlLmlzT25ib2FyZGVkKHRoaXMpO1xuICAgIHRoaXMuX2F1dGhSb2xlQ2xhaW1zU2VydmljZSA9IGRlbGVnYXRlLmF1dGhSb2xlQ2xhaW1zU2VydmljZTtcbiAgICB0aGlzLmlzQWRtaW5JbkF1dGhSb2xlU2V0ID0gZGVsZWdhdGUuaXNBZG1pbkluQXV0aFJvbGVTZXQ7XG4gIH1cblxuICByb2xlc0ZvckNsYWltczxUIGV4dGVuZHMgQXV0aENsYWltc09iamVjdCA9IEF1dGhDbGFpbXNPYmplY3Q+KGNsYWltczogQXV0aENsYWltczxUPik6IEF1dGhSb2xlU2V0IHtcbiAgICBsZXQgcmVzdWx0OiBBdXRoUm9sZVNldDtcblxuICAgIGlmICh0aGlzLl9hdXRoUm9sZUNsYWltc1NlcnZpY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLl9hdXRoUm9sZUNsYWltc1NlcnZpY2UudG9Sb2xlcyhjbGFpbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ0RieEZpcmViYXNlQXV0aFNlcnZpY2U6IHJvbGVzRm9yQ2xhaW1zIGNhbGxlZCB3aXRoIG5vIGF1dGhSb2xlQ2xhaW1zU2VydmljZSBwcm92aWRlZC4gQW4gZW1wdHkgc2V0IGlzIHJldHVybmVkLicpO1xuICAgICAgcmVzdWx0ID0gbmV3IFNldCgpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBnZXRBdXRoQ29udGV4dEluZm8oKTogUHJvbWlzZTxNYXliZTxEYnhGaXJlYmFzZUF1dGhDb250ZXh0SW5mbz4+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5hdXRoVXNlciQpLnRoZW4oKHVzZXIpID0+IHRoaXMubG9hZEF1dGhDb250ZXh0SW5mb0ZvclVzZXIodXNlcikpO1xuICB9XG5cbiAgYXN5bmMgbG9hZEF1dGhDb250ZXh0SW5mb0ZvclVzZXIodXNlcjogTWF5YmU8VXNlcj4pOiBQcm9taXNlPE1heWJlPERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvPj4ge1xuICAgIGxldCByZXN1bHQ6IE1heWJlPERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvPjtcblxuICAgIGlmICh1c2VyKSB7XG4gICAgICBjb25zdCBqd3RUb2tlbjogSWRUb2tlblJlc3VsdCA9IGF3YWl0IHVzZXIuZ2V0SWRUb2tlblJlc3VsdCgpO1xuICAgICAgcmVzdWx0ID0gbmV3IERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvKHRoaXMsIHVzZXIsIGp3dFRva2VuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgbG9nSW5XaXRoR29vZ2xlKCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgR29vZ2xlQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoRmFjZWJvb2soKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiB0aGlzLmxvZ0luV2l0aFBvcHVwKG5ldyBGYWNlYm9va0F1dGhQcm92aWRlcigpKTtcbiAgfVxuXG4gIGxvZ0luV2l0aFR3aXR0ZXIoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiB0aGlzLmxvZ0luV2l0aFBvcHVwKG5ldyBUd2l0dGVyQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoR2l0aHViKCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgR2l0aHViQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoQXBwbGUoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICB9XG5cbiAgbG9nSW5XaXRoTWljcm9zb2Z0KCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICAvLyByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgTWljcm9zb2Z0QXV0aFByb3ZpZGVyKCkpO1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICB9XG5cbiAgbG9nSW5XaXRoUGhvbmUoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICAgIC8vIHJldHVybiBzaWduSW5XaXRoUGhvbmVOdW1iZXIodGhpcy5maXJlYmFzZUF1dGgsIClcbiAgfVxuXG4gIGxvZ0luV2l0aFBvcHVwKHByb3ZpZGVyOiBBdXRoUHJvdmlkZXIsIHJlc29sdmVyPzogUG9wdXBSZWRpcmVjdFJlc29sdmVyKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiBzaWduSW5XaXRoUG9wdXAodGhpcy5maXJlYmFzZUF1dGgsIHByb3ZpZGVyLCByZXNvbHZlcik7XG4gIH1cblxuICByZWdpc3RlcldpdGhFbWFpbEFuZFBhc3N3b3JkKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIGNyZWF0ZVVzZXJXaXRoRW1haWxBbmRQYXNzd29yZCh0aGlzLmZpcmViYXNlQXV0aCwgZW1haWwsIHBhc3N3b3JkKTtcbiAgfVxuXG4gIHNlbmRQYXNzd29yZFJlc2V0RW1haWwoZW1haWw6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiBzZW5kUGFzc3dvcmRSZXNldEVtYWlsKHRoaXMuZmlyZWJhc2VBdXRoLCBlbWFpbCk7XG4gIH1cblxuICBsb2dJbldpdGhFbWFpbEFuZFBhc3N3b3JkKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkKHRoaXMuZmlyZWJhc2VBdXRoLCBlbWFpbCwgcGFzc3dvcmQpO1xuICB9XG5cbiAgbG9nSW5Bc0Fub255bW91cygpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHNpZ25JbkFub255bW91c2x5KHRoaXMuZmlyZWJhc2VBdXRoKTtcbiAgfVxuXG4gIGxvZ091dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5maXJlYmFzZUF1dGguc2lnbk91dCgpO1xuICB9XG59XG5cbi8qKlxuICogRmlyZWJhc2VBdXRoQ29udGV4dEluZm8gaW1wbGVtZW50YXRpb24gZnJvbSBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLlxuICovXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VBdXRoQ29udGV4dEluZm8gaW1wbGVtZW50cyBGaXJlYmFzZUF1dGhDb250ZXh0SW5mbyB7XG4gIHByaXZhdGUgX3Rva2VuID0gY2FjaGVkR2V0dGVyKCgpID0+IGZpcmViYXNlQXV0aFRva2VuRnJvbVVzZXIodGhpcy51c2VyKSk7XG4gIHByaXZhdGUgX3JvbGVzID0gY2FjaGVkR2V0dGVyKCgpID0+IHRoaXMuc2VydmljZS5yb2xlc0ZvckNsYWltcyh0aGlzLmdldENsYWltcygpKSk7XG4gIHByaXZhdGUgX2lzQWRtaW4gPSBjYWNoZWRHZXR0ZXIoKCkgPT4gdGhpcy5zZXJ2aWNlLmlzQWRtaW5JbkF1dGhSb2xlU2V0KHRoaXMuX3JvbGVzKCkpKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBzZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLCByZWFkb25seSB1c2VyOiBVc2VyLCByZWFkb25seSBqd3RUb2tlbjogSWRUb2tlblJlc3VsdCkge31cblxuICBnZXQgdWlkKCkge1xuICAgIHJldHVybiB0aGlzLnVzZXIudWlkO1xuICB9XG5cbiAgaXNBZG1pbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNBZG1pbigpO1xuICB9XG5cbiAgZ2V0Q2xhaW1zPFQgZXh0ZW5kcyBBdXRoQ2xhaW1zT2JqZWN0ID0gQXV0aENsYWltc09iamVjdD4oKTogQXV0aENsYWltczxUPiB7XG4gICAgcmV0dXJuIHRoaXMuand0VG9rZW4uY2xhaW1zIGFzIEF1dGhDbGFpbXM8VD47XG4gIH1cblxuICBnZXRBdXRoUm9sZXMoKTogQXV0aFJvbGVTZXQge1xuICAgIHJldHVybiB0aGlzLl9yb2xlcygpO1xuICB9XG5cbiAgZ2V0IHRva2VuKCk6IEZpcmViYXNlQXV0aFRva2VuIHtcbiAgICByZXR1cm4gdGhpcy5fdG9rZW4oKTtcbiAgfVxufVxuIl19
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UuYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvYXV0aC9zZXJ2aWNlL2ZpcmViYXNlLmF1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQWlDLDBCQUEwQixFQUFFLHlCQUF5QixFQUFzQixrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pLLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFvQyxrQkFBa0IsRUFBRSxlQUFlLEVBQXVDLGlCQUFpQixFQUFFLDBCQUEwQixFQUFrQixvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9ULE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6SCxPQUFPLEVBQW9FLGVBQWUsRUFBRSxZQUFZLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFnQix3QkFBd0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUc1RSxpQkFBaUI7QUFDakIsTUFBTSxPQUFnQiw4QkFBOEI7Q0FTbkQ7QUFFRCxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBbUM7SUFDeEYsZ0JBQWdC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QUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXJNYXliZSwgaXNOb3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoVXNlclN0YXRlLCBEYnhBdXRoU2VydmljZSwgbG9nZ2VkT3V0T2JzRnJvbUlzTG9nZ2VkSW4sIGxvZ2dlZEluT2JzRnJvbUlzTG9nZ2VkSW4sIEF1dGhVc2VySWRlbnRpZmllciwgYXV0aFVzZXJJZGVudGlmaWVyIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgQXV0aCwgYXV0aFN0YXRlLCBVc2VyLCBJZFRva2VuUmVzdWx0LCBQYXJzZWRUb2tlbiwgR29vZ2xlQXV0aFByb3ZpZGVyLCBzaWduSW5XaXRoUG9wdXAsIEF1dGhQcm92aWRlciwgUG9wdXBSZWRpcmVjdFJlc29sdmVyLCBzaWduSW5Bbm9ueW1vdXNseSwgc2lnbkluV2l0aEVtYWlsQW5kUGFzc3dvcmQsIFVzZXJDcmVkZW50aWFsLCBGYWNlYm9va0F1dGhQcm92aWRlciwgR2l0aHViQXV0aFByb3ZpZGVyLCBUd2l0dGVyQXV0aFByb3ZpZGVyLCBjcmVhdGVVc2VyV2l0aEVtYWlsQW5kUGFzc3dvcmQgfSBmcm9tICdAYW5ndWxhci9maXJlL2F1dGgnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGltZW91dCwgc3RhcnRXaXRoLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2hhcmVSZXBsYXksIG1hcCwgc3dpdGNoTWFwLCBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aENsYWltcywgQXV0aENsYWltc09iamVjdCwgQXV0aFJvbGVDbGFpbXNTZXJ2aWNlLCBBdXRoUm9sZVNldCwgQVVUSF9BRE1JTl9ST0xFLCBjYWNoZWRHZXR0ZXIsIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBdXRoVXNlckluZm8sIGF1dGhVc2VySW5mb0Zyb21BdXRoVXNlciwgZmlyZWJhc2VBdXRoVG9rZW5Gcm9tVXNlciB9IGZyb20gJy4uL2F1dGgnO1xuaW1wb3J0IHsgc2VuZFBhc3N3b3JkUmVzZXRFbWFpbCB9IGZyb20gJ2ZpcmViYXNlL2F1dGgnO1xuaW1wb3J0IHsgYXV0aFVzZXJTdGF0ZUZyb21GaXJlYmFzZUF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9maXJlYmFzZS5hdXRoLnJ4anMnO1xuaW1wb3J0IHsgRmlyZWJhc2VBdXRoQ29udGV4dEluZm8sIEZpcmViYXNlQXV0aFRva2VuIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuXG4vLyBNQVJLOiBEZWxlZ2F0ZVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSB7XG4gIGFic3RyYWN0IGF1dGhVc2VyU3RhdGVPYnMoZGJ4RmlyZWJhc2VBdXRoU2VydmljZTogRGJ4RmlyZWJhc2VBdXRoU2VydmljZSk6IE9ic2VydmFibGU8QXV0aFVzZXJTdGF0ZT47XG4gIGFic3RyYWN0IGF1dGhSb2xlc09icyhkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTogT2JzZXJ2YWJsZTxBdXRoUm9sZVNldD47XG4gIGFic3RyYWN0IGlzT25ib2FyZGVkKGRieEZpcmViYXNlQXV0aFNlcnZpY2U6IERieEZpcmViYXNlQXV0aFNlcnZpY2UpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIGlucHV0IHJvbGVzIGltcGx5IHRoZSBhZG1pbiBwcml2aWxlZGdlcy5cbiAgICovXG4gIGFic3RyYWN0IGlzQWRtaW5JbkF1dGhSb2xlU2V0KGF1dGhSb2xlU2V0OiBBdXRoUm9sZVNldCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGF1dGhSb2xlQ2xhaW1zU2VydmljZT86IE1heWJlPEF1dGhSb2xlQ2xhaW1zU2VydmljZTxBdXRoQ2xhaW1zT2JqZWN0Pj47XG59XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0RCWF9GSVJFQkFTRV9BVVRIX1NFUlZJQ0VfREVMRUdBVEU6IERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSA9IHtcbiAgYXV0aFVzZXJTdGF0ZU9icyhkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTogT2JzZXJ2YWJsZTxBdXRoVXNlclN0YXRlPiB7XG4gICAgcmV0dXJuIGF1dGhVc2VyU3RhdGVGcm9tRmlyZWJhc2VBdXRoU2VydmljZShkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlKTtcbiAgfSxcbiAgYXV0aFJvbGVzT2JzKGRieEZpcmViYXNlQXV0aFNlcnZpY2U6IERieEZpcmViYXNlQXV0aFNlcnZpY2UpOiBPYnNlcnZhYmxlPEF1dGhSb2xlU2V0PiB7XG4gICAgcmV0dXJuIGRieEZpcmViYXNlQXV0aFNlcnZpY2UuYXV0aFVzZXJTdGF0ZSQucGlwZShtYXAoKHgpID0+ICh4ID09PSAndXNlcicgPyBuZXcgU2V0KFsndXNlciddKSA6IG5ldyBTZXQoKSkpKTtcbiAgfSxcbiAgaXNPbmJvYXJkZWQoZGJ4RmlyZWJhc2VBdXRoU2VydmljZTogRGJ4RmlyZWJhc2VBdXRoU2VydmljZSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBkYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLmF1dGhVc2VyU3RhdGUkLnBpcGUobWFwKCh4KSA9PiB4ID09PSAndXNlcicpKTtcbiAgfSxcbiAgaXNBZG1pbkluQXV0aFJvbGVTZXQoYXV0aFJvbGVTZXQ6IEF1dGhSb2xlU2V0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGF1dGhSb2xlU2V0LmhhcyhBVVRIX0FETUlOX1JPTEUpO1xuICB9XG59O1xuXG4vLyBNQVJLOiBTZXJ2aWNlXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VBdXRoU2VydmljZSBpbXBsZW1lbnRzIERieEF1dGhTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0aFN0YXRlJDogT2JzZXJ2YWJsZTxNYXliZTxVc2VyPj4gPSBhdXRoU3RhdGUodGhpcy5maXJlYmFzZUF1dGgpO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRBdXRoVXNlciQ6IE9ic2VydmFibGU8TWF5YmU8VXNlcj4+ID0gdGhpcy5fYXV0aFN0YXRlJC5waXBlKFxuICAgIHRpbWVvdXQoe1xuICAgICAgZmlyc3Q6IDEwMDAsXG4gICAgICB3aXRoOiAoKSA9PiB0aGlzLl9hdXRoU3RhdGUkLnBpcGUoc3RhcnRXaXRoKG51bGwpKVxuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBjdXJyZW50QXV0aFVzZXJJbmZvJDogT2JzZXJ2YWJsZTxNYXliZTxBdXRoVXNlckluZm8+PiA9IHRoaXMuY3VycmVudEF1dGhVc2VyJC5waXBlKG1hcCgoeCkgPT4gKHggPyBhdXRoVXNlckluZm9Gcm9tQXV0aFVzZXIoeCkgOiB1bmRlZmluZWQpKSk7XG5cbiAgcmVhZG9ubHkgYXV0aFVzZXIkOiBPYnNlcnZhYmxlPFVzZXI+ID0gdGhpcy5jdXJyZW50QXV0aFVzZXIkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG4gIHJlYWRvbmx5IGF1dGhVc2VySW5mbyQ6IE9ic2VydmFibGU8QXV0aFVzZXJJbmZvPiA9IHRoaXMuYXV0aFVzZXIkLnBpcGUobWFwKGF1dGhVc2VySW5mb0Zyb21BdXRoVXNlcikpO1xuXG4gIHJlYWRvbmx5IGhhc0F1dGhVc2VyJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY3VycmVudEF1dGhVc2VyJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gQm9vbGVhbih4KSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuICByZWFkb25seSBpc0Fub255bW91c1VzZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5hdXRoVXNlciQucGlwZShcbiAgICBtYXAoKHgpID0+IHguaXNBbm9ueW1vdXMpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgaXNOb3RBbm9ueW1vdXNVc2VyJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuaXNBbm9ueW1vdXNVc2VyJC5waXBlKGlzTm90KCkpO1xuXG4gIHJlYWRvbmx5IGlzTG9nZ2VkSW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5oYXNBdXRoVXNlciQ7XG5cbiAgcmVhZG9ubHkgaXNOb3RMb2dnZWRJbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmlzTG9nZ2VkSW4kLnBpcGUoaXNOb3QoKSk7XG4gIHJlYWRvbmx5IG9uTG9nSW4kOiBPYnNlcnZhYmxlPHZvaWQ+ID0gbG9nZ2VkSW5PYnNGcm9tSXNMb2dnZWRJbih0aGlzLmlzTG9nZ2VkSW4kKTtcbiAgcmVhZG9ubHkgb25Mb2dPdXQkOiBPYnNlcnZhYmxlPHZvaWQ+ID0gbG9nZ2VkT3V0T2JzRnJvbUlzTG9nZ2VkSW4odGhpcy5pc0xvZ2dlZEluJCk7XG4gIHJlYWRvbmx5IHVzZXJJZGVudGlmaWVyJDogT2JzZXJ2YWJsZTxBdXRoVXNlcklkZW50aWZpZXI+ID0gdGhpcy5jdXJyZW50QXV0aFVzZXIkLnBpcGUobWFwKCh4KSA9PiBhdXRoVXNlcklkZW50aWZpZXIoeD8udWlkKSkpO1xuICByZWFkb25seSB1aWQkOiBPYnNlcnZhYmxlPEF1dGhVc2VySWRlbnRpZmllcj4gPSB0aGlzLnVzZXJJZGVudGlmaWVyJDtcblxuICByZWFkb25seSBpZFRva2VuUmVzdWx0JDogT2JzZXJ2YWJsZTxJZFRva2VuUmVzdWx0PiA9IHRoaXMuYXV0aFVzZXIkLnBpcGUoc3dpdGNoTWFwKCh4KSA9PiB4LmdldElkVG9rZW5SZXN1bHQoKSkpO1xuXG4gIHJlYWRvbmx5IGNsYWltcyQ6IE9ic2VydmFibGU8UGFyc2VkVG9rZW4+ID0gdGhpcy5pZFRva2VuUmVzdWx0JC5waXBlKG1hcCgoeCkgPT4geC5jbGFpbXMpKTtcbiAgcmVhZG9ubHkgY3VycmVudEF1dGhDb250ZXh0SW5mbyQ6IE9ic2VydmFibGU8TWF5YmU8RGJ4RmlyZWJhc2VBdXRoQ29udGV4dEluZm8+PiA9IHRoaXMuY3VycmVudEF1dGhVc2VyJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gdGhpcy5sb2FkQXV0aENvbnRleHRJbmZvRm9yVXNlcih4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgYXV0aENvbnRleHRJbmZvJDogT2JzZXJ2YWJsZTxNYXliZTxEYnhGaXJlYmFzZUF1dGhDb250ZXh0SW5mbz4+ID0gdGhpcy5jdXJyZW50QXV0aENvbnRleHRJbmZvJC5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIHJlYWRvbmx5IGF1dGhVc2VyU3RhdGUkOiBPYnNlcnZhYmxlPEF1dGhVc2VyU3RhdGU+O1xuICByZWFkb25seSBhdXRoUm9sZXMkOiBPYnNlcnZhYmxlPEF1dGhSb2xlU2V0PjtcbiAgcmVhZG9ubHkgaXNPbmJvYXJkZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgX2F1dGhSb2xlQ2xhaW1zU2VydmljZT86IE1heWJlPEF1dGhSb2xlQ2xhaW1zU2VydmljZTxBdXRoQ2xhaW1zT2JqZWN0Pj47XG4gIHJlYWRvbmx5IGlzQWRtaW5JbkF1dGhSb2xlU2V0OiAoYXV0aFJvbGVTZXQ6IEF1dGhSb2xlU2V0KSA9PiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmViYXNlQXV0aDogQXV0aCwgQE9wdGlvbmFsKCkgZGVsZWdhdGU6IERieEZpcmViYXNlQXV0aFNlcnZpY2VEZWxlZ2F0ZSkge1xuICAgIGRlbGVnYXRlID0gZGVsZWdhdGUgPz8gREVGQVVMVF9EQlhfRklSRUJBU0VfQVVUSF9TRVJWSUNFX0RFTEVHQVRFO1xuICAgIHRoaXMuYXV0aFVzZXJTdGF0ZSQgPSBkZWxlZ2F0ZS5hdXRoVXNlclN0YXRlT2JzKHRoaXMpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuICAgIHRoaXMuYXV0aFJvbGVzJCA9IGRlbGVnYXRlLmF1dGhSb2xlc09icyh0aGlzKTtcbiAgICB0aGlzLmlzT25ib2FyZGVkJCA9IGRlbGVnYXRlLmlzT25ib2FyZGVkKHRoaXMpO1xuICAgIHRoaXMuX2F1dGhSb2xlQ2xhaW1zU2VydmljZSA9IGRlbGVnYXRlLmF1dGhSb2xlQ2xhaW1zU2VydmljZTtcbiAgICB0aGlzLmlzQWRtaW5JbkF1dGhSb2xlU2V0ID0gZGVsZWdhdGUuaXNBZG1pbkluQXV0aFJvbGVTZXQ7XG4gIH1cblxuICByb2xlc0ZvckNsYWltczxUIGV4dGVuZHMgQXV0aENsYWltc09iamVjdCA9IEF1dGhDbGFpbXNPYmplY3Q+KGNsYWltczogQXV0aENsYWltczxUPik6IEF1dGhSb2xlU2V0IHtcbiAgICBsZXQgcmVzdWx0OiBBdXRoUm9sZVNldDtcblxuICAgIGlmICh0aGlzLl9hdXRoUm9sZUNsYWltc1NlcnZpY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLl9hdXRoUm9sZUNsYWltc1NlcnZpY2UudG9Sb2xlcyhjbGFpbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ0RieEZpcmViYXNlQXV0aFNlcnZpY2U6IHJvbGVzRm9yQ2xhaW1zIGNhbGxlZCB3aXRoIG5vIGF1dGhSb2xlQ2xhaW1zU2VydmljZSBwcm92aWRlZC4gQW4gZW1wdHkgc2V0IGlzIHJldHVybmVkLicpO1xuICAgICAgcmVzdWx0ID0gbmV3IFNldCgpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBnZXRBdXRoQ29udGV4dEluZm8oKTogUHJvbWlzZTxNYXliZTxEYnhGaXJlYmFzZUF1dGhDb250ZXh0SW5mbz4+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5hdXRoVXNlciQpLnRoZW4oKHVzZXIpID0+IHRoaXMubG9hZEF1dGhDb250ZXh0SW5mb0ZvclVzZXIodXNlcikpO1xuICB9XG5cbiAgYXN5bmMgbG9hZEF1dGhDb250ZXh0SW5mb0ZvclVzZXIodXNlcjogTWF5YmU8VXNlcj4pOiBQcm9taXNlPE1heWJlPERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvPj4ge1xuICAgIGxldCByZXN1bHQ6IE1heWJlPERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvPjtcblxuICAgIGlmICh1c2VyKSB7XG4gICAgICBjb25zdCBqd3RUb2tlbjogSWRUb2tlblJlc3VsdCA9IGF3YWl0IHVzZXIuZ2V0SWRUb2tlblJlc3VsdCgpO1xuICAgICAgcmVzdWx0ID0gbmV3IERieEZpcmViYXNlQXV0aENvbnRleHRJbmZvKHRoaXMsIHVzZXIsIGp3dFRva2VuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgbG9nSW5XaXRoR29vZ2xlKCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgR29vZ2xlQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoRmFjZWJvb2soKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiB0aGlzLmxvZ0luV2l0aFBvcHVwKG5ldyBGYWNlYm9va0F1dGhQcm92aWRlcigpKTtcbiAgfVxuXG4gIGxvZ0luV2l0aFR3aXR0ZXIoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiB0aGlzLmxvZ0luV2l0aFBvcHVwKG5ldyBUd2l0dGVyQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoR2l0aHViKCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgR2l0aHViQXV0aFByb3ZpZGVyKCkpO1xuICB9XG5cbiAgbG9nSW5XaXRoQXBwbGUoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICB9XG5cbiAgbG9nSW5XaXRoTWljcm9zb2Z0KCk6IFByb21pc2U8VXNlckNyZWRlbnRpYWw+IHtcbiAgICAvLyByZXR1cm4gdGhpcy5sb2dJbldpdGhQb3B1cChuZXcgTWljcm9zb2Z0QXV0aFByb3ZpZGVyKCkpO1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICB9XG5cbiAgbG9nSW5XaXRoUGhvbmUoKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHRocm93IG5ldyBFcnJvcigndG9kbycpO1xuICAgIC8vIHJldHVybiBzaWduSW5XaXRoUGhvbmVOdW1iZXIodGhpcy5maXJlYmFzZUF1dGgsIClcbiAgfVxuXG4gIGxvZ0luV2l0aFBvcHVwKHByb3ZpZGVyOiBBdXRoUHJvdmlkZXIsIHJlc29sdmVyPzogUG9wdXBSZWRpcmVjdFJlc29sdmVyKTogUHJvbWlzZTxVc2VyQ3JlZGVudGlhbD4ge1xuICAgIHJldHVybiBzaWduSW5XaXRoUG9wdXAodGhpcy5maXJlYmFzZUF1dGgsIHByb3ZpZGVyLCByZXNvbHZlcik7XG4gIH1cblxuICByZWdpc3RlcldpdGhFbWFpbEFuZFBhc3N3b3JkKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIGNyZWF0ZVVzZXJXaXRoRW1haWxBbmRQYXNzd29yZCh0aGlzLmZpcmViYXNlQXV0aCwgZW1haWwsIHBhc3N3b3JkKTtcbiAgfVxuXG4gIHNlbmRQYXNzd29yZFJlc2V0RW1haWwoZW1haWw6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiBzZW5kUGFzc3dvcmRSZXNldEVtYWlsKHRoaXMuZmlyZWJhc2VBdXRoLCBlbWFpbCk7XG4gIH1cblxuICBsb2dJbldpdGhFbWFpbEFuZFBhc3N3b3JkKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHNpZ25JbldpdGhFbWFpbEFuZFBhc3N3b3JkKHRoaXMuZmlyZWJhc2VBdXRoLCBlbWFpbCwgcGFzc3dvcmQpO1xuICB9XG5cbiAgbG9nSW5Bc0Fub255bW91cygpOiBQcm9taXNlPFVzZXJDcmVkZW50aWFsPiB7XG4gICAgcmV0dXJuIHNpZ25JbkFub255bW91c2x5KHRoaXMuZmlyZWJhc2VBdXRoKTtcbiAgfVxuXG4gIGxvZ091dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5maXJlYmFzZUF1dGguc2lnbk91dCgpO1xuICB9XG59XG5cbi8qKlxuICogRmlyZWJhc2VBdXRoQ29udGV4dEluZm8gaW1wbGVtZW50YXRpb24gZnJvbSBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLlxuICovXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VBdXRoQ29udGV4dEluZm8gaW1wbGVtZW50cyBGaXJlYmFzZUF1dGhDb250ZXh0SW5mbyB7XG4gIHByaXZhdGUgX3Rva2VuID0gY2FjaGVkR2V0dGVyKCgpID0+IGZpcmViYXNlQXV0aFRva2VuRnJvbVVzZXIodGhpcy51c2VyKSk7XG4gIHByaXZhdGUgX3JvbGVzID0gY2FjaGVkR2V0dGVyKCgpID0+IHRoaXMuc2VydmljZS5yb2xlc0ZvckNsYWltcyh0aGlzLmdldENsYWltcygpKSk7XG4gIHByaXZhdGUgX2lzQWRtaW4gPSBjYWNoZWRHZXR0ZXIoKCkgPT4gdGhpcy5zZXJ2aWNlLmlzQWRtaW5JbkF1dGhSb2xlU2V0KHRoaXMuX3JvbGVzKCkpKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBzZXJ2aWNlOiBEYnhGaXJlYmFzZUF1dGhTZXJ2aWNlLCByZWFkb25seSB1c2VyOiBVc2VyLCByZWFkb25seSBqd3RUb2tlbjogSWRUb2tlblJlc3VsdCkge31cblxuICBnZXQgdWlkKCkge1xuICAgIHJldHVybiB0aGlzLnVzZXIudWlkO1xuICB9XG5cbiAgaXNBZG1pbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNBZG1pbigpO1xuICB9XG5cbiAgZ2V0Q2xhaW1zPFQgZXh0ZW5kcyBBdXRoQ2xhaW1zT2JqZWN0ID0gQXV0aENsYWltc09iamVjdD4oKTogQXV0aENsYWltczxUPiB7XG4gICAgcmV0dXJuIHRoaXMuand0VG9rZW4uY2xhaW1zIGFzIEF1dGhDbGFpbXM8VD47XG4gIH1cblxuICBnZXRBdXRoUm9sZXMoKTogQXV0aFJvbGVTZXQge1xuICAgIHJldHVybiB0aGlzLl9yb2xlcygpO1xuICB9XG5cbiAgZ2V0IHRva2VuKCk6IEZpcmViYXNlQXV0aFRva2VuIHtcbiAgICByZXR1cm4gdGhpcy5fdG9rZW4oKTtcbiAgfVxufVxuIl19
|
|
@@ -77,7 +77,7 @@ export class DbxFirebaseCollectionLoaderInstance {
|
|
|
77
77
|
set collection(collection) {
|
|
78
78
|
this._collection.next(collection);
|
|
79
79
|
}
|
|
80
|
-
// MARK:
|
|
80
|
+
// MARK: DbxFirebaseCollectionLoader
|
|
81
81
|
next() {
|
|
82
82
|
useFirst(this.firestoreIteration$, (x) => x.next());
|
|
83
83
|
}
|
|
@@ -97,4 +97,4 @@ export function dbxFirebaseCollectionLoaderInstance(config) {
|
|
|
97
97
|
export function dbxFirebaseCollectionLoaderInstanceWithCollection(collection) {
|
|
98
98
|
return new DbxFirebaseCollectionLoaderInstance({ collection });
|
|
99
99
|
}
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5sb2FkZXIuaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9sb2FkZXIvY29sbGVjdGlvbi5sb2FkZXIuaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLHNDQUFzQyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVKLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQWMsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkssT0FBTyxFQUFnQyw0QkFBNEIsRUFBNkssOEJBQThCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQWlCMVM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sbUNBQW1DO0lBbUQ5QyxZQUE2QixXQUFpRTtRQUFqRSxnQkFBVyxHQUFYLFdBQVcsQ0FBc0Q7UUFsRDNFLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQXVDLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFdEcsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNFLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQWdCLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDbkYsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBZ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNqSCxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVqQyxpQkFBWSxHQUFHLElBQUks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Q1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsVUFBZ0Q7UUFDN0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELDZCQUE2QjtJQUM3QixJQUFJO1FBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBMEQ7UUFDdkUsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWEsQ0FBQyxtQkFBeUQ7UUFDckUsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQztJQUN4QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsbUNBQW1DLENBQTJELE1BQTJEO0lBQ3ZLLE9BQU8sSUFBSSxtQ0FBbUMsQ0FBTyxNQUFNLENBQUMsQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGlEQUFpRCxDQUEyRCxVQUFnRDtJQUMxSyxPQUFPLElBQUksbUNBQW1DLENBQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlTGlzdExvYWRpbmdTdGF0ZSwgY2xlYW51cERlc3Ryb3lhYmxlLCBmaWx0ZXJNYXliZSwgdXNlRmlyc3QsIFN1YnNjcmlwdGlvbk9iamVjdCwgYWNjdW11bGF0b3JGbGF0dGVuUGFnZUxpc3RMb2FkaW5nU3RhdGUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIFN1YmplY3QsIHRocm90dGxlVGltZSwgc3dpdGNoTWFwLCBPYnNlcnZhYmxlLCB0YXAsIHN0YXJ0V2l0aCwgTkVWRVIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZpcmViYXNlUXVlcnlJdGVtQWNjdW11bGF0b3IsIGZpcmViYXNlUXVlcnlJdGVtQWNjdW11bGF0b3IsIEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlLCBGaXJlc3RvcmVEb2N1bWVudCwgRmlyZXN0b3JlSXRlbVBhZ2VJdGVyYXRpb25JbnN0YW5jZSwgRmlyZXN0b3JlSXRlbVBhZ2VJdGVyYXRvckZpbHRlciwgRmlyZXN0b3JlUXVlcnlDb25zdHJhaW50LCBJdGVyYXRpb25RdWVyeURvY0NoYW5nZVdhdGNoZXIsIGl0ZXJhdGlvblF1ZXJ5RG9jQ2hhbmdlV2F0Y2hlciB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IEFycmF5T3JWYWx1ZSwgRGVzdHJveWFibGUsIEluaXRpYWxpemVkLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVyIH0gZnJvbSAnLi9jb2xsZWN0aW9uLmxvYWRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VJbml0Q29uZmlnPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+PiB7XG4gIGNvbGxlY3Rpb24/OiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj47XG4gIG1heFBhZ2VzPzogTWF5YmU8bnVtYmVyPjtcbiAgaXRlbXNQZXJQYWdlPzogTWF5YmU8bnVtYmVyPjtcbiAgY29uc3RyYWludHM/OiBNYXliZTxBcnJheU9yVmFsdWU8RmlyZXN0b3JlUXVlcnlDb25zdHJhaW50Pj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VEYXRhPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+PiB7XG4gIHJlYWRvbmx5IGZpcmVzdG9yZUl0ZXJhdGlvbiQ6IE9ic2VydmFibGU8RmlyZXN0b3JlSXRlbVBhZ2VJdGVyYXRpb25JbnN0YW5jZTxUPj47XG4gIHJlYWRvbmx5IGFjY3VtdWxhdG9yJDogT2JzZXJ2YWJsZTxGaXJlYmFzZVF1ZXJ5SXRlbUFjY3VtdWxhdG9yPFQ+PjtcbiAgcmVhZG9ubHkgcGFnZUxvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8UGFnZUxpc3RMb2FkaW5nU3RhdGU8VD4+O1xufVxuXG4vKipcbiAqIERieEZpcmViYXNlTW9kZWxMb2FkZXIgaW1wbGVtZW50YXRpb24gd2l0aGluIGFuIGluc3RhbmNlLlxuICovXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2U8VCA9IHVua25vd24sIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+PiBpbXBsZW1lbnRzIERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlcjxUPiwgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VEYXRhPFQsIEQ+LCBJbml0aWFsaXplZCwgRGVzdHJveWFibGUge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2NvbGxlY3Rpb24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+Pj4odGhpcy5faW5pdENvbmZpZz8uY29sbGVjdGlvbik7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9tYXhQYWdlcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8bnVtYmVyPj4odGhpcy5faW5pdENvbmZpZz8ubWF4UGFnZXMpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2l0ZW1zUGVyUGFnZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8bnVtYmVyPj4odGhpcy5faW5pdENvbmZpZz8uaXRlbXNQZXJQYWdlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jb25zdHJhaW50cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QXJyYXlPclZhbHVlPEZpcmVzdG9yZVF1ZXJ5Q29uc3RyYWludD4+Pih0aGlzLl9pbml0Q29uZmlnPy5jb25zdHJhaW50cyk7XG4gIHByb3RlY3RlZCByZWFkb25seSBfcmVzdGFydCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWF4UGFnZXNTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgcmVhZG9ubHkgY29sbGVjdGlvbiQgPSB0aGlzLl9jb2xsZWN0aW9uLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gIHJlYWRvbmx5IGNvbnN0cmFpbnRzJCA9IHRoaXMuX2NvbnN0cmFpbnRzLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG5cbiAgcmVhZG9ubHkgaXRlcmF0b3JGaWx0ZXIkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0b3JGaWx0ZXI+ID0gY29tYmluZUxhdGVzdChbdGhpcy5faXRlbXNQZXJQYWdlLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksIHRoaXMuY29uc3RyYWludHMkXSkucGlwZShcbiAgICBtYXAoKFtsaW1pdCwgY29uc3RyYWludHNdKSA9PiAoeyBsaW1pdCwgY29uc3RyYWludHMsIG1heFBhZ2VMb2FkTGltaXQ6IHRoaXMubWF4UGFnZXMgfSBhcyBGaXJlc3RvcmVJdGVtUGFnZUl0ZXJhdG9yRmlsdGVyKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBmaXJlc3RvcmVJdGVyYXRpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0aW9uSW5zdGFuY2U8VD4+ID0gdGhpcy5jb2xsZWN0aW9uJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29sbGVjdGlvbikgPT4ge1xuICAgICAgaWYgKGNvbGxlY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3RoaXMuaXRlcmF0b3JGaWx0ZXIkLCB0aGlzLl9yZXN0YXJ0LnBpcGUoc3RhcnRXaXRoKHVuZGVmaW5lZCkpXSkucGlwZShcbiAgICAgICAgICB0aHJvdHRsZVRpbWUoMTAwLCB1bmRlZmluZWQsIHsgdHJhaWxpbmc6IHRydWUgfSksIC8vIHByZXZlbnQgcmFwaWQgY2hhbmdlcyBhbmQgZXhlY3V0aW5nIGZpbHRlcnMgdG9vIHF1aWNrbHkuXG4gICAgICAgICAgbWFwKChbaXRlcmF0b3JGaWx0ZXJdKSA9PiBjb2xsZWN0aW9uLmZpcmVzdG9yZUl0ZXJhdGlvbihpdGVyYXRvckZpbHRlcikpLFxuICAgICAgICAgIGNsZWFudXBEZXN0cm95YWJsZSgpLCAvLyBjbGVhbnVwIHRoZSBpdGVyYXRpb25cbiAgICAgICAgICBzaGFyZVJlcGxheSgxKVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE5FVkVSOyAvLyBkb24ndCBlbWl0IGFueXRoaW5nIHVudGlsIGNvbGxlY3Rpb24gaXMgcHJvdmlkZWQuXG4gICAgICB9XG4gICAgfSksXG4gICAgY2xlYW51cERlc3Ryb3lhYmxlKCksIC8vIGNsZWFudXAgdGhlIGl0ZXJhdGlvblxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgcXVlcnlDaGFuZ2VXYXRjaGVyJDogT2JzZXJ2YWJsZTxJdGVyYXRpb25RdWVyeURvY0NoYW5nZVdhdGNoZXI8VD4+ID0gdGhpcy5maXJlc3RvcmVJdGVyYXRpb24kLnBpcGUoXG4gICAgbWFwKChpbnN0YW5jZSkgPT4gaXRlcmF0aW9uUXVlcnlEb2NDaGFuZ2VXYXRjaGVyKHsgaW5zdGFuY2UgfSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYWNjdW11bGF0b3IkOiBPYnNlcnZhYmxlPEZpcmViYXNlUXVlcnlJdGVtQWNjdW11bGF0b3I8VD4+ID0gdGhpcy5maXJlc3RvcmVJdGVyYXRpb24kLnBpcGUoXG4gICAgbWFwKCh4KSA9PiBmaXJlYmFzZVF1ZXJ5SXRlbUFjY3VtdWxhdG9yPFQ+KHgpKSxcbiAgICBjbGVhbnVwRGVzdHJveWFibGUoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBhZ2VMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPFBhZ2VMaXN0TG9hZGluZ1N0YXRlPFQ+PiA9IHRoaXMuYWNjdW11bGF0b3IkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiBhY2N1bXVsYXRvckZsYXR0ZW5QYWdlTGlzdExvYWRpbmdTdGF0ZSh4KSBhcyBPYnNlcnZhYmxlPFBhZ2VMaXN0TG9hZGluZ1N0YXRlPFQ+PiksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9pbml0Q29uZmlnPzogRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VJbml0Q29uZmlnPFQsIEQ+KSB7fVxuXG4gIGluaXQoKTogdm9pZCB7XG4gICAgLy8gV2hlbiBtYXggcGFnZXMgY2hhbmdlcywgdXBkYXRlIHRoZSBpdGVyYXRpb24ncyBtYXggcGFnZSBsaW1pdC5cbiAgICB0aGlzLl9tYXhQYWdlc1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9tYXhQYWdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGZpbHRlck1heWJlKCksIC8vIGRvIG5vdCBwYXNzIG51bGwvdW5kZWZpbmVkIHZhbHVlc1xuICAgICAgICBzd2l0Y2hNYXAoKG1heFBhZ2VMb2FkTGltaXQpID0+XG4gICAgICAgICAgdGhpcy5maXJlc3RvcmVJdGVyYXRpb24kLnBpcGUoXG4gICAgICAgICAgICB0YXAoKGl0ZXJhdGlvbikgPT4ge1xuICAgICAgICAgICAgICBpdGVyYXRpb24ubWF4UGFnZUxvYWRMaW1pdCA9IG1heFBhZ2VMb2FkTGltaXQ7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tYXhQYWdlcy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2NvbGxlY3Rpb24uY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb25zdHJhaW50cy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2l0ZW1zUGVyUGFnZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3Jlc3RhcnQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9tYXhQYWdlc1N1Yi5kZXN0cm95KCk7XG4gIH1cblxuICAvLyBNQVJLOiBJbnB1dHNcbiAgZ2V0IG1heFBhZ2VzKCk6IE1heWJlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9tYXhQYWdlcy52YWx1ZTtcbiAgfVxuXG4gIHNldCBtYXhQYWdlcyhtYXhQYWdlczogTWF5YmU8bnVtYmVyPikge1xuICAgIGlmICh0aGlzLm1heFBhZ2VzICE9IG1heFBhZ2VzKSB7XG4gICAgICB0aGlzLl9tYXhQYWdlcy5uZXh0KG1heFBhZ2VzKTtcbiAgICB9XG4gIH1cblxuICBnZXQgaXRlbXNQZXJQYWdlKCk6IE1heWJlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9pdGVtc1BlclBhZ2UudmFsdWU7XG4gIH1cblxuICBzZXQgaXRlbXNQZXJQYWdlKGl0ZW1zUGVyUGFnZTogTWF5YmU8bnVtYmVyPikge1xuICAgIGlmICh0aGlzLml0ZW1zUGVyUGFnZSAhPSBpdGVtc1BlclBhZ2UpIHtcbiAgICAgIHRoaXMuX2l0ZW1zUGVyUGFnZS5uZXh0KGl0ZW1zUGVyUGFnZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGNvbnN0cmFpbnRzKCk6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVRdWVyeUNvbnN0cmFpbnQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnN0cmFpbnRzLnZhbHVlO1xuICB9XG5cbiAgc2V0IGNvbnN0cmFpbnRzKGNvbnN0cmFpbnRzOiBNYXliZTxBcnJheU9yVmFsdWU8RmlyZXN0b3JlUXVlcnlDb25zdHJhaW50Pj4pIHtcbiAgICB0aGlzLl9jb25zdHJhaW50cy5uZXh0KGNvbnN0cmFpbnRzKTtcbiAgfVxuXG4gIGdldCBjb2xsZWN0aW9uKCk6IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbGxlY3Rpb24udmFsdWU7XG4gIH1cblxuICBzZXQgY29sbGVjdGlvbihjb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj4pIHtcbiAgICB0aGlzLl9jb2xsZWN0aW9uLm5leHQoY29sbGVjdGlvbik7XG4gIH1cblxuICAvLyBNQVJLOiBEYnhGaXJlYmFzZU1vZGVsTGlzdFxuICBuZXh0KCkge1xuICAgIHVzZUZpcnN0KHRoaXMuZmlyZXN0b3JlSXRlcmF0aW9uJCwgKHgpID0+IHgubmV4dCgpKTtcbiAgfVxuXG4gIHJlc3RhcnQoKSB7XG4gICAgdGhpcy5fcmVzdGFydC5uZXh0KCk7XG4gIH1cblxuICBzZXRDb25zdHJhaW50cyhjb25zdHJhaW50czogTWF5YmU8QXJyYXlPclZhbHVlPEZpcmVzdG9yZVF1ZXJ5Q29uc3RyYWludD4+KSB7XG4gICAgdGhpcy5jb25zdHJhaW50cyA9IGNvbnN0cmFpbnRzO1xuICB9XG5cbiAgc2V0Q29sbGVjdGlvbihmaXJlc3RvcmVDb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj4pIHtcbiAgICB0aGlzLmNvbGxlY3Rpb24gPSBmaXJlc3RvcmVDb2xsZWN0aW9uO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZTxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4oY29uZmlnOiBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZUluaXRDb25maWc8VCwgRD4pOiBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZTxULCBEPiB7XG4gIHJldHVybiBuZXcgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2U8VCwgRD4oY29uZmlnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlV2l0aENvbGxlY3Rpb248VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4+KGNvbGxlY3Rpb246IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+Pik6IERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlPFQsIEQ+IHtcbiAgcmV0dXJuIG5ldyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZTxULCBEPih7IGNvbGxlY3Rpb24gfSk7XG59XG4iXX0=
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5sb2FkZXIuaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9sb2FkZXIvY29sbGVjdGlvbi5sb2FkZXIuaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLHNDQUFzQyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVKLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQWMsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkssT0FBTyxFQUFvRCw0QkFBNEIsRUFBNkssOEJBQThCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQWlCOVQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sbUNBQW1DO0lBbUQ5QyxZQUE2QixXQUFpRTtRQUFqRSxnQkFBVyxHQUFYLFdBQVcsQ0FBc0Q7UUFsRDNFLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQXVDLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFdEcsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNFLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQWdCLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDbkYsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBZ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNqSCxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVqQyxpQkFBWSxHQUFHLElBQUks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WixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxVQUFnRDtRQUM3RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsb0NBQW9DO0lBQ3BDLElBQUk7UUFDRixRQUFRLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGNBQWMsQ0FBQyxXQUEwRDtRQUN2RSxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsYUFBYSxDQUFDLG1CQUF5RDtRQUNyRSxJQUFJLENBQUMsVUFBVSxHQUFHLG1CQUFtQixDQUFDO0lBQ3hDLENBQUM7Q0FDRjtBQUVELE1BQU0sVUFBVSxtQ0FBbUMsQ0FBMkQsTUFBMkQ7SUFDdkssT0FBTyxJQUFJLG1DQUFtQyxDQUFPLE1BQU0sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxNQUFNLFVBQVUsaURBQWlELENBQTJELFVBQWdEO0lBQzFLLE9BQU8sSUFBSSxtQ0FBbUMsQ0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VMaXN0TG9hZGluZ1N0YXRlLCBjbGVhbnVwRGVzdHJveWFibGUsIGZpbHRlck1heWJlLCB1c2VGaXJzdCwgU3Vic2NyaXB0aW9uT2JqZWN0LCBhY2N1bXVsYXRvckZsYXR0ZW5QYWdlTGlzdExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgU3ViamVjdCwgdGhyb3R0bGVUaW1lLCBzd2l0Y2hNYXAsIE9ic2VydmFibGUsIHRhcCwgc3RhcnRXaXRoLCBORVZFUiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRG9jdW1lbnREYXRhV2l0aElkLCBGaXJlYmFzZVF1ZXJ5SXRlbUFjY3VtdWxhdG9yLCBmaXJlYmFzZVF1ZXJ5SXRlbUFjY3VtdWxhdG9yLCBGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZSwgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0aW9uSW5zdGFuY2UsIEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0b3JGaWx0ZXIsIEZpcmVzdG9yZVF1ZXJ5Q29uc3RyYWludCwgSXRlcmF0aW9uUXVlcnlEb2NDaGFuZ2VXYXRjaGVyLCBpdGVyYXRpb25RdWVyeURvY0NoYW5nZVdhdGNoZXIgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBBcnJheU9yVmFsdWUsIERlc3Ryb3lhYmxlLCBJbml0aWFsaXplZCwgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlciB9IGZyb20gJy4vY29sbGVjdGlvbi5sb2FkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlSW5pdENvbmZpZzxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4ge1xuICBjb2xsZWN0aW9uPzogTWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbkxpa2U8VCwgRD4+O1xuICBtYXhQYWdlcz86IE1heWJlPG51bWJlcj47XG4gIGl0ZW1zUGVyUGFnZT86IE1heWJlPG51bWJlcj47XG4gIGNvbnN0cmFpbnRzPzogTWF5YmU8QXJyYXlPclZhbHVlPEZpcmVzdG9yZVF1ZXJ5Q29uc3RyYWludD4+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlRGF0YTxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4ge1xuICByZWFkb25seSBmaXJlc3RvcmVJdGVyYXRpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0aW9uSW5zdGFuY2U8VD4+O1xuICByZWFkb25seSBhY2N1bXVsYXRvciQ6IE9ic2VydmFibGU8RmlyZWJhc2VRdWVyeUl0ZW1BY2N1bXVsYXRvcjxUPj47XG4gIHJlYWRvbmx5IHBhZ2VMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPFBhZ2VMaXN0TG9hZGluZ1N0YXRlPFQ+Pjtcbn1cblxuLyoqXG4gKiBEYnhGaXJlYmFzZU1vZGVsTG9hZGVyIGltcGxlbWVudGF0aW9uIHdpdGhpbiBhbiBpbnN0YW5jZS5cbiAqL1xuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlPFQgPSB1bmtub3duLCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4gaW1wbGVtZW50cyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXI8VD4sIERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlRGF0YTxULCBEPiwgSW5pdGlhbGl6ZWQsIERlc3Ryb3lhYmxlIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jb2xsZWN0aW9uID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj4+KHRoaXMuX2luaXRDb25maWc/LmNvbGxlY3Rpb24pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfbWF4UGFnZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPG51bWJlcj4+KHRoaXMuX2luaXRDb25maWc/Lm1heFBhZ2VzKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9pdGVtc1BlclBhZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPG51bWJlcj4+KHRoaXMuX2luaXRDb25maWc/Lml0ZW1zUGVyUGFnZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBfY29uc3RyYWludHMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVRdWVyeUNvbnN0cmFpbnQ+Pj4odGhpcy5faW5pdENvbmZpZz8uY29uc3RyYWludHMpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3Jlc3RhcnQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21heFBhZ2VzU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuXG4gIHJlYWRvbmx5IGNvbGxlY3Rpb24kID0gdGhpcy5fY29sbGVjdGlvbi5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuICByZWFkb25seSBjb25zdHJhaW50cyQgPSB0aGlzLl9jb25zdHJhaW50cy5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuXG4gIHJlYWRvbmx5IGl0ZXJhdG9yRmlsdGVyJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVJdGVtUGFnZUl0ZXJhdG9yRmlsdGVyPiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2l0ZW1zUGVyUGFnZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLCB0aGlzLmNvbnN0cmFpbnRzJF0pLnBpcGUoXG4gICAgbWFwKChbbGltaXQsIGNvbnN0cmFpbnRzXSkgPT4gKHsgbGltaXQsIGNvbnN0cmFpbnRzLCBtYXhQYWdlTG9hZExpbWl0OiB0aGlzLm1heFBhZ2VzIH0gYXMgRmlyZXN0b3JlSXRlbVBhZ2VJdGVyYXRvckZpbHRlcikpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZmlyZXN0b3JlSXRlcmF0aW9uJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVJdGVtUGFnZUl0ZXJhdGlvbkluc3RhbmNlPFQ+PiA9IHRoaXMuY29sbGVjdGlvbiQucGlwZShcbiAgICBzd2l0Y2hNYXAoKGNvbGxlY3Rpb24pID0+IHtcbiAgICAgIGlmIChjb2xsZWN0aW9uKSB7XG4gICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLml0ZXJhdG9yRmlsdGVyJCwgdGhpcy5fcmVzdGFydC5waXBlKHN0YXJ0V2l0aCh1bmRlZmluZWQpKV0pLnBpcGUoXG4gICAgICAgICAgdGhyb3R0bGVUaW1lKDEwMCwgdW5kZWZpbmVkLCB7IHRyYWlsaW5nOiB0cnVlIH0pLCAvLyBwcmV2ZW50IHJhcGlkIGNoYW5nZXMgYW5kIGV4ZWN1dGluZyBmaWx0ZXJzIHRvbyBxdWlja2x5LlxuICAgICAgICAgIG1hcCgoW2l0ZXJhdG9yRmlsdGVyXSkgPT4gY29sbGVjdGlvbi5maXJlc3RvcmVJdGVyYXRpb24oaXRlcmF0b3JGaWx0ZXIpKSxcbiAgICAgICAgICBjbGVhbnVwRGVzdHJveWFibGUoKSwgLy8gY2xlYW51cCB0aGUgaXRlcmF0aW9uXG4gICAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBORVZFUjsgLy8gZG9uJ3QgZW1pdCBhbnl0aGluZyB1bnRpbCBjb2xsZWN0aW9uIGlzIHByb3ZpZGVkLlxuICAgICAgfVxuICAgIH0pLFxuICAgIGNsZWFudXBEZXN0cm95YWJsZSgpLCAvLyBjbGVhbnVwIHRoZSBpdGVyYXRpb25cbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHF1ZXJ5Q2hhbmdlV2F0Y2hlciQ6IE9ic2VydmFibGU8SXRlcmF0aW9uUXVlcnlEb2NDaGFuZ2VXYXRjaGVyPFQ+PiA9IHRoaXMuZmlyZXN0b3JlSXRlcmF0aW9uJC5waXBlKFxuICAgIG1hcCgoaW5zdGFuY2UpID0+IGl0ZXJhdGlvblF1ZXJ5RG9jQ2hhbmdlV2F0Y2hlcih7IGluc3RhbmNlIH0pKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGFjY3VtdWxhdG9yJDogT2JzZXJ2YWJsZTxGaXJlYmFzZVF1ZXJ5SXRlbUFjY3VtdWxhdG9yPFQ+PiA9IHRoaXMuZmlyZXN0b3JlSXRlcmF0aW9uJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gZmlyZWJhc2VRdWVyeUl0ZW1BY2N1bXVsYXRvcjxUPih4KSksXG4gICAgY2xlYW51cERlc3Ryb3lhYmxlKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBwYWdlTG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxQYWdlTGlzdExvYWRpbmdTdGF0ZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PiA9IHRoaXMuYWNjdW11bGF0b3IkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiBhY2N1bXVsYXRvckZsYXR0ZW5QYWdlTGlzdExvYWRpbmdTdGF0ZSh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9pbml0Q29uZmlnPzogRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VJbml0Q29uZmlnPFQsIEQ+KSB7fVxuXG4gIGluaXQoKTogdm9pZCB7XG4gICAgLy8gV2hlbiBtYXggcGFnZXMgY2hhbmdlcywgdXBkYXRlIHRoZSBpdGVyYXRpb24ncyBtYXggcGFnZSBsaW1pdC5cbiAgICB0aGlzLl9tYXhQYWdlc1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9tYXhQYWdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGZpbHRlck1heWJlKCksIC8vIGRvIG5vdCBwYXNzIG51bGwvdW5kZWZpbmVkIHZhbHVlc1xuICAgICAgICBzd2l0Y2hNYXAoKG1heFBhZ2VMb2FkTGltaXQpID0+XG4gICAgICAgICAgdGhpcy5maXJlc3RvcmVJdGVyYXRpb24kLnBpcGUoXG4gICAgICAgICAgICB0YXAoKGl0ZXJhdGlvbikgPT4ge1xuICAgICAgICAgICAgICBpdGVyYXRpb24ubWF4UGFnZUxvYWRMaW1pdCA9IG1heFBhZ2VMb2FkTGltaXQ7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tYXhQYWdlcy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2NvbGxlY3Rpb24uY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb25zdHJhaW50cy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2l0ZW1zUGVyUGFnZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3Jlc3RhcnQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9tYXhQYWdlc1N1Yi5kZXN0cm95KCk7XG4gIH1cblxuICAvLyBNQVJLOiBJbnB1dHNcbiAgZ2V0IG1heFBhZ2VzKCk6IE1heWJlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9tYXhQYWdlcy52YWx1ZTtcbiAgfVxuXG4gIHNldCBtYXhQYWdlcyhtYXhQYWdlczogTWF5YmU8bnVtYmVyPikge1xuICAgIGlmICh0aGlzLm1heFBhZ2VzICE9IG1heFBhZ2VzKSB7XG4gICAgICB0aGlzLl9tYXhQYWdlcy5uZXh0KG1heFBhZ2VzKTtcbiAgICB9XG4gIH1cblxuICBnZXQgaXRlbXNQZXJQYWdlKCk6IE1heWJlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9pdGVtc1BlclBhZ2UudmFsdWU7XG4gIH1cblxuICBzZXQgaXRlbXNQZXJQYWdlKGl0ZW1zUGVyUGFnZTogTWF5YmU8bnVtYmVyPikge1xuICAgIGlmICh0aGlzLml0ZW1zUGVyUGFnZSAhPSBpdGVtc1BlclBhZ2UpIHtcbiAgICAgIHRoaXMuX2l0ZW1zUGVyUGFnZS5uZXh0KGl0ZW1zUGVyUGFnZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGNvbnN0cmFpbnRzKCk6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVRdWVyeUNvbnN0cmFpbnQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnN0cmFpbnRzLnZhbHVlO1xuICB9XG5cbiAgc2V0IGNvbnN0cmFpbnRzKGNvbnN0cmFpbnRzOiBNYXliZTxBcnJheU9yVmFsdWU8RmlyZXN0b3JlUXVlcnlDb25zdHJhaW50Pj4pIHtcbiAgICB0aGlzLl9jb25zdHJhaW50cy5uZXh0KGNvbnN0cmFpbnRzKTtcbiAgfVxuXG4gIGdldCBjb2xsZWN0aW9uKCk6IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbGxlY3Rpb24udmFsdWU7XG4gIH1cblxuICBzZXQgY29sbGVjdGlvbihjb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj4pIHtcbiAgICB0aGlzLl9jb2xsZWN0aW9uLm5leHQoY29sbGVjdGlvbik7XG4gIH1cblxuICAvLyBNQVJLOiBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJcbiAgbmV4dCgpIHtcbiAgICB1c2VGaXJzdCh0aGlzLmZpcmVzdG9yZUl0ZXJhdGlvbiQsICh4KSA9PiB4Lm5leHQoKSk7XG4gIH1cblxuICByZXN0YXJ0KCkge1xuICAgIHRoaXMuX3Jlc3RhcnQubmV4dCgpO1xuICB9XG5cbiAgc2V0Q29uc3RyYWludHMoY29uc3RyYWludHM6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVRdWVyeUNvbnN0cmFpbnQ+Pikge1xuICAgIHRoaXMuY29uc3RyYWludHMgPSBjb25zdHJhaW50cztcbiAgfVxuXG4gIHNldENvbGxlY3Rpb24oZmlyZXN0b3JlQ29sbGVjdGlvbjogTWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbkxpa2U8VCwgRD4+KSB7XG4gICAgdGhpcy5jb2xsZWN0aW9uID0gZmlyZXN0b3JlQ29sbGVjdGlvbjtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2U8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4+KGNvbmZpZzogRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2VJbml0Q29uZmlnPFQsIEQ+KTogRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2U8VCwgRD4ge1xuICByZXR1cm4gbmV3IERieEZpcmViYXNlQ29sbGVjdGlvbkxvYWRlckluc3RhbmNlPFQsIEQ+KGNvbmZpZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZVdpdGhDb2xsZWN0aW9uPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+Pihjb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uTGlrZTxULCBEPj4pOiBEYnhGaXJlYmFzZUNvbGxlY3Rpb25Mb2FkZXJJbnN0YW5jZTxULCBEPiB7XG4gIHJldHVybiBuZXcgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVySW5zdGFuY2U8VCwgRD4oeyBjb2xsZWN0aW9uIH0pO1xufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9sb2FkZXIvY29sbGVjdGlvbi5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvY3VtZW50RGF0YVdpdGhJZCwgRmlyZXN0b3JlSXRlbVBhZ2VJdGVyYXRpb25JbnN0YW5jZSwgRmlyZXN0b3JlUXVlcnlDb25zdHJhaW50IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgUGFnZUxpc3RMb2FkaW5nU3RhdGUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlLCBBcnJheU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBBYnN0cmFjdCB0eXBlIHRoYXQgbG9hZHMgbW9kZWxzIGZyb20gYSBjb25maWd1cmVkIGNvbGxlY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uTG9hZGVyPFQgPSB1bmtub3duPiB7XG4gIHJlYWRvbmx5IGNvbnN0cmFpbnRzJDogT2JzZXJ2YWJsZTxNYXliZTxBcnJheU9yVmFsdWU8RmlyZXN0b3JlUXVlcnlDb25zdHJhaW50Pj4+O1xuICByZWFkb25seSBmaXJlc3RvcmVJdGVyYXRpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUl0ZW1QYWdlSXRlcmF0aW9uSW5zdGFuY2U8VD4+O1xuICByZWFkb25seSBwYWdlTG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxQYWdlTGlzdExvYWRpbmdTdGF0ZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgcGFnZXMgdG8gbG9hZCBmcm9tIHRoZSBpbnRlcmF0aW9uLlxuICAgKlxuICAgKiBDaGFuZ2luZyB0aGlzIHVwZGF0ZXMgdGhlIGl0ZXJhdGlvbiwgYnV0IGRvZXMgbm90IHJlc2V0IGl0LlxuICAgKi9cbiAgbWF4UGFnZXM6IE1heWJlPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyB0byBsb2FkIHBlciBwYWdlLlxuICAgKlxuICAgKiBDaGFuZ2luZyB0aGlzIHdpbGwgcmVzZXQgdGhlIGl0ZXJhdGlvbi5cbiAgICovXG4gIGl0ZW1zUGVyUGFnZTogTWF5YmU8bnVtYmVyPjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgY29uc3RyYWludHMgb24gdGhlIG1vZGVsIGxvYWRlci5cbiAgICpcbiAgICogQHBhcmFtIGNvbnN0cmFpbnRzXG4gICAqL1xuICBzZXRDb25zdHJhaW50cyhjb25zdHJhaW50czogTWF5YmU8QXJyYXlPclZhbHVlPEZpcmVzdG9yZVF1ZXJ5Q29uc3RyYWludD4+KTogdm9pZDtcblxuICAvKipcbiAgICogTG9hZHMgbW9yZSBpdGVtcy5cbiAgICovXG4gIG5leHQoKTogdm9pZDtcblxuICAvKipcbiAgICogUmVzZXRzL3Jlc3RhcnRzIHRoZSBsaXN0LlxuICAgKi9cbiAgcmVzdGFydCgpOiB2b2lkO1xufVxuIl19
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { filterMaybe, pageLoadingStateFromObs } from '@dereekb/rxjs';
|
|
2
|
+
import { BehaviorSubject, map, shareReplay, distinctUntilChanged, Subject, switchMap } from 'rxjs';
|
|
3
|
+
import { documentReferencesFromDocuments, firestoreModelIdsFromDocuments, firestoreModelKeysFromDocuments, getDataFromDocumentSnapshots, getDocumentSnapshots, loadDocumentsForDocumentReferences, loadDocumentsForIds, loadDocumentsForKeys } from '@dereekb/firebase';
|
|
4
|
+
import { asArray } from '@dereekb/util';
|
|
5
|
+
/**
|
|
6
|
+
* DbxLimitedFirebaseDocumentLoader implementation within an instance.
|
|
7
|
+
*/
|
|
8
|
+
export class DbxLimitedFirebaseDocumentLoaderInstance {
|
|
9
|
+
constructor(_initConfig) {
|
|
10
|
+
this._initConfig = _initConfig;
|
|
11
|
+
this.accessor = this._initConfig.accessor;
|
|
12
|
+
this._documents = new BehaviorSubject(undefined);
|
|
13
|
+
this._restart = new Subject();
|
|
14
|
+
this.documents$ = this._documents.pipe(filterMaybe(), distinctUntilChanged());
|
|
15
|
+
this.keys$ = this.documents$.pipe(map(firestoreModelKeysFromDocuments));
|
|
16
|
+
this.ids$ = this.documents$.pipe(map(firestoreModelIdsFromDocuments));
|
|
17
|
+
this.refs$ = this.documents$.pipe(map(documentReferencesFromDocuments));
|
|
18
|
+
this.snapshots$ = this.documents$.pipe(switchMap((docs) => getDocumentSnapshots(docs)), shareReplay(1));
|
|
19
|
+
this.data$ = this.snapshots$.pipe(map((snapshots) => getDataFromDocumentSnapshots(snapshots, true)), shareReplay(1));
|
|
20
|
+
this.pageLoadingState$ = pageLoadingStateFromObs(this.data$, false);
|
|
21
|
+
}
|
|
22
|
+
destroy() {
|
|
23
|
+
this._documents.complete();
|
|
24
|
+
this._restart.complete();
|
|
25
|
+
}
|
|
26
|
+
restart() {
|
|
27
|
+
this._restart.next();
|
|
28
|
+
}
|
|
29
|
+
setKeys(keys) {
|
|
30
|
+
this.setDocuments(loadDocumentsForKeys(this.accessor, asArray(keys)));
|
|
31
|
+
}
|
|
32
|
+
setRefs(refs) {
|
|
33
|
+
this.setDocuments(loadDocumentsForDocumentReferences(this.accessor, asArray(refs)));
|
|
34
|
+
}
|
|
35
|
+
setDocuments(docs) {
|
|
36
|
+
this._documents.next(asArray(docs));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export function dbxLimitedFirebaseDocumentLoaderInstance(config) {
|
|
40
|
+
return new DbxLimitedFirebaseDocumentLoaderInstance(config);
|
|
41
|
+
}
|
|
42
|
+
export function dbxLimitedFirebaseDocumentLoaderInstanceWithAccessor(accessor) {
|
|
43
|
+
return new DbxLimitedFirebaseDocumentLoaderInstance({ accessor });
|
|
44
|
+
}
|
|
45
|
+
// MARK: Full DbxFirebaseDocumentLoaderInstance
|
|
46
|
+
export class DbxFirebaseDocumentLoaderInstance extends DbxLimitedFirebaseDocumentLoaderInstance {
|
|
47
|
+
setIds(ids) {
|
|
48
|
+
this.setDocuments(loadDocumentsForIds(this.accessor, asArray(ids)));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export function dbxFirebaseDocumentLoaderInstance(config) {
|
|
52
|
+
return new DbxFirebaseDocumentLoaderInstance(config);
|
|
53
|
+
}
|
|
54
|
+
export function dbxFirebaseDocumentLoaderInstanceWithAccessor(accessor) {
|
|
55
|
+
return new DbxFirebaseDocumentLoaderInstance({ accessor });
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQubG9hZGVyLmluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvbG9hZGVyL2RvY3VtZW50LmxvYWRlci5pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMvRyxPQUFPLEVBQXlDLCtCQUErQixFQUFrRSw4QkFBOEIsRUFBcUIsK0JBQStCLEVBQUUsNEJBQTRCLEVBQUUsb0JBQW9CLEVBQW9DLGtDQUFrQyxFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcGEsT0FBTyxFQUFnQixPQUFPLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBTzFFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdDQUF3QztJQXdCbkQsWUFBNkIsV0FBaUU7UUFBakUsZ0JBQVcsR0FBWCxXQUFXLENBQXNEO1FBdkJyRixhQUFRLEdBQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFFOUIsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFhLFNBQVMsQ0FBQyxDQUFDO1FBRXhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXpDLGVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFDekUsVUFBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUM7UUFDbkUsU0FBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLENBQUM7UUFDakUsVUFBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUM7UUFFbkUsZUFBVSxHQUFzQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDM0UsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBTyxJQUFJLENBQUMsQ0FBQyxFQUNyRCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLFVBQUssR0FBd0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3hFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsNEJBQTRCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQ2pFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sc0JBQWlCLEdBQTRELHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFaEMsQ0FBQztJQUVsRyxPQUFPO1FBQ0wsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsT0FBTyxDQUFDLElBQTRDO1FBQ2xELElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBK0M7UUFDckQsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUE0QjtRQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsd0NBQXdDLENBQXNKLE1BQTREO0lBQ3hRLE9BQU8sSUFBSSx3Q0FBd0MsQ0FBVSxNQUFNLENBQUMsQ0FBQztBQUN2RSxDQUFDO0FBRUQsTUFBTSxVQUFVLG9EQUFvRCxDQUFzSixRQUFXO0lBQ25PLE9BQU8sSUFBSSx3Q0FBd0MsQ0FBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDN0UsQ0FBQztBQUVELCtDQUErQztBQUMvQyxNQUFNLE9BQU8saUNBQW1MLFNBQVEsd0NBQWlEO0lBQ3ZQLE1BQU0sQ0FBQyxHQUEyQztRQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0NBQ0Y7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQXdJLE1BQTREO0lBQ25QLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBVSxNQUFNLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQsTUFBTSxVQUFVLDZDQUE2QyxDQUF3SSxRQUFXO0lBQzlNLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDdEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VMaXN0TG9hZGluZ1N0YXRlLCBmaWx0ZXJNYXliZSwgcGFnZUxvYWRpbmdTdGF0ZUZyb21PYnMgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgbWFwLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIFN1YmplY3QsIHN3aXRjaE1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRG9jdW1lbnREYXRhV2l0aElkLCBEb2N1bWVudFJlZmVyZW5jZSwgZG9jdW1lbnRSZWZlcmVuY2VzRnJvbURvY3VtZW50cywgRG9jdW1lbnRTbmFwc2hvdCwgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZURvY3VtZW50QWNjZXNzb3IsIGZpcmVzdG9yZU1vZGVsSWRzRnJvbURvY3VtZW50cywgRmlyZXN0b3JlTW9kZWxLZXksIGZpcmVzdG9yZU1vZGVsS2V5c0Zyb21Eb2N1bWVudHMsIGdldERhdGFGcm9tRG9jdW1lbnRTbmFwc2hvdHMsIGdldERvY3VtZW50U25hcHNob3RzLCBMaW1pdGVkRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvciwgbG9hZERvY3VtZW50c0ZvckRvY3VtZW50UmVmZXJlbmNlcywgbG9hZERvY3VtZW50c0ZvcklkcywgbG9hZERvY3VtZW50c0ZvcktleXMgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBBcnJheU9yVmFsdWUsIGFzQXJyYXksIERlc3Ryb3lhYmxlLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlciwgRGJ4TGltaXRlZEZpcmViYXNlRG9jdW1lbnRMb2FkZXIgfSBmcm9tICcuL2RvY3VtZW50LmxvYWRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlSW5pdENvbmZpZzxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgQSBleHRlbmRzIExpbWl0ZWRGaXJlc3RvcmVEb2N1bWVudEFjY2Vzc29yPFQsIEQ+ID0gTGltaXRlZEZpcmVzdG9yZURvY3VtZW50QWNjZXNzb3I8VCwgRD4+IHtcbiAgcmVhZG9ubHkgYWNjZXNzb3I6IEE7XG59XG5cbi8qKlxuICogRGJ4TGltaXRlZEZpcmViYXNlRG9jdW1lbnRMb2FkZXIgaW1wbGVtZW50YXRpb24gd2l0aGluIGFuIGluc3RhbmNlLlxuICovXG5leHBvcnQgY2xhc3MgRGJ4TGltaXRlZEZpcmViYXNlRG9jdW1lbnRMb2FkZXJJbnN0YW5jZTxUID0gdW5rbm93biwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIEEgZXh0ZW5kcyBMaW1pdGVkRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvcjxULCBEPiA9IExpbWl0ZWRGaXJlc3RvcmVEb2N1bWVudEFjY2Vzc29yPFQsIEQ+PiBpbXBsZW1lbnRzIERieExpbWl0ZWRGaXJlYmFzZURvY3VtZW50TG9hZGVyPFQ+LCBEZXN0cm95YWJsZSB7XG4gIHJlYWRvbmx5IGFjY2Vzc29yOiBBID0gdGhpcy5faW5pdENvbmZpZy5hY2Nlc3NvcjtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2RvY3VtZW50cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RFtdPj4odW5kZWZpbmVkKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3Jlc3RhcnQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50cyQgPSB0aGlzLl9kb2N1bWVudHMucGlwZShmaWx0ZXJNYXliZSgpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcbiAgcmVhZG9ubHkga2V5cyQgPSB0aGlzLmRvY3VtZW50cyQucGlwZShtYXAoZmlyZXN0b3JlTW9kZWxLZXlzRnJvbURvY3VtZW50cykpO1xuICByZWFkb25seSBpZHMkID0gdGhpcy5kb2N1bWVudHMkLnBpcGUobWFwKGZpcmVzdG9yZU1vZGVsSWRzRnJvbURvY3VtZW50cykpO1xuICByZWFkb25seSByZWZzJCA9IHRoaXMuZG9jdW1lbnRzJC5waXBlKG1hcChkb2N1bWVudFJlZmVyZW5jZXNGcm9tRG9jdW1lbnRzKSk7XG5cbiAgcmVhZG9ubHkgc25hcHNob3RzJDogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PFQ+W10+ID0gdGhpcy5kb2N1bWVudHMkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChkb2NzKSA9PiBnZXREb2N1bWVudFNuYXBzaG90czxULCBEPihkb2NzKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkYXRhJDogT2JzZXJ2YWJsZTxEb2N1bWVudERhdGFXaXRoSWQ8VD5bXT4gPSB0aGlzLnNuYXBzaG90cyQucGlwZShcbiAgICBtYXAoKHNuYXBzaG90cykgPT4gZ2V0RGF0YUZyb21Eb2N1bWVudFNuYXBzaG90cyhzbmFwc2hvdHMsIHRydWUpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBhZ2VMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPFBhZ2VMaXN0TG9hZGluZ1N0YXRlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4+ID0gcGFnZUxvYWRpbmdTdGF0ZUZyb21PYnModGhpcy5kYXRhJCwgZmFsc2UpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2luaXRDb25maWc6IERieEZpcmViYXNlRG9jdW1lbnRMb2FkZXJJbnN0YW5jZUluaXRDb25maWc8VCwgRCwgQT4pIHt9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kb2N1bWVudHMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9yZXN0YXJ0LmNvbXBsZXRlKCk7XG4gIH1cblxuICByZXN0YXJ0KCkge1xuICAgIHRoaXMuX3Jlc3RhcnQubmV4dCgpO1xuICB9XG5cbiAgc2V0S2V5cyhrZXlzOiBNYXliZTxBcnJheU9yVmFsdWU8RmlyZXN0b3JlTW9kZWxLZXk+Pik6IHZvaWQge1xuICAgIHRoaXMuc2V0RG9jdW1lbnRzKGxvYWREb2N1bWVudHNGb3JLZXlzKHRoaXMuYWNjZXNzb3IsIGFzQXJyYXkoa2V5cykpKTtcbiAgfVxuXG4gIHNldFJlZnMocmVmczogTWF5YmU8QXJyYXlPclZhbHVlPERvY3VtZW50UmVmZXJlbmNlPFQ+Pj4pOiB2b2lkIHtcbiAgICB0aGlzLnNldERvY3VtZW50cyhsb2FkRG9jdW1lbnRzRm9yRG9jdW1lbnRSZWZlcmVuY2VzKHRoaXMuYWNjZXNzb3IsIGFzQXJyYXkocmVmcykpKTtcbiAgfVxuXG4gIHNldERvY3VtZW50cyhkb2NzOiBNYXliZTxBcnJheU9yVmFsdWU8RD4+KTogdm9pZCB7XG4gICAgdGhpcy5fZG9jdW1lbnRzLm5leHQoYXNBcnJheShkb2NzKSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRieExpbWl0ZWRGaXJlYmFzZURvY3VtZW50TG9hZGVySW5zdGFuY2U8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIEEgZXh0ZW5kcyBMaW1pdGVkRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvcjxULCBEPiA9IExpbWl0ZWRGaXJlc3RvcmVEb2N1bWVudEFjY2Vzc29yPFQsIEQ+Pihjb25maWc6IERieEZpcmViYXNlRG9jdW1lbnRMb2FkZXJJbnN0YW5jZUluaXRDb25maWc8VCwgRCwgQT4pOiBEYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQsIEE+IHtcbiAgcmV0dXJuIG5ldyBEYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQsIEE+KGNvbmZpZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlV2l0aEFjY2Vzc29yPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBBIGV4dGVuZHMgTGltaXRlZEZpcmVzdG9yZURvY3VtZW50QWNjZXNzb3I8VCwgRD4gPSBMaW1pdGVkRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvcjxULCBEPj4oYWNjZXNzb3I6IEEpOiBEYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQsIEE+IHtcbiAgcmV0dXJuIG5ldyBEYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQsIEE+KHsgYWNjZXNzb3IgfSk7XG59XG5cbi8vIE1BUks6IEZ1bGwgRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQgPSB1bmtub3duLCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgQSBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50QWNjZXNzb3I8VCwgRD4gPSBGaXJlc3RvcmVEb2N1bWVudEFjY2Vzc29yPFQsIEQ+PiBleHRlbmRzIERieExpbWl0ZWRGaXJlYmFzZURvY3VtZW50TG9hZGVySW5zdGFuY2U8VCwgRCwgQT4gaW1wbGVtZW50cyBEYnhGaXJlYmFzZURvY3VtZW50TG9hZGVyPFQ+LCBEZXN0cm95YWJsZSB7XG4gIHNldElkcyhpZHM6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVNb2RlbEtleT4+KTogdm9pZCB7XG4gICAgdGhpcy5zZXREb2N1bWVudHMobG9hZERvY3VtZW50c0Zvcklkcyh0aGlzLmFjY2Vzc29yLCBhc0FycmF5KGlkcykpKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBBIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvcjxULCBEPiA9IEZpcmVzdG9yZURvY3VtZW50QWNjZXNzb3I8VCwgRD4+KGNvbmZpZzogRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlSW5pdENvbmZpZzxULCBELCBBPik6IERieEZpcmViYXNlRG9jdW1lbnRMb2FkZXJJbnN0YW5jZTxULCBELCBBPiB7XG4gIHJldHVybiBuZXcgRGJ4RmlyZWJhc2VEb2N1bWVudExvYWRlckluc3RhbmNlPFQsIEQsIEE+KGNvbmZpZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZURvY3VtZW50TG9hZGVySW5zdGFuY2VXaXRoQWNjZXNzb3I8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIEEgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudEFjY2Vzc29yPFQsIEQ+ID0gRmlyZXN0b3JlRG9jdW1lbnRBY2Nlc3NvcjxULCBEPj4oYWNjZXNzb3I6IEEpOiBEYnhGaXJlYmFzZURvY3VtZW50TG9hZGVySW5zdGFuY2U8VCwgRCwgQT4ge1xuICByZXR1cm4gbmV3IERieEZpcmViYXNlRG9jdW1lbnRMb2FkZXJJbnN0YW5jZTxULCBELCBBPih7IGFjY2Vzc29yIH0pO1xufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQubG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvbG9hZGVyL2RvY3VtZW50LmxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9jdW1lbnREYXRhV2l0aElkLCBGaXJlc3RvcmVNb2RlbEtleSwgRG9jdW1lbnRSZWZlcmVuY2UsIEZpcmVzdG9yZURvY3VtZW50LCBGaXJlc3RvcmVNb2RlbElkLCBEb2N1bWVudFNuYXBzaG90IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgUGFnZUxpc3RMb2FkaW5nU3RhdGUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlLCBBcnJheU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBBYnN0cmFjdCB0eXBlIHRoYXQgbG9hZHMgZG9jdW1lbnQgc25hcHNob3RzIGZyb20ga2V5cywgcmVmcywgb3IgZG9jdW1lbnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERieExpbWl0ZWRGaXJlYmFzZURvY3VtZW50TG9hZGVyPFQgPSB1bmtub3duLCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4ge1xuICAvKipcbiAgICogS2V5cyBvZiB0aGUgZG9jdW1lbnRzXG4gICAqL1xuICByZWFkb25seSBrZXlzJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVNb2RlbEtleVtdPjtcblxuICAvKipcbiAgICogUmVmcyBvZiB0aGUgZG9jdW1lbnRzXG4gICAqL1xuICByZWFkb25seSByZWZzJDogT2JzZXJ2YWJsZTxEb2N1bWVudFJlZmVyZW5jZTxUPltdPjtcblxuICAvKipcbiAgICogSWRzIG9mIHRoZSBkb2N1bWVudHNcbiAgICovXG4gIHJlYWRvbmx5IGlkcyQ6IE9ic2VydmFibGU8RmlyZXN0b3JlTW9kZWxJZFtdPjtcblxuICAvKipcbiAgICogRG9jdW1lbnRzIHRvIGxvYWQuXG4gICAqL1xuICByZWFkb25seSBkb2N1bWVudHMkOiBPYnNlcnZhYmxlPERbXT47XG5cbiAgLyoqXG4gICAqIFNuYXBzaG90cyBvZiB0aGUgZG9jdW1lbnRzXG4gICAqL1xuICByZWFkb25seSBzbmFwc2hvdHMkOiBPYnNlcnZhYmxlPERvY3VtZW50U25hcHNob3Q8VD5bXT47XG5cbiAgLyoqXG4gICAqIERhdGEgZnJvbSB0aGUgZG9jdW1lbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YSQ6IE9ic2VydmFibGU8RG9jdW1lbnREYXRhV2l0aElkPFQ+W10+O1xuXG4gIC8qKlxuICAgKiBMb2FkaW5nIHN0YXRlIGZvciB0aGUgZG9jdW1lbnQgZGF0YS5cbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPFBhZ2VMaXN0TG9hZGluZ1N0YXRlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4+O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBrZXlzIG9mIHRoZSBtb2RlbHMgdG8gbG9hZC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnN0cmFpbnRzXG4gICAqL1xuICBzZXRLZXlzKGtleXM6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVNb2RlbEtleT4+KTogdm9pZDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZG9jdW1lbnQgcmVmZXJlbmNlcyB0byBsb2FkLlxuICAgKlxuICAgKiBAcGFyYW0gY29uc3RyYWludHNcbiAgICovXG4gIHNldFJlZnMocmVmczogTWF5YmU8QXJyYXlPclZhbHVlPERvY3VtZW50UmVmZXJlbmNlPFQ+Pj4pOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkb2N1bWVudHMgdG8gbG9hZCBmcm9tLlxuICAgKlxuICAgKiBAcGFyYW0gY29uc3RyYWludHNcbiAgICovXG4gIHNldERvY3VtZW50cyhkb2NzOiBNYXliZTxBcnJheU9yVmFsdWU8RD4+KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50TG9hZGVyPFQgPSB1bmtub3duLCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4gZXh0ZW5kcyBEYnhMaW1pdGVkRmlyZWJhc2VEb2N1bWVudExvYWRlcjxULCBEPiB7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpZHMgb2YgdGhlIG1vZGVscyB0byBsb2FkLlxuICAgKlxuICAgKiBAcGFyYW0gY29uc3RyYWludHNcbiAgICovXG4gIHNldElkcyhpZHM6IE1heWJlPEFycmF5T3JWYWx1ZTxGaXJlc3RvcmVNb2RlbElkPj4pOiB2b2lkO1xufVxuIl19
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export * from './collection.loader.instance';
|
|
2
2
|
export * from './collection.loader';
|
|
3
|
-
|
|
3
|
+
export * from './document.loader.instance';
|
|
4
|
+
export * from './document.loader';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9sb2FkZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29sbGVjdGlvbi5sb2FkZXIuaW5zdGFuY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2xsZWN0aW9uLmxvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LmxvYWRlci5pbnN0YW5jZSc7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LmxvYWRlcic7XG4iXX0=
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BehaviorSubject, map, shareReplay, of, switchMap } from 'rxjs';
|
|
2
2
|
import { Directive, Host, Input } from '@angular/core';
|
|
3
|
-
import { DbxRouterService, AbstractSubscriptionDirective } from '@dereekb/dbx-core';
|
|
3
|
+
import { DbxRouterService, AbstractSubscriptionDirective, DbxRouteParamReaderInstance, DbxRouteParamDefaultRedirectInstance } from '@dereekb/dbx-core';
|
|
4
4
|
import { DbxFirebaseDocumentStoreDirective } from './store.document.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "./store.document.directive";
|
|
7
7
|
import * as i2 from "@dereekb/dbx-core";
|
|
8
8
|
export const DBX_FIREBASE_ROUTER_SYNC_DEFAULT_ID_PARAM_KEY = 'id';
|
|
9
|
+
export const DBX_FIREBASE_ROUTER_SYNC_USE_DEFAULT_PARAM_VALUE = '0';
|
|
9
10
|
/**
|
|
10
11
|
* Used for synchronizing the document store id to the param of the route.
|
|
11
12
|
*/
|
|
@@ -14,29 +15,58 @@ export class DbxFirebaseDocumentStoreRouteIdDirective extends AbstractSubscripti
|
|
|
14
15
|
super();
|
|
15
16
|
this.dbxFirebaseDocumentStoreDirective = dbxFirebaseDocumentStoreDirective;
|
|
16
17
|
this.dbxRouterService = dbxRouterService;
|
|
17
|
-
this.
|
|
18
|
-
this.
|
|
19
|
-
this.
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
this._paramReader = new DbxRouteParamReaderInstance(this.dbxRouterService, DBX_FIREBASE_ROUTER_SYNC_DEFAULT_ID_PARAM_KEY);
|
|
19
|
+
this._paramRedirect = new DbxRouteParamDefaultRedirectInstance(this._paramReader);
|
|
20
|
+
this._useDefaultParam = new BehaviorSubject(DBX_FIREBASE_ROUTER_SYNC_USE_DEFAULT_PARAM_VALUE);
|
|
21
|
+
this._useDefaultParam$ = this._useDefaultParam.pipe(map((x) => {
|
|
22
|
+
let result;
|
|
23
|
+
if (typeof x === 'string') {
|
|
24
|
+
result = (value) => of(value === x);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
result = x;
|
|
28
|
+
}
|
|
29
|
+
return result;
|
|
30
|
+
}), shareReplay(1));
|
|
31
|
+
this.idParamKey$ = this._paramReader.paramKey$;
|
|
32
|
+
this.idFromParams$ = this._paramReader.paramValue$;
|
|
33
|
+
this.id$ = this._paramReader.value$;
|
|
22
34
|
}
|
|
23
35
|
ngOnInit() {
|
|
24
36
|
this.sub = this.dbxFirebaseDocumentStoreDirective.store.setId(this.idFromParams$);
|
|
37
|
+
this._paramRedirect.setUseDefaultFilter((value) => {
|
|
38
|
+
return this._useDefaultParam$.pipe(switchMap((x) => x(value)));
|
|
39
|
+
});
|
|
40
|
+
this._paramRedirect.init();
|
|
25
41
|
}
|
|
26
42
|
ngOnDestroy() {
|
|
27
43
|
super.ngOnDestroy();
|
|
28
|
-
this.
|
|
44
|
+
this._paramReader.destroy();
|
|
45
|
+
this._paramRedirect.destroy();
|
|
46
|
+
this._useDefaultParam.complete();
|
|
29
47
|
}
|
|
30
48
|
// MARK: Input
|
|
31
49
|
get idParam() {
|
|
32
|
-
return this.
|
|
50
|
+
return this._paramReader.paramKey;
|
|
33
51
|
}
|
|
34
52
|
set idParam(idParam) {
|
|
35
|
-
this.
|
|
53
|
+
this._paramReader.paramKey = idParam;
|
|
54
|
+
}
|
|
55
|
+
set dbxFirebaseDocumentStoreRouteIdDefault(defaultValue) {
|
|
56
|
+
this._paramReader.setDefaultValue(defaultValue);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Whether or not to enable the redirection. Is enabled by default.
|
|
60
|
+
*/
|
|
61
|
+
set dbxFirebaseDocumentStoreRouteIdDefaultRedirect(redirect) {
|
|
62
|
+
this._paramRedirect.enabled = redirect !== false; // true by default
|
|
63
|
+
}
|
|
64
|
+
set dbxFirebaseDocumentStoreRouteIdDefaultDecision(decider) {
|
|
65
|
+
this._useDefaultParam.next(decider);
|
|
36
66
|
}
|
|
37
67
|
}
|
|
38
68
|
DbxFirebaseDocumentStoreRouteIdDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDocumentStoreRouteIdDirective, deps: [{ token: i1.DbxFirebaseDocumentStoreDirective, host: true }, { token: i2.DbxRouterService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
-
DbxFirebaseDocumentStoreRouteIdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseDocumentStoreRouteIdDirective, selector: "[dbxFirebaseDocumentStoreRouteId]", inputs: { idParam: ["dbxFirebaseDocumentStoreRouteId", "idParam"] }, usesInheritance: true, ngImport: i0 });
|
|
69
|
+
DbxFirebaseDocumentStoreRouteIdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseDocumentStoreRouteIdDirective, selector: "[dbxFirebaseDocumentStoreRouteId]", inputs: { idParam: ["dbxFirebaseDocumentStoreRouteId", "idParam"], dbxFirebaseDocumentStoreRouteIdDefault: "dbxFirebaseDocumentStoreRouteIdDefault", dbxFirebaseDocumentStoreRouteIdDefaultRedirect: "dbxFirebaseDocumentStoreRouteIdDefaultRedirect", dbxFirebaseDocumentStoreRouteIdDefaultDecision: "dbxFirebaseDocumentStoreRouteIdDefaultDecision" }, usesInheritance: true, ngImport: i0 });
|
|
40
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDocumentStoreRouteIdDirective, decorators: [{
|
|
41
71
|
type: Directive,
|
|
42
72
|
args: [{
|
|
@@ -47,5 +77,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
47
77
|
}] }, { type: i2.DbxRouterService }]; }, propDecorators: { idParam: [{
|
|
48
78
|
type: Input,
|
|
49
79
|
args: ['dbxFirebaseDocumentStoreRouteId']
|
|
80
|
+
}], dbxFirebaseDocumentStoreRouteIdDefault: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], dbxFirebaseDocumentStoreRouteIdDefaultRedirect: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], dbxFirebaseDocumentStoreRouteIdDefaultDecision: [{
|
|
85
|
+
type: Input
|
|
50
86
|
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQucm91dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLmRvY3VtZW50LnJvdXRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGVBQWUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEYsT0FBTyxFQUFhLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSw2QkFBNkIsRUFBRSwyQkFBMkIsRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZKLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBSS9FLE1BQU0sQ0FBQyxNQUFNLDZDQUE2QyxHQUFHLElBQUksQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxnREFBZ0QsR0FBRyxHQUFHLENBQUM7QUFFcEU7O0dBRUc7QUFJSCxNQUFNLE9BQU8sd0NBQXNELFNBQVEsNkJBQTZCO0lBdUJ0RyxZQUE2QixpQ0FBdUUsRUFBVyxnQkFBa0M7UUFDL0ksS0FBSyxFQUFFLENBQUM7UUFEbUIsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFzQztRQUFXLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF0QnpJLGlCQUFZLEdBQUcsSUFBSSwyQkFBMkIsQ0FBVyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsNkNBQTZDLENBQUMsQ0FBQztRQUMvSCxtQkFBYyxHQUFHLElBQUksb0NBQW9DLENBQVcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZGLHFCQUFnQixHQUFHLElBQUksZUFBZSxDQUFzRCxnREFBZ0QsQ0FBQyxDQUFDO1FBQzlJLHNCQUFpQixHQUEyRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUM1RyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNSLElBQUksTUFBa0QsQ0FBQztZQUV2RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRTtnQkFDekIsTUFBTSxHQUFHLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQzthQUN0RDtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsQ0FBQyxDQUFDO2FBQ1o7WUFFRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDMUMsa0JBQWEsR0FBZ0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7UUFDM0UsUUFBRyxHQUFnQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQztJQUlyRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxLQUFvQixFQUFFLEVBQUU7WUFDL0QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFlO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFDSSxzQ0FBc0MsQ0FBQyxZQUFvRDtRQUM3RixJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNJLDhDQUE4QyxDQUFDLFFBQTZCO1FBQzlFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLFFBQVEsS0FBSyxLQUFLLENBQUMsQ0FBQyxrQkFBa0I7SUFDdEUsQ0FBQztJQUVELElBQ0ksOENBQThDLENBQUMsT0FBNEQ7UUFDN0csSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDOztxSUFwRVUsd0NBQXdDO3lIQUF4Qyx3Q0FBd0M7MkZBQXhDLHdDQUF3QztrQkFIcEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUNBQW1DO2lCQUM5Qzs7MEJBd0JjLElBQUk7MkVBcUJiLE9BQU87c0JBRFYsS0FBSzt1QkFBQyxpQ0FBaUM7Z0JBVXBDLHNDQUFzQztzQkFEekMsS0FBSztnQkFTRiw4Q0FBOEM7c0JBRGpELEtBQUs7Z0JBTUYsOENBQThDO3NCQURqRCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0LCBtYXAsIHNoYXJlUmVwbGF5LCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPbkRlc3Ryb3ksIERpcmVjdGl2ZSwgSG9zdCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4Um91dGVyU2VydmljZSwgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUsIERieFJvdXRlUGFyYW1SZWFkZXJJbnN0YW5jZSwgRGJ4Um91dGVQYXJhbURlZmF1bHRSZWRpcmVjdEluc3RhbmNlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi9zdG9yZS5kb2N1bWVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTWF5YmUsIE1vZGVsS2V5IH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBNYXliZU9ic2VydmFibGVPclZhbHVlR2V0dGVyLCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbiB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG5leHBvcnQgY29uc3QgREJYX0ZJUkVCQVNFX1JPVVRFUl9TWU5DX0RFRkFVTFRfSURfUEFSQU1fS0VZID0gJ2lkJztcbmV4cG9ydCBjb25zdCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfVVNFX0RFRkFVTFRfUEFSQU1fVkFMVUUgPSAnMCc7XG5cbi8qKlxuICogVXNlZCBmb3Igc3luY2hyb25pemluZyB0aGUgZG9jdW1lbnQgc3RvcmUgaWQgdG8gdGhlIHBhcmFtIG9mIHRoZSByb3V0ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZpcmViYXNlRG9jdW1lbnRTdG9yZVJvdXRlSWRdJ1xufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkRGlyZWN0aXZlPFQgPSB1bmtub3duPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9wYXJhbVJlYWRlciA9IG5ldyBEYnhSb3V0ZVBhcmFtUmVhZGVySW5zdGFuY2U8TW9kZWxLZXk+KHRoaXMuZGJ4Um91dGVyU2VydmljZSwgREJYX0ZJUkVCQVNFX1JPVVRFUl9TWU5DX0RFRkFVTFRfSURfUEFSQU1fS0VZKTtcbiAgcHJpdmF0ZSBfcGFyYW1SZWRpcmVjdCA9IG5ldyBEYnhSb3V0ZVBhcmFtRGVmYXVsdFJlZGlyZWN0SW5zdGFuY2U8TW9kZWxLZXk+KHRoaXMuX3BhcmFtUmVhZGVyKTtcbiAgcHJpdmF0ZSBfdXNlRGVmYXVsdFBhcmFtID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbjxNb2RlbEtleT4+KERCWF9GSVJFQkFTRV9ST1VURVJfU1lOQ19VU0VfREVGQVVMVF9QQVJBTV9WQUxVRSk7XG4gIHByaXZhdGUgX3VzZURlZmF1bHRQYXJhbSQ6IE9ic2VydmFibGU8U3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+PiA9IHRoaXMuX3VzZURlZmF1bHRQYXJhbS5waXBlKFxuICAgIG1hcCgoeCkgPT4ge1xuICAgICAgbGV0IHJlc3VsdDogU3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+O1xuXG4gICAgICBpZiAodHlwZW9mIHggPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJlc3VsdCA9ICh2YWx1ZTogTWF5YmU8TW9kZWxLZXk+KSA9PiBvZih2YWx1ZSA9PT0geCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSB4O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaWRQYXJhbUtleSQgPSB0aGlzLl9wYXJhbVJlYWRlci5wYXJhbUtleSQ7XG4gIHJlYWRvbmx5IGlkRnJvbVBhcmFtcyQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IHRoaXMuX3BhcmFtUmVhZGVyLnBhcmFtVmFsdWUkO1xuICByZWFkb25seSBpZCQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IHRoaXMuX3BhcmFtUmVhZGVyLnZhbHVlJDtcblxuICBjb25zdHJ1Y3RvcihASG9zdCgpIHJlYWRvbmx5IGRieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTogRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFQ+LCByZWFkb25seSBkYnhSb3V0ZXJTZXJ2aWNlOiBEYnhSb3V0ZXJTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5kYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUuc3RvcmUuc2V0SWQodGhpcy5pZEZyb21QYXJhbXMkKTtcbiAgICB0aGlzLl9wYXJhbVJlZGlyZWN0LnNldFVzZURlZmF1bHRGaWx0ZXIoKHZhbHVlOiBNYXliZTxzdHJpbmc+KSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fdXNlRGVmYXVsdFBhcmFtJC5waXBlKHN3aXRjaE1hcCgoeCkgPT4geCh2YWx1ZSkpKTtcbiAgICB9KTtcbiAgICB0aGlzLl9wYXJhbVJlZGlyZWN0LmluaXQoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fcGFyYW1SZWFkZXIuZGVzdHJveSgpO1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3QuZGVzdHJveSgpO1xuICAgIHRoaXMuX3VzZURlZmF1bHRQYXJhbS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLy8gTUFSSzogSW5wdXRcbiAgQElucHV0KCdkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkJylcbiAgZ2V0IGlkUGFyYW0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmFtUmVhZGVyLnBhcmFtS2V5O1xuICB9XG5cbiAgc2V0IGlkUGFyYW0oaWRQYXJhbTogc3RyaW5nKSB7XG4gICAgdGhpcy5fcGFyYW1SZWFkZXIucGFyYW1LZXkgPSBpZFBhcmFtO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGRieEZpcmViYXNlRG9jdW1lbnRTdG9yZVJvdXRlSWREZWZhdWx0KGRlZmF1bHRWYWx1ZTogTWF5YmVPYnNlcnZhYmxlT3JWYWx1ZUdldHRlcjxNb2RlbEtleT4pIHtcbiAgICB0aGlzLl9wYXJhbVJlYWRlci5zZXREZWZhdWx0VmFsdWUoZGVmYXVsdFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBlbmFibGUgdGhlIHJlZGlyZWN0aW9uLiBJcyBlbmFibGVkIGJ5IGRlZmF1bHQuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgZGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZERlZmF1bHRSZWRpcmVjdChyZWRpcmVjdDogTWF5YmU8Ym9vbGVhbj4gfCAnJykge1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3QuZW5hYmxlZCA9IHJlZGlyZWN0ICE9PSBmYWxzZTsgLy8gdHJ1ZSBieSBkZWZhdWx0XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgZGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZERlZmF1bHREZWNpc2lvbihkZWNpZGVyOiBzdHJpbmcgfCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbjxNb2RlbEtleT4pIHtcbiAgICB0aGlzLl91c2VEZWZhdWx0UGFyYW0ubmV4dChkZWNpZGVyKTtcbiAgfVxufVxuIl19
|