@alfresco/aca-content 4.4.0-7758235643 → 4.4.0-7785596177
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/components/common/user-info/user-info.component.mjs +15 -64
- package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +11 -4
- package/esm2020/lib/components/sidenav/user-menu/user-menu.component.mjs +15 -57
- package/esm2020/lib/store/reducers/app.reducer.mjs +4 -2
- package/fesm2015/alfresco-aca-content.mjs +72 -100
- package/fesm2015/alfresco-aca-content.mjs.map +1 -1
- package/fesm2020/alfresco-aca-content.mjs +26 -100
- package/fesm2020/alfresco-aca-content.mjs.map +1 -1
- package/lib/components/common/user-info/user-info.component.d.ts +3 -52
- package/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.d.ts +1 -0
- package/lib/components/sidenav/user-menu/user-menu.component.d.ts +2 -23
- package/package.json +1 -1
|
@@ -21,77 +21,28 @@
|
|
|
21
21
|
* You should have received a copy of the GNU Lesser General Public License
|
|
22
22
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
23
|
*/
|
|
24
|
-
import {
|
|
25
|
-
import { Component, ViewEncapsulation } from '@angular/core';
|
|
26
|
-
import { of } from 'rxjs';
|
|
27
|
-
import { PeopleContentService } from '@alfresco/adf-content-services';
|
|
28
|
-
import { map } from 'rxjs/operators';
|
|
24
|
+
import { Component, ViewEncapsulation, inject } from '@angular/core';
|
|
29
25
|
import { CommonModule } from '@angular/common';
|
|
30
26
|
import { RouterModule } from '@angular/router';
|
|
31
27
|
import { MatMenuModule } from '@angular/material/menu';
|
|
32
28
|
import { TranslateModule } from '@ngx-translate/core';
|
|
29
|
+
import { getUserProfile } from '@alfresco/aca-shared/store';
|
|
30
|
+
import { Store } from '@ngrx/store';
|
|
33
31
|
import * as i0 from "@angular/core";
|
|
34
|
-
import * as i1 from "@
|
|
35
|
-
import * as i2 from "@
|
|
36
|
-
import * as i3 from "@angular/
|
|
37
|
-
import * as i4 from "@
|
|
38
|
-
import * as i5 from "@angular/material/menu";
|
|
39
|
-
import * as i6 from "@ngx-translate/core";
|
|
32
|
+
import * as i1 from "@angular/common";
|
|
33
|
+
import * as i2 from "@angular/router";
|
|
34
|
+
import * as i3 from "@angular/material/menu";
|
|
35
|
+
import * as i4 from "@ngx-translate/core";
|
|
40
36
|
export class UserInfoComponent {
|
|
41
|
-
constructor(
|
|
42
|
-
this.
|
|
43
|
-
this.
|
|
44
|
-
this.authService = authService;
|
|
45
|
-
}
|
|
46
|
-
ngOnInit() {
|
|
47
|
-
this.getUserInfo();
|
|
48
|
-
}
|
|
49
|
-
getUserInfo() {
|
|
50
|
-
if (this.authService.isOauth()) {
|
|
51
|
-
this.loadIdentityUserInfo();
|
|
52
|
-
if (this.authService.isECMProvider() && this.authService.isEcmLoggedIn()) {
|
|
53
|
-
this.loadEcmUserInfo();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
else if (this.isEcmLoggedIn()) {
|
|
57
|
-
this.loadEcmUserInfo();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
get isLoggedIn() {
|
|
61
|
-
if (this.authService.isKerberosEnabled()) {
|
|
62
|
-
return true;
|
|
63
|
-
}
|
|
64
|
-
return this.authService.isLoggedIn();
|
|
65
|
-
}
|
|
66
|
-
loadEcmUserInfo() {
|
|
67
|
-
this.displayName$ = this.peopleContentService.getCurrentUserInfo().pipe(map((model) => this.parseDisplayName(model)));
|
|
68
|
-
}
|
|
69
|
-
loadIdentityUserInfo() {
|
|
70
|
-
this.displayName$ = of(this.identityUserService.getCurrentUserInfo()).pipe(map((model) => this.parseDisplayName(model)));
|
|
71
|
-
}
|
|
72
|
-
parseDisplayName(model) {
|
|
73
|
-
const result = { firstName: '', initials: '', email: '' };
|
|
74
|
-
if (model.firstName) {
|
|
75
|
-
result.firstName = model.firstName;
|
|
76
|
-
result.initials = model.firstName.charAt(0).toUpperCase();
|
|
77
|
-
}
|
|
78
|
-
if (model.lastName) {
|
|
79
|
-
result.firstName += ' ' + model.lastName;
|
|
80
|
-
result.initials += model.lastName.charAt(0).toUpperCase();
|
|
81
|
-
}
|
|
82
|
-
if (model.email) {
|
|
83
|
-
result.email = `${model.email}`;
|
|
84
|
-
}
|
|
85
|
-
return result;
|
|
86
|
-
}
|
|
87
|
-
isEcmLoggedIn() {
|
|
88
|
-
return this.authService.isEcmLoggedIn() || (this.authService.isECMProvider() && this.authService.isKerberosEnabled());
|
|
37
|
+
constructor() {
|
|
38
|
+
this.store = inject((Store));
|
|
39
|
+
this.user$ = this.store.select(getUserProfile);
|
|
89
40
|
}
|
|
90
41
|
}
|
|
91
|
-
UserInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserInfoComponent, deps: [
|
|
92
|
-
UserInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: UserInfoComponent, isStandalone: true, selector: "app-user-info", ngImport: i0, template: "<div mat-menu-item class=\"aca-user-info\" [routerLink]=\"['/profile']\" title=\"{{'APP.TOOLTIPS.MY_PROFILE' | translate}}\">\n <button class=\"aca-user-info-button\">\n
|
|
42
|
+
UserInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
UserInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: UserInfoComponent, isStandalone: true, selector: "app-user-info", ngImport: i0, template: "<div mat-menu-item class=\"aca-user-info\" [routerLink]=\"['/profile']\" title=\"{{ 'APP.TOOLTIPS.MY_PROFILE' | translate }}\">\n <ng-container *ngIf=\"user$ | async as user\">\n <button class=\"aca-user-info-button\">\n <div>{{ user.initials || 'U' }}</div>\n </button>\n <div class=\"aca-user-info-details\">\n <div>{{ user.userName }}</div>\n <div>{{ user.email }}</div>\n </div>\n </ng-container>\n</div>\n", styles: [".aca-user-info{display:flex;height:66px;align-items:center}.aca-user-info-button{border-radius:90%;height:32px;margin-right:0;min-width:32px;padding:0;font-weight:700;line-height:32px;text-align:center;vertical-align:middle;background:var(--theme-about-panel-border-color);color:var(--theme-selected-text-color);border:none}.aca-user-info-details{line-height:24px;margin-left:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
93
44
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserInfoComponent, decorators: [{
|
|
94
45
|
type: Component,
|
|
95
|
-
args: [{ standalone: true, imports: [CommonModule, RouterModule, MatMenuModule, TranslateModule], selector: 'app-user-info', encapsulation: ViewEncapsulation.None, template: "<div mat-menu-item class=\"aca-user-info\" [routerLink]=\"['/profile']\" title=\"{{'APP.TOOLTIPS.MY_PROFILE' | translate}}\">\n <button class=\"aca-user-info-button\">\n
|
|
96
|
-
}]
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
args: [{ standalone: true, imports: [CommonModule, RouterModule, MatMenuModule, TranslateModule], selector: 'app-user-info', encapsulation: ViewEncapsulation.None, template: "<div mat-menu-item class=\"aca-user-info\" [routerLink]=\"['/profile']\" title=\"{{ 'APP.TOOLTIPS.MY_PROFILE' | translate }}\">\n <ng-container *ngIf=\"user$ | async as user\">\n <button class=\"aca-user-info-button\">\n <div>{{ user.initials || 'U' }}</div>\n </button>\n <div class=\"aca-user-info-details\">\n <div>{{ user.userName }}</div>\n <div>{{ user.email }}</div>\n </div>\n </ng-container>\n</div>\n", styles: [".aca-user-info{display:flex;height:66px;align-items:center}.aca-user-info-button{border-radius:90%;height:32px;margin-right:0;min-width:32px;padding:0;font-weight:700;line-height:32px;text-align:center;vertical-align:middle;background:var(--theme-about-panel-border-color);color:var(--theme-selected-text-color);border:none}.aca-user-info-details{line-height:24px;margin-left:10px}\n"] }]
|
|
47
|
+
}] });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1pbmZvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9jb21tb24vdXNlci1pbmZvL3VzZXItaW5mby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL2NvbXBvbmVudHMvY29tbW9uL3VzZXItaW5mby91c2VyLWluZm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQVVwQyxNQUFNLE9BQU8saUJBQWlCO0lBUjlCO1FBU1UsVUFBSyxHQUFHLE1BQU0sQ0FBa0IsQ0FBQSxLQUFlLENBQUEsQ0FBQyxDQUFDO1FBQ3pELFVBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUMzQzs7OEdBSFksaUJBQWlCO2tHQUFqQixpQkFBaUIseUVDeEM5Qix5YkFXQSx3YkR1QlksWUFBWSx1TEFBRSxZQUFZLDhRQUFFLGFBQWEsa0xBQUUsZUFBZTsyRkFNekQsaUJBQWlCO2tCQVI3QixTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxZQUMzRCxlQUFlLGlCQUdWLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjMgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQXBwU3RvcmUsIGdldFVzZXJQcm9maWxlIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJNb2R1bGUsIE1hdE1lbnVNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gIHNlbGVjdG9yOiAnYXBwLXVzZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWluZm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91c2VyLWluZm8uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBVc2VySW5mb0NvbXBvbmVudCB7XG4gIHByaXZhdGUgc3RvcmUgPSBpbmplY3Q8U3RvcmU8QXBwU3RvcmU+PihTdG9yZTxBcHBTdG9yZT4pO1xuICB1c2VyJCA9IHRoaXMuc3RvcmUuc2VsZWN0KGdldFVzZXJQcm9maWxlKTtcbn1cbiIsIjxkaXYgbWF0LW1lbnUtaXRlbSBjbGFzcz1cImFjYS11c2VyLWluZm9cIiBbcm91dGVyTGlua109XCJbJy9wcm9maWxlJ11cIiB0aXRsZT1cInt7ICdBUFAuVE9PTFRJUFMuTVlfUFJPRklMRScgfCB0cmFuc2xhdGUgfX1cIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVzZXIkIHwgYXN5bmMgYXMgdXNlclwiPlxuICAgIDxidXR0b24gY2xhc3M9XCJhY2EtdXNlci1pbmZvLWJ1dHRvblwiPlxuICAgICAgPGRpdj57eyB1c2VyLmluaXRpYWxzIHx8ICdVJyB9fTwvZGl2PlxuICAgIDwvYnV0dG9uPlxuICAgIDxkaXYgY2xhc3M9XCJhY2EtdXNlci1pbmZvLWRldGFpbHNcIj5cbiAgICAgIDxkaXY+e3sgdXNlci51c2VyTmFtZSB9fTwvZGl2PlxuICAgICAgPGRpdj57eyB1c2VyLmVtYWlsIH19PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs
CHANGED
|
@@ -25,7 +25,7 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
|
25
25
|
import { UntypedFormGroup, UntypedFormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
26
26
|
import { QueriesApi, SiteEntry } from '@alfresco/js-api';
|
|
27
27
|
import { Store } from '@ngrx/store';
|
|
28
|
-
import { SnackbarActionTypes, UpdateLibraryAction } from '@alfresco/aca-shared/store';
|
|
28
|
+
import { SnackbarActionTypes, UpdateLibraryAction, isAdmin } from '@alfresco/aca-shared/store';
|
|
29
29
|
import { debounceTime, filter, mergeMap, takeUntil } from 'rxjs/operators';
|
|
30
30
|
import { AlfrescoApiService } from '@alfresco/adf-core';
|
|
31
31
|
import { from, Subject } from 'rxjs';
|
|
@@ -78,6 +78,7 @@ export class LibraryMetadataFormComponent {
|
|
|
78
78
|
});
|
|
79
79
|
this.matcher = new InstantErrorStateMatcher();
|
|
80
80
|
this.canUpdateLibrary = false;
|
|
81
|
+
this.isAdmin = false;
|
|
81
82
|
this.onDestroy$ = new Subject();
|
|
82
83
|
}
|
|
83
84
|
get queriesApi() {
|
|
@@ -129,7 +130,13 @@ export class LibraryMetadataFormComponent {
|
|
|
129
130
|
this.libraryTitleExists = false;
|
|
130
131
|
}
|
|
131
132
|
});
|
|
132
|
-
this.
|
|
133
|
+
this.store
|
|
134
|
+
.select(isAdmin)
|
|
135
|
+
.pipe(takeUntil(this.onDestroy$))
|
|
136
|
+
.subscribe((value) => {
|
|
137
|
+
this.isAdmin = value;
|
|
138
|
+
});
|
|
139
|
+
this.canUpdateLibrary = this.node?.entry?.role === 'SiteManager' || this.isAdmin;
|
|
133
140
|
this.handleUpdatingEvent(SnackbarActionTypes.Info, 'LIBRARY.SUCCESS.LIBRARY_UPDATED', () => Object.assign(this.node.entry, this.form.value));
|
|
134
141
|
this.handleUpdatingEvent(SnackbarActionTypes.Error, 'LIBRARY.ERRORS.LIBRARY_UPDATE_ERROR', () => this.form.markAsDirty());
|
|
135
142
|
}
|
|
@@ -139,7 +146,7 @@ export class LibraryMetadataFormComponent {
|
|
|
139
146
|
}
|
|
140
147
|
ngOnChanges() {
|
|
141
148
|
this.updateForm(this.node);
|
|
142
|
-
this.canUpdateLibrary = this.node?.entry?.role === 'SiteManager';
|
|
149
|
+
this.canUpdateLibrary = this.node?.entry?.role === 'SiteManager' || this.isAdmin;
|
|
143
150
|
}
|
|
144
151
|
update() {
|
|
145
152
|
if (this.canUpdateLibrary && this.form.valid) {
|
|
@@ -196,4 +203,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
196
203
|
}], ctorParameters: function () { return [{ type: i1.AlfrescoApiService }, { type: i2.Store }, { type: i3.Actions }]; }, propDecorators: { node: [{
|
|
197
204
|
type: Input
|
|
198
205
|
}] } });
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS1tZXRhZGF0YS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9pbmZvLWRyYXdlci9saWJyYXJ5LW1ldGFkYXRhLXRhYi9saWJyYXJ5LW1ldGFkYXRhLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9jb21wb25lbnRzL2luZm8tZHJhd2VyL2xpYnJhcnktbWV0YWRhdGEtdGFiL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFnQyxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixVQUFVLEVBR1YsV0FBVyxFQUNYLG1CQUFtQixFQUdwQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBR0wsbUJBQW1CLEVBR25CLG1CQUFtQixFQUNwQixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQWMsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQXFCLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBRWhELE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsWUFBWSxDQUFDLE9BQWtDLEVBQUUsSUFBd0M7UUFDdkYsTUFBTSxXQUFXLEdBQUcsSUFBSSxFQUFFLFNBQVMsQ0FBQztRQUNwQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLE9BQU8sRUFBRSxPQUFPLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0NBQ0Y7QUFzQkQsTUFBTSxPQUFPLDRCQUE0QjtJQW9DdkMsWUFBb0Isa0JBQXNDLEVBQVksS0FBc0IsRUFBVSxRQUFpQjtRQUFuRyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVksVUFBSyxHQUFMLEtBQUssQ0FBaUI7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBcEJ2SCx1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0IsZ0JBQVcsR0FBRztZQUNaLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsMkJBQTJCLEVBQUU7WUFDdkQsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSw0QkFBNEIsRUFBRTtZQUN6RCxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLDhCQUE4QixFQUFFO1NBQzlELENBQUM7UUFFRixTQUFJLEdBQXFCLElBQUksZ0JBQWdCLENBQUM7WUFDNUMsRUFBRSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN6RCxLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUN0SCxXQUFXLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMvRSxVQUFVLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztTQUM5RCxDQUFDLENBQUM7UUFFSCxZQUFPLEdBQUcsSUFBSSx3QkFBd0IsRUFBRSxDQUFDO1FBQ3pDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUV6QixlQUFVLEdBQXFCLElBQUksT0FBTyxFQUFXLENBQUM7SUFFb0UsQ0FBQztJQWhDM0gsSUFBSSxVQUFVO1FBQ1osSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSx3QkFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUM7SUFDeEMsQ0FBQztJQTJCRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDaEIsU0FBUyxFQUFFLEtBQUs7YUFDakIsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO2dCQUNmLFNBQVMsRUFBRSxLQUFLO2FBQ2pCLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNqQztJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWE7YUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDaEMsU0FBUyxDQUNSLEdBQUcsRUFBRSxDQUNILENBQUMsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSztZQUN0RSxDQUFDLENBQUMsNEJBQTRCO1lBQzlCLENBQUMsQ0FBQywwQ0FBMEMsQ0FBQyxDQUNsRCxDQUFDO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWTthQUNyQyxJQUFJLENBQ0gsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixRQUFRLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUNuRCxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUMzQjthQUNBLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBRWhDLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtvQkFDNUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztpQkFDakM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7aUJBQ3JGO2FBQ0Y7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksS0FBSyxhQUFhLENBQUM7UUFDakUsSUFBSSxDQUFDLG1CQUFtQixDQUFxQixtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsaUNBQWlDLEVBQUUsR0FBRyxFQUFFLENBQzdHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FDaEQsQ0FBQztRQUNGLElBQUksQ0FBQyxtQkFBbUIsQ0FBc0IsbUJBQW1CLENBQUMsS0FBSyxFQUFFLHFDQUFxQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNqSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxLQUFLLGFBQWEsQ0FBQztJQUNuRSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLElBQUksbUJBQW1CLENBQUM7Z0JBQ3RCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO2dCQUNsQixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTthQUNwQyxDQUFDLENBQ0gsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFlO1FBQ2hDLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDakIsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ1osS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxJQUFJLEVBQUU7WUFDcEMsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxZQUFvQjtRQUM3QyxPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsVUFBVTthQUNaLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDOUIsUUFBUSxFQUFFLENBQUM7WUFDWCxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7U0FDbEIsQ0FBQzthQUNELEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUM1QyxDQUFDO0lBQ0osQ0FBQztJQUVPLG1CQUFtQixDQUEyQixVQUErQixFQUFFLE9BQWUsRUFBRSxNQUFrQjtRQUN4SCxJQUFJLENBQUMsUUFBUTthQUNWLElBQUksQ0FDSCxNQUFNLENBQUksVUFBVSxDQUFDLEVBQ3JCLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUMsRUFDOUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FDM0I7YUFDQSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQTRCO1FBQ3BELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2hGLENBQUM7O3lIQXRKVSw0QkFBNEI7NkdBQTVCLDRCQUE0QixvSUN2RnpDLHNxRkE0REEsaUlEVUksWUFBWSwrUEFDWixhQUFhLHVXQUNiLGVBQWUsMkZBQ2Ysa0JBQWtCLCtYQUNsQixXQUFXLHczQkFDWCxtQkFBbUIsK1VBQ25CLGVBQWUsMFFBQ2YsZUFBZSw4QkFDZixjQUFjLDJXQUNkLFVBQVUsMExBQ1YsZUFBZTsyRkFPTiw0QkFBNEI7a0JBcEJ4QyxTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxVQUFVO3dCQUNWLGVBQWU7cUJBQ2hCLFlBQ1MsMkJBQTJCLGlCQUd0QixpQkFBaUIsQ0FBQyxJQUFJO21KQWdCckMsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDIzIEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBVbnR5cGVkRm9ybUdyb3VwLFxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXG4gIFZhbGlkYXRvcnMsXG4gIEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgTmdGb3JtLFxuICBGb3Jtc01vZHVsZSxcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgRm9ybUNvbnRyb2wsXG4gIFZhbGlkYXRpb25FcnJvcnNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUXVlcmllc0FwaSwgU2l0ZUVudHJ5LCBTaXRlUGFnaW5nIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEFwcFN0b3JlLFxuICBTbmFja2JhckFjdGlvbixcbiAgU25hY2tiYXJBY3Rpb25UeXBlcyxcbiAgU25hY2tiYXJFcnJvckFjdGlvbixcbiAgU25hY2tiYXJJbmZvQWN0aW9uLFxuICBVcGRhdGVMaWJyYXJ5QWN0aW9uXG59IGZyb20gJ0BhbGZyZXNjby9hY2Etc2hhcmVkL3N0b3JlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCBtZXJnZU1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWxmcmVzY29BcGlTZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb20sIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVycm9yU3RhdGVNYXRjaGVyLCBNYXRPcHRpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcblxuZXhwb3J0IGNsYXNzIEluc3RhbnRFcnJvclN0YXRlTWF0Y2hlciBpbXBsZW1lbnRzIEVycm9yU3RhdGVNYXRjaGVyIHtcbiAgaXNFcnJvclN0YXRlKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCB8IG51bGwsIGZvcm06IEZvcm1Hcm91cERpcmVjdGl2ZSB8IE5nRm9ybSB8IG51bGwpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc1N1Ym1pdHRlZCA9IGZvcm0/LnN1Ym1pdHRlZDtcbiAgICByZXR1cm4gISEoY29udHJvbD8uaW52YWxpZCAmJiAoY29udHJvbD8uZGlydHkgfHwgY29udHJvbD8udG91Y2hlZCB8fCBpc1N1Ym1pdHRlZCkpO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgQTExeU1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGVcbiAgXSxcbiAgc2VsZWN0b3I6ICdhcHAtbGlicmFyeS1tZXRhZGF0YS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIExpYnJhcnlNZXRhZGF0YUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfcXVlcmllc0FwaTogUXVlcmllc0FwaTtcbiAgcHJpdmF0ZSBfdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5OiBzdHJpbmc7XG5cbiAgZ2V0IHF1ZXJpZXNBcGkoKTogUXVlcmllc0FwaSB7XG4gICAgdGhpcy5fcXVlcmllc0FwaSA9IHRoaXMuX3F1ZXJpZXNBcGkgPz8gbmV3IFF1ZXJpZXNBcGkodGhpcy5hbGZyZXNjb0FwaVNlcnZpY2UuZ2V0SW5zdGFuY2UoKSk7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXJpZXNBcGk7XG4gIH1cblxuICBnZXQgdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlRXJyb3JUcmFuc2xhdGlvbktleTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG5vZGU6IFNpdGVFbnRyeTtcblxuICBsaWJyYXJ5VGl0bGVFeGlzdHMgPSBmYWxzZTtcblxuICBsaWJyYXJ5VHlwZSA9IFtcbiAgICB7IHZhbHVlOiAnUFVCTElDJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuUFVCTElDJyB9LFxuICAgIHsgdmFsdWU6ICdQUklWQVRFJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuUFJJVkFURScgfSxcbiAgICB7IHZhbHVlOiAnTU9ERVJBVEVEJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuTU9ERVJBVEVEJyB9XG4gIF07XG5cbiAgZm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfSksXG4gICAgdGl0bGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woeyB2YWx1ZTogJycgfSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDI1NiksIHRoaXMudmFsaWRhdGVFbXB0eU5hbWVdKSxcbiAgICBkZXNjcmlwdGlvbjogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiAnJyB9LCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTEyKV0pLFxuICAgIHZpc2liaWxpdHk6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodGhpcy5saWJyYXJ5VHlwZVswXS52YWx1ZSlcbiAgfSk7XG5cbiAgbWF0Y2hlciA9IG5ldyBJbnN0YW50RXJyb3JTdGF0ZU1hdGNoZXIoKTtcbiAgY2FuVXBkYXRlTGlicmFyeSA9IGZhbHNlO1xuXG4gIG9uRGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWxmcmVzY29BcGlTZXJ2aWNlOiBBbGZyZXNjb0FwaVNlcnZpY2UsIHByb3RlY3RlZCBzdG9yZTogU3RvcmU8QXBwU3RvcmU+LCBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zKSB7fVxuXG4gIHRvZ2dsZUVkaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5lbmFibGVkKSB7XG4gICAgICB0aGlzLmZvcm0uZGlzYWJsZSh7XG4gICAgICAgIGVtaXRFdmVudDogZmFsc2VcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm0uZW5hYmxlKHtcbiAgICAgICAgZW1pdEV2ZW50OiBmYWxzZVxuICAgICAgfSk7XG4gICAgICB0aGlzLmZvcm0uY29udHJvbHMuaWQuZGlzYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLnVwZGF0ZUZvcm0odGhpcy5ub2RlKTtcbiAgICB0aGlzLnRvZ2dsZUVkaXQoKTtcbiAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudG9nZ2xlRWRpdCgpO1xuICAgIHRoaXMudXBkYXRlRm9ybSh0aGlzLm5vZGUpO1xuICAgIHRoaXMuZm9ybS5jb250cm9scy50aXRsZS5zdGF0dXNDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgKHRoaXMuX3RpdGxlRXJyb3JUcmFuc2xhdGlvbktleSA9IHRoaXMuZm9ybS5jb250cm9scy50aXRsZS5lcnJvcnM/LmVtcHR5XG4gICAgICAgICAgICA/ICdMSUJSQVJZLkVSUk9SUy5PTkxZX1NQQUNFUydcbiAgICAgICAgICAgIDogJ0xJQlJBUlkuRVJST1JTLlRJVExFX1RPT19MT05HX09SX01JU1NJTkcnKVxuICAgICAgKTtcbiAgICB0aGlzLmZvcm0uY29udHJvbHNbJ3RpdGxlJ10udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgIG1lcmdlTWFwKCh0aXRsZSkgPT4gdGhpcy5maW5kTGlicmFyeUJ5VGl0bGUodGl0bGUpKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95JClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICBjb25zdCB7IGVudHJpZXMgfSA9IHJlc3VsdC5saXN0O1xuXG4gICAgICAgIGlmIChlbnRyaWVzLmxlbmd0aCkge1xuICAgICAgICAgIGlmICh0aGlzLmZvcm0uY29udHJvbHMudGl0bGUudmFsdWUgPT09IHRoaXMubm9kZS5lbnRyeS50aXRsZSkge1xuICAgICAgICAgICAgdGhpcy5saWJyYXJ5VGl0bGVFeGlzdHMgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5saWJyYXJ5VGl0bGVFeGlzdHMgPSB0aGlzLmZvcm0uY29udHJvbHMudGl0bGUudmFsdWUgPT09IGVudHJpZXNbMF0uZW50cnkudGl0bGU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubGlicmFyeVRpdGxlRXhpc3RzID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIHRoaXMuY2FuVXBkYXRlTGlicmFyeSA9IHRoaXMubm9kZT8uZW50cnk/LnJvbGUgPT09ICdTaXRlTWFuYWdlcic7XG4gICAgdGhpcy5oYW5kbGVVcGRhdGluZ0V2ZW50PFNuYWNrYmFySW5mb0FjdGlvbj4oU25hY2tiYXJBY3Rpb25UeXBlcy5JbmZvLCAnTElCUkFSWS5TVUNDRVNTLkxJQlJBUllfVVBEQVRFRCcsICgpID0+XG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMubm9kZS5lbnRyeSwgdGhpcy5mb3JtLnZhbHVlKVxuICAgICk7XG4gICAgdGhpcy5oYW5kbGVVcGRhdGluZ0V2ZW50PFNuYWNrYmFyRXJyb3JBY3Rpb24+KFNuYWNrYmFyQWN0aW9uVHlwZXMuRXJyb3IsICdMSUJSQVJZLkVSUk9SUy5MSUJSQVJZX1VQREFURV9FUlJPUicsICgpID0+IHRoaXMuZm9ybS5tYXJrQXNEaXJ0eSgpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95JC5uZXh0KHRydWUpO1xuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy51cGRhdGVGb3JtKHRoaXMubm9kZSk7XG4gICAgdGhpcy5jYW5VcGRhdGVMaWJyYXJ5ID0gdGhpcy5ub2RlPy5lbnRyeT8ucm9sZSA9PT0gJ1NpdGVNYW5hZ2VyJztcbiAgfVxuXG4gIHVwZGF0ZSgpIHtcbiAgICBpZiAodGhpcy5jYW5VcGRhdGVMaWJyYXJ5ICYmIHRoaXMuZm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5mb3JtLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBuZXcgVXBkYXRlTGlicmFyeUFjdGlvbih7XG4gICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxuICAgICAgICAgIHRpdGxlOiB0aGlzLmZvcm0udmFsdWUudGl0bGUudHJpbSgpXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRm9ybShub2RlOiBTaXRlRW50cnkpIHtcbiAgICBjb25zdCB7IGVudHJ5IH0gPSBub2RlO1xuXG4gICAgdGhpcy5mb3JtLnNldFZhbHVlKHtcbiAgICAgIGlkOiBlbnRyeS5pZCxcbiAgICAgIHRpdGxlOiBlbnRyeS50aXRsZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBlbnRyeS5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgIHZpc2liaWxpdHk6IGVudHJ5LnZpc2liaWxpdHlcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZExpYnJhcnlCeVRpdGxlKGxpYnJhcnlUaXRsZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTaXRlUGFnaW5nIHwgeyBsaXN0OiB7IGVudHJpZXM6IGFueVtdIH0gfT4ge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy5xdWVyaWVzQXBpXG4gICAgICAgIC5maW5kU2l0ZXMobGlicmFyeVRpdGxlLnRyaW0oKSwge1xuICAgICAgICAgIG1heEl0ZW1zOiAxLFxuICAgICAgICAgIGZpZWxkczogWyd0aXRsZSddXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiAoeyBsaXN0OiB7IGVudHJpZXM6IFtdIH0gfSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVXBkYXRpbmdFdmVudDxUIGV4dGVuZHMgU25hY2tiYXJBY3Rpb24+KGFjdGlvblR5cGU6IFNuYWNrYmFyQWN0aW9uVHlwZXMsIHBheWxvYWQ6IHN0cmluZywgaGFuZGxlOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5hY3Rpb25zJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG9mVHlwZTxUPihhY3Rpb25UeXBlKSxcbiAgICAgICAgZmlsdGVyKChhY3Rpb24pID0+IGFjdGlvbi5wYXlsb2FkID09PSBwYXlsb2FkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95JClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoaGFuZGxlKTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVFbXB0eU5hbWUoY29udHJvbDogRm9ybUNvbnRyb2w8c3RyaW5nPik6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIHJldHVybiBjb250cm9sLnZhbHVlLmxlbmd0aCAmJiAhY29udHJvbC52YWx1ZS50cmltKCkgPyB7IGVtcHR5OiB0cnVlIH0gOiBudWxsO1xuICB9XG59XG4iLCI8bWF0LWNhcmQgKm5nSWY9XCJub2RlXCI+XG4gIDxtYXQtY2FyZC1jb250ZW50PlxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGZsb2F0TGFiZWw9XCJhdXRvXCIgZGF0YS1hdXRvbWF0aW9uLWlkPVwibGlicmFyeS1uYW1lLXByb3BlcnRpZXMtd3JhcHBlclwiIGNsYXNzPVwiYXBwLWxpYnJhcnktbWV0YWRhdGEtZm9ybS1maWVsZFwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgIFtjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZV09XCJmb3JtLmVuYWJsZWRcIlxuICAgICAgICAgIFtjZGtUcmFwRm9jdXNdPVwiZm9ybS5lbmFibGVkXCJcbiAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ0xJQlJBUlkuRElBTE9HLkZPUk0uTkFNRScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCJcbiAgICAgICAgICBbZXJyb3JTdGF0ZU1hdGNoZXJdPVwibWF0Y2hlclwiXG4gICAgICAgIC8+XG4gICAgICAgIDxtYXQtaGludCAqbmdJZj1cImxpYnJhcnlUaXRsZUV4aXN0c1wiPnt7ICdMSUJSQVJZLkhJTlRTLlNJVEVfVElUTEVfRVhJU1RTJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWhpbnQ+XG4gICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAge3sgdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5IHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGZsb2F0TGFiZWw9XCJhdXRvXCIgZGF0YS1hdXRvbWF0aW9uLWlkPVwibGlicmFyeS1pZC1wcm9wZXJ0aWVzLXdyYXBwZXJcIiBjbGFzcz1cImFwcC1saWJyYXJ5LW1ldGFkYXRhLWZvcm0tZmllbGRcIj5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IHBsYWNlaG9sZGVyPVwie3sgJ0xJQlJBUlkuRElBTE9HLkZPUk0uU0lURV9JRCcgfCB0cmFuc2xhdGUgfX1cIiBmb3JtQ29udHJvbE5hbWU9XCJpZFwiIC8+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8bWF0LWZvcm0tZmllbGQgZmxvYXRMYWJlbD1cImF1dG9cIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJsaWJyYXJ5LXZpc2liaWxpdHktcHJvcGVydGllcy13cmFwcGVyXCIgY2xhc3M9XCJhcHAtbGlicmFyeS1tZXRhZGF0YS1mb3JtLWZpZWxkXCI+XG4gICAgICAgIDxtYXQtc2VsZWN0IHBsYWNlaG9sZGVyPVwie3sgJ0xJQlJBUlkuRElBTE9HLkZPUk0uVklTSUJJTElUWScgfCB0cmFuc2xhdGUgfX1cIiBmb3JtQ29udHJvbE5hbWU9XCJ2aXNpYmlsaXR5XCI+XG4gICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cInR5cGUudmFsdWVcIiAqbmdGb3I9XCJsZXQgdHlwZSBvZiBsaWJyYXJ5VHlwZVwiPlxuICAgICAgICAgICAge3sgdHlwZS5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGZsb2F0TGFiZWw9XCJhdXRvXCIgZGF0YS1hdXRvbWF0aW9uLWlkPVwibGlicmFyeS1kZXNjcmlwdGlvbi1wcm9wZXJ0aWVzLXdyYXBwZXJcIiBjbGFzcz1cImFwcC1saWJyYXJ5LW1ldGFkYXRhLWZvcm0tZmllbGRcIj5cbiAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdMSUJSQVJZLkRJQUxPRy5GT1JNLkRFU0NSSVBUSU9OJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgcm93cz1cIjNcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICBbZXJyb3JTdGF0ZU1hdGNoZXJdPVwibWF0Y2hlclwiXG4gICAgICAgID48L3RleHRhcmVhPlxuICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgIHt7ICdMSUJSQVJZLkVSUk9SUy5ERVNDUklQVElPTl9UT09fTE9ORycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDwvZm9ybT5cbiAgPC9tYXQtY2FyZC1jb250ZW50PlxuXG4gIDxtYXQtY2FyZC1hY3Rpb25zIGFsaWduPVwiZW5kXCIgKm5nSWY9XCJjYW5VcGRhdGVMaWJyYXJ5XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm0uZW5hYmxlZFwiPlxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJjYW5jZWwoKVwiPlxuICAgICAgICB7eyAnTElCUkFSWS5ESUFMT0cuQ0FOQ0VMJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZCB8fCBmb3JtLnByaXN0aW5lXCIgKGNsaWNrKT1cInVwZGF0ZSgpXCI+XG4gICAgICAgIHt7ICdMSUJSQVJZLkRJQUxPRy5VUERBVEUnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInRvZ2dsZUVkaXQoKVwiICpuZ0lmPVwiZm9ybS5kaXNhYmxlZFwiPlxuICAgICAge3sgJ0xJQlJBUlkuRElBTE9HLkVESVQnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvbWF0LWNhcmQtYWN0aW9ucz5cbjwvbWF0LWNhcmQ+XG4iXX0=
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS1tZXRhZGF0YS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9pbmZvLWRyYXdlci9saWJyYXJ5LW1ldGFkYXRhLXRhYi9saWJyYXJ5LW1ldGFkYXRhLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9jb21wb25lbnRzL2luZm8tZHJhd2VyL2xpYnJhcnktbWV0YWRhdGEtdGFiL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFnQyxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixVQUFVLEVBR1YsV0FBVyxFQUNYLG1CQUFtQixFQUdwQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBR0wsbUJBQW1CLEVBR25CLG1CQUFtQixFQUNuQixPQUFPLEVBQ1IsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUFjLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFD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RSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2hGLENBQUM7O3lIQTdKVSw0QkFBNEI7NkdBQTVCLDRCQUE0QixvSUN4RnpDLHNxRkE0REEsaUlEV0ksWUFBWSwrUEFDWixhQUFhLHVXQUNiLGVBQWUsMkZBQ2Ysa0JBQWtCLCtYQUNsQixXQUFXLHczQkFDWCxtQkFBbUIsK1VBQ25CLGVBQWUsMFFBQ2YsZUFBZSw4QkFDZixjQUFjLDJXQUNkLFVBQVUsMExBQ1YsZUFBZTsyRkFPTiw0QkFBNEI7a0JBcEJ4QyxTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxVQUFVO3dCQUNWLGVBQWU7cUJBQ2hCLFlBQ1MsMkJBQTJCLGlCQUd0QixpQkFBaUIsQ0FBQyxJQUFJO21KQWdCckMsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDIzIEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBVbnR5cGVkRm9ybUdyb3VwLFxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXG4gIFZhbGlkYXRvcnMsXG4gIEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgTmdGb3JtLFxuICBGb3Jtc01vZHVsZSxcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgRm9ybUNvbnRyb2wsXG4gIFZhbGlkYXRpb25FcnJvcnNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUXVlcmllc0FwaSwgU2l0ZUVudHJ5LCBTaXRlUGFnaW5nIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEFwcFN0b3JlLFxuICBTbmFja2JhckFjdGlvbixcbiAgU25hY2tiYXJBY3Rpb25UeXBlcyxcbiAgU25hY2tiYXJFcnJvckFjdGlvbixcbiAgU25hY2tiYXJJbmZvQWN0aW9uLFxuICBVcGRhdGVMaWJyYXJ5QWN0aW9uLFxuICBpc0FkbWluXG59IGZyb20gJ0BhbGZyZXNjby9hY2Etc2hhcmVkL3N0b3JlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCBtZXJnZU1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWxmcmVzY29BcGlTZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb20sIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVycm9yU3RhdGVNYXRjaGVyLCBNYXRPcHRpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBBY3Rpb25zLCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcblxuZXhwb3J0IGNsYXNzIEluc3RhbnRFcnJvclN0YXRlTWF0Y2hlciBpbXBsZW1lbnRzIEVycm9yU3RhdGVNYXRjaGVyIHtcbiAgaXNFcnJvclN0YXRlKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCB8IG51bGwsIGZvcm06IEZvcm1Hcm91cERpcmVjdGl2ZSB8IE5nRm9ybSB8IG51bGwpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc1N1Ym1pdHRlZCA9IGZvcm0/LnN1Ym1pdHRlZDtcbiAgICByZXR1cm4gISEoY29udHJvbD8uaW52YWxpZCAmJiAoY29udHJvbD8uZGlydHkgfHwgY29udHJvbD8udG91Y2hlZCB8fCBpc1N1Ym1pdHRlZCkpO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgQTExeU1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGVcbiAgXSxcbiAgc2VsZWN0b3I6ICdhcHAtbGlicmFyeS1tZXRhZGF0YS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpYnJhcnktbWV0YWRhdGEtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIExpYnJhcnlNZXRhZGF0YUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfcXVlcmllc0FwaTogUXVlcmllc0FwaTtcbiAgcHJpdmF0ZSBfdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5OiBzdHJpbmc7XG5cbiAgZ2V0IHF1ZXJpZXNBcGkoKTogUXVlcmllc0FwaSB7XG4gICAgdGhpcy5fcXVlcmllc0FwaSA9IHRoaXMuX3F1ZXJpZXNBcGkgPz8gbmV3IFF1ZXJpZXNBcGkodGhpcy5hbGZyZXNjb0FwaVNlcnZpY2UuZ2V0SW5zdGFuY2UoKSk7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXJpZXNBcGk7XG4gIH1cblxuICBnZXQgdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlRXJyb3JUcmFuc2xhdGlvbktleTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG5vZGU6IFNpdGVFbnRyeTtcblxuICBsaWJyYXJ5VGl0bGVFeGlzdHMgPSBmYWxzZTtcblxuICBsaWJyYXJ5VHlwZSA9IFtcbiAgICB7IHZhbHVlOiAnUFVCTElDJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuUFVCTElDJyB9LFxuICAgIHsgdmFsdWU6ICdQUklWQVRFJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuUFJJVkFURScgfSxcbiAgICB7IHZhbHVlOiAnTU9ERVJBVEVEJywgbGFiZWw6ICdMSUJSQVJZLlZJU0lCSUxJVFkuTU9ERVJBVEVEJyB9XG4gIF07XG5cbiAgZm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfSksXG4gICAgdGl0bGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woeyB2YWx1ZTogJycgfSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDI1NiksIHRoaXMudmFsaWRhdGVFbXB0eU5hbWVdKSxcbiAgICBkZXNjcmlwdGlvbjogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiAnJyB9LCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTEyKV0pLFxuICAgIHZpc2liaWxpdHk6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodGhpcy5saWJyYXJ5VHlwZVswXS52YWx1ZSlcbiAgfSk7XG5cbiAgbWF0Y2hlciA9IG5ldyBJbnN0YW50RXJyb3JTdGF0ZU1hdGNoZXIoKTtcbiAgY2FuVXBkYXRlTGlicmFyeSA9IGZhbHNlO1xuICBpc0FkbWluID0gZmFsc2U7XG5cbiAgb25EZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhbGZyZXNjb0FwaVNlcnZpY2U6IEFsZnJlc2NvQXBpU2VydmljZSwgcHJvdGVjdGVkIHN0b3JlOiBTdG9yZTxBcHBTdG9yZT4sIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMpIHt9XG5cbiAgdG9nZ2xlRWRpdCgpIHtcbiAgICBpZiAodGhpcy5mb3JtLmVuYWJsZWQpIHtcbiAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKHtcbiAgICAgICAgZW1pdEV2ZW50OiBmYWxzZVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybS5lbmFibGUoe1xuICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICB9KTtcbiAgICAgIHRoaXMuZm9ybS5jb250cm9scy5pZC5kaXNhYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMudXBkYXRlRm9ybSh0aGlzLm5vZGUpO1xuICAgIHRoaXMudG9nZ2xlRWRpdCgpO1xuICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50b2dnbGVFZGl0KCk7XG4gICAgdGhpcy51cGRhdGVGb3JtKHRoaXMubm9kZSk7XG4gICAgdGhpcy5mb3JtLmNvbnRyb2xzLnRpdGxlLnN0YXR1c0NoYW5nZXNcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAodGhpcy5fdGl0bGVFcnJvclRyYW5zbGF0aW9uS2V5ID0gdGhpcy5mb3JtLmNvbnRyb2xzLnRpdGxlLmVycm9ycz8uZW1wdHlcbiAgICAgICAgICAgID8gJ0xJQlJBUlkuRVJST1JTLk9OTFlfU1BBQ0VTJ1xuICAgICAgICAgICAgOiAnTElCUkFSWS5FUlJPUlMuVElUTEVfVE9PX0xPTkdfT1JfTUlTU0lORycpXG4gICAgICApO1xuICAgIHRoaXMuZm9ybS5jb250cm9sc1sndGl0bGUnXS52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICAgICAgbWVyZ2VNYXAoKHRpdGxlKSA9PiB0aGlzLmZpbmRMaWJyYXJ5QnlUaXRsZSh0aXRsZSkpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZW50cmllcyB9ID0gcmVzdWx0Lmxpc3Q7XG5cbiAgICAgICAgaWYgKGVudHJpZXMubGVuZ3RoKSB7XG4gICAgICAgICAgaWYgKHRoaXMuZm9ybS5jb250cm9scy50aXRsZS52YWx1ZSA9PT0gdGhpcy5ub2RlLmVudHJ5LnRpdGxlKSB7XG4gICAgICAgICAgICB0aGlzLmxpYnJhcnlUaXRsZUV4aXN0cyA9IGZhbHNlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxpYnJhcnlUaXRsZUV4aXN0cyA9IHRoaXMuZm9ybS5jb250cm9scy50aXRsZS52YWx1ZSA9PT0gZW50cmllc1swXS5lbnRyeS50aXRsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5saWJyYXJ5VGl0bGVFeGlzdHMgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChpc0FkbWluKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICB0aGlzLmlzQWRtaW4gPSB2YWx1ZTtcbiAgICAgIH0pO1xuICAgIHRoaXMuY2FuVXBkYXRlTGlicmFyeSA9IHRoaXMubm9kZT8uZW50cnk/LnJvbGUgPT09ICdTaXRlTWFuYWdlcicgfHwgdGhpcy5pc0FkbWluO1xuICAgIHRoaXMuaGFuZGxlVXBkYXRpbmdFdmVudDxTbmFja2JhckluZm9BY3Rpb24+KFNuYWNrYmFyQWN0aW9uVHlwZXMuSW5mbywgJ0xJQlJBUlkuU1VDQ0VTUy5MSUJSQVJZX1VQREFURUQnLCAoKSA9PlxuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLm5vZGUuZW50cnksIHRoaXMuZm9ybS52YWx1ZSlcbiAgICApO1xuICAgIHRoaXMuaGFuZGxlVXBkYXRpbmdFdmVudDxTbmFja2JhckVycm9yQWN0aW9uPihTbmFja2JhckFjdGlvblR5cGVzLkVycm9yLCAnTElCUkFSWS5FUlJPUlMuTElCUkFSWV9VUERBVEVfRVJST1InLCAoKSA9PiB0aGlzLmZvcm0ubWFya0FzRGlydHkoKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMudXBkYXRlRm9ybSh0aGlzLm5vZGUpO1xuICAgIHRoaXMuY2FuVXBkYXRlTGlicmFyeSA9IHRoaXMubm9kZT8uZW50cnk/LnJvbGUgPT09ICdTaXRlTWFuYWdlcicgfHwgdGhpcy5pc0FkbWluO1xuICB9XG5cbiAgdXBkYXRlKCkge1xuICAgIGlmICh0aGlzLmNhblVwZGF0ZUxpYnJhcnkgJiYgdGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIG5ldyBVcGRhdGVMaWJyYXJ5QWN0aW9uKHtcbiAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgdGl0bGU6IHRoaXMuZm9ybS52YWx1ZS50aXRsZS50cmltKClcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGb3JtKG5vZGU6IFNpdGVFbnRyeSkge1xuICAgIGNvbnN0IHsgZW50cnkgfSA9IG5vZGU7XG5cbiAgICB0aGlzLmZvcm0uc2V0VmFsdWUoe1xuICAgICAgaWQ6IGVudHJ5LmlkLFxuICAgICAgdGl0bGU6IGVudHJ5LnRpdGxlLFxuICAgICAgZGVzY3JpcHRpb246IGVudHJ5LmRlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgdmlzaWJpbGl0eTogZW50cnkudmlzaWJpbGl0eVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kTGlicmFyeUJ5VGl0bGUobGlicmFyeVRpdGxlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNpdGVQYWdpbmcgfCB7IGxpc3Q6IHsgZW50cmllczogYW55W10gfSB9PiB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICB0aGlzLnF1ZXJpZXNBcGlcbiAgICAgICAgLmZpbmRTaXRlcyhsaWJyYXJ5VGl0bGUudHJpbSgpLCB7XG4gICAgICAgICAgbWF4SXRlbXM6IDEsXG4gICAgICAgICAgZmllbGRzOiBbJ3RpdGxlJ11cbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+ICh7IGxpc3Q6IHsgZW50cmllczogW10gfSB9KSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVVcGRhdGluZ0V2ZW50PFQgZXh0ZW5kcyBTbmFja2JhckFjdGlvbj4oYWN0aW9uVHlwZTogU25hY2tiYXJBY3Rpb25UeXBlcywgcGF5bG9hZDogc3RyaW5nLCBoYW5kbGU6ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGlvbnMkXG4gICAgICAucGlwZShcbiAgICAgICAgb2ZUeXBlPFQ+KGFjdGlvblR5cGUpLFxuICAgICAgICBmaWx0ZXIoKGFjdGlvbikgPT4gYWN0aW9uLnBheWxvYWQgPT09IHBheWxvYWQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShoYW5kbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUVtcHR5TmFtZShjb250cm9sOiBGb3JtQ29udHJvbDxzdHJpbmc+KTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgcmV0dXJuIGNvbnRyb2wudmFsdWUubGVuZ3RoICYmICFjb250cm9sLnZhbHVlLnRyaW0oKSA/IHsgZW1wdHk6IHRydWUgfSA6IG51bGw7XG4gIH1cbn1cbiIsIjxtYXQtY2FyZCAqbmdJZj1cIm5vZGVcIj5cbiAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgZmxvYXRMYWJlbD1cImF1dG9cIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJsaWJyYXJ5LW5hbWUtcHJvcGVydGllcy13cmFwcGVyXCIgY2xhc3M9XCJhcHAtbGlicmFyeS1tZXRhZGF0YS1mb3JtLWZpZWxkXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgW2Nka1RyYXBGb2N1c0F1dG9DYXB0dXJlXT1cImZvcm0uZW5hYmxlZFwiXG4gICAgICAgICAgW2Nka1RyYXBGb2N1c109XCJmb3JtLmVuYWJsZWRcIlxuICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnTElCUkFSWS5ESUFMT0cuRk9STS5OQU1FJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxuICAgICAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJtYXRjaGVyXCJcbiAgICAgICAgLz5cbiAgICAgICAgPG1hdC1oaW50ICpuZ0lmPVwibGlicmFyeVRpdGxlRXhpc3RzXCI+e3sgJ0xJQlJBUlkuSElOVFMuU0lURV9USVRMRV9FWElTVFMnIHwgdHJhbnNsYXRlIH19PC9tYXQtaGludD5cbiAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICB7eyB0aXRsZUVycm9yVHJhbnNsYXRpb25LZXkgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8bWF0LWZvcm0tZmllbGQgZmxvYXRMYWJlbD1cImF1dG9cIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJsaWJyYXJ5LWlkLXByb3BlcnRpZXMtd3JhcHBlclwiIGNsYXNzPVwiYXBwLWxpYnJhcnktbWV0YWRhdGEtZm9ybS1maWVsZFwiPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJ7eyAnTElCUkFSWS5ESUFMT0cuRk9STS5TSVRFX0lEJyB8IHRyYW5zbGF0ZSB9fVwiIGZvcm1Db250cm9sTmFtZT1cImlkXCIgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBmbG9hdExhYmVsPVwiYXV0b1wiIGRhdGEtYXV0b21hdGlvbi1pZD1cImxpYnJhcnktdmlzaWJpbGl0eS1wcm9wZXJ0aWVzLXdyYXBwZXJcIiBjbGFzcz1cImFwcC1saWJyYXJ5LW1ldGFkYXRhLWZvcm0tZmllbGRcIj5cbiAgICAgICAgPG1hdC1zZWxlY3QgcGxhY2Vob2xkZXI9XCJ7eyAnTElCUkFSWS5ESUFMT0cuRk9STS5WSVNJQklMSVRZJyB8IHRyYW5zbGF0ZSB9fVwiIGZvcm1Db250cm9sTmFtZT1cInZpc2liaWxpdHlcIj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwidHlwZS52YWx1ZVwiICpuZ0Zvcj1cImxldCB0eXBlIG9mIGxpYnJhcnlUeXBlXCI+XG4gICAgICAgICAgICB7eyB0eXBlLmxhYmVsIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8bWF0LWZvcm0tZmllbGQgZmxvYXRMYWJlbD1cImF1dG9cIiBkYXRhLWF1dG9tYXRpb24taWQ9XCJsaWJyYXJ5LWRlc2NyaXB0aW9uLXByb3BlcnRpZXMtd3JhcHBlclwiIGNsYXNzPVwiYXBwLWxpYnJhcnktbWV0YWRhdGEtZm9ybS1maWVsZFwiPlxuICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ0xJQlJBUlkuRElBTE9HLkZPUk0uREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICByb3dzPVwiM1wiXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJtYXRjaGVyXCJcbiAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAge3sgJ0xJQlJBUlkuRVJST1JTLkRFU0NSSVBUSU9OX1RPT19MT05HJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9mb3JtPlxuICA8L21hdC1jYXJkLWNvbnRlbnQ+XG5cbiAgPG1hdC1jYXJkLWFjdGlvbnMgYWxpZ249XCJlbmRcIiAqbmdJZj1cImNhblVwZGF0ZUxpYnJhcnlcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS5lbmFibGVkXCI+XG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAgICAgIHt7ICdMSUJSQVJZLkRJQUxPRy5DQU5DRUwnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwiZm9ybS5pbnZhbGlkIHx8IGZvcm0ucHJpc3RpbmVcIiAoY2xpY2spPVwidXBkYXRlKClcIj5cbiAgICAgICAge3sgJ0xJQlJBUlkuRElBTE9HLlVQREFURScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwidG9nZ2xlRWRpdCgpXCIgKm5nSWY9XCJmb3JtLmRpc2FibGVkXCI+XG4gICAgICB7eyAnTElCUkFSWS5ESUFMT0cuRURJVCcgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuPC9tYXQtY2FyZD5cbiJdfQ==
|
|
@@ -21,80 +21,38 @@
|
|
|
21
21
|
* You should have received a copy of the GNU Lesser General Public License
|
|
22
22
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
23
|
*/
|
|
24
|
-
import {
|
|
25
|
-
import { AuthenticationService, IdentityUserService } from '@alfresco/adf-core';
|
|
26
|
-
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
27
|
-
import { of } from 'rxjs';
|
|
28
|
-
import { map } from 'rxjs/operators';
|
|
24
|
+
import { Component, Input, ViewEncapsulation, inject } from '@angular/core';
|
|
29
25
|
import { CommonModule } from '@angular/common';
|
|
30
26
|
import { MatButtonModule } from '@angular/material/button';
|
|
31
27
|
import { TranslateModule } from '@ngx-translate/core';
|
|
32
28
|
import { MatMenuModule } from '@angular/material/menu';
|
|
33
29
|
import { ToolbarMenuItemComponent } from '@alfresco/aca-shared';
|
|
30
|
+
import { getUserProfile } from '@alfresco/aca-shared/store';
|
|
31
|
+
import { Store } from '@ngrx/store';
|
|
34
32
|
import * as i0 from "@angular/core";
|
|
35
|
-
import * as i1 from "@
|
|
36
|
-
import * as i2 from "@
|
|
37
|
-
import * as i3 from "@angular/
|
|
38
|
-
import * as i4 from "@
|
|
39
|
-
import * as i5 from "@angular/material/button";
|
|
40
|
-
import * as i6 from "@angular/material/menu";
|
|
33
|
+
import * as i1 from "@angular/common";
|
|
34
|
+
import * as i2 from "@ngx-translate/core";
|
|
35
|
+
import * as i3 from "@angular/material/button";
|
|
36
|
+
import * as i4 from "@angular/material/menu";
|
|
41
37
|
export class UserMenuComponent {
|
|
42
|
-
constructor(
|
|
43
|
-
this.
|
|
44
|
-
this.
|
|
45
|
-
this.authService = authService;
|
|
38
|
+
constructor() {
|
|
39
|
+
this.store = inject((Store));
|
|
40
|
+
this.user$ = this.store.select(getUserProfile);
|
|
46
41
|
}
|
|
47
42
|
ngOnInit() {
|
|
48
|
-
this.getUserInfo();
|
|
49
43
|
if (this.data?.items) {
|
|
50
44
|
this.data.items.sort((a, b) => a.order - b.order);
|
|
51
45
|
}
|
|
52
46
|
}
|
|
53
|
-
getUserInfo() {
|
|
54
|
-
if (this.authService.isOauth()) {
|
|
55
|
-
this.loadIdentityUserInfo();
|
|
56
|
-
if (this.authService.isECMProvider() && this.authService.isEcmLoggedIn()) {
|
|
57
|
-
this.loadEcmUserInfo();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
else if (this.isEcmLoggedIn()) {
|
|
61
|
-
this.loadEcmUserInfo();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
get isLoggedIn() {
|
|
65
|
-
if (this.authService.isKerberosEnabled()) {
|
|
66
|
-
return true;
|
|
67
|
-
}
|
|
68
|
-
return this.authService.isLoggedIn();
|
|
69
|
-
}
|
|
70
|
-
loadEcmUserInfo() {
|
|
71
|
-
this.displayName$ = this.peopleContentService.getCurrentUserInfo().pipe(map((model) => this.parseDisplayName(model)));
|
|
72
|
-
}
|
|
73
|
-
loadIdentityUserInfo() {
|
|
74
|
-
this.displayName$ = of(this.identityUserService.getCurrentUserInfo()).pipe(map((model) => this.parseDisplayName(model)));
|
|
75
|
-
}
|
|
76
|
-
parseDisplayName(model) {
|
|
77
|
-
const result = { firstName: '', initials: '' };
|
|
78
|
-
if (model.firstName) {
|
|
79
|
-
result.initials = model.firstName.charAt(0).toUpperCase();
|
|
80
|
-
}
|
|
81
|
-
if (model.lastName) {
|
|
82
|
-
result.initials += model.lastName.charAt(0).toUpperCase();
|
|
83
|
-
}
|
|
84
|
-
return result;
|
|
85
|
-
}
|
|
86
|
-
isEcmLoggedIn() {
|
|
87
|
-
return this.authService.isEcmLoggedIn() || (this.authService.isECMProvider() && this.authService.isKerberosEnabled());
|
|
88
|
-
}
|
|
89
47
|
}
|
|
90
|
-
UserMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserMenuComponent, deps: [
|
|
91
|
-
UserMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: UserMenuComponent, isStandalone: true, selector: "aca-user-menu", inputs: { actionRef: "actionRef", data: "data" }, ngImport: i0, template: "<button mat-button\n class=\"aca-user-menu-button\"\n data-automation-id=\"app-user-menu-button\"\n [matMenuTriggerFor]=\"menu\"\n title=\"{{'APP.TOOLTIPS.OPTIONS_SETTINGS' | translate}}\"\n>\n <div>{{ (
|
|
48
|
+
UserMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
UserMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: UserMenuComponent, isStandalone: true, selector: "aca-user-menu", inputs: { actionRef: "actionRef", data: "data" }, ngImport: i0, template: "<button mat-button\n class=\"aca-user-menu-button\"\n data-automation-id=\"app-user-menu-button\"\n [matMenuTriggerFor]=\"menu\"\n title=\"{{'APP.TOOLTIPS.OPTIONS_SETTINGS' | translate}}\"\n>\n <div>{{ (user$ | async)?.initials }}</div>\n</button>\n\n<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-container *ngFor=\"let item of data.items\">\n <app-toolbar-menu-item [actionRef]=\"item\"></app-toolbar-menu-item>\n </ng-container>\n</mat-menu>\n", styles: [".aca-user-menu-button{border-radius:90%;height:32px;margin-right:0;min-width:32px;padding:0;font-weight:700;line-height:32px;text-align:center;vertical-align:middle;background:var(--theme-about-panel-border-color);color:var(--theme-sidenav-user-menu-color);border:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: ToolbarMenuItemComponent, selector: "app-toolbar-menu-item", inputs: ["actionRef", "menuId"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
92
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: UserMenuComponent, decorators: [{
|
|
93
51
|
type: Component,
|
|
94
|
-
args: [{ standalone: true, imports: [CommonModule, TranslateModule, MatButtonModule, MatMenuModule, ToolbarMenuItemComponent], selector: 'aca-user-menu', encapsulation: ViewEncapsulation.None, template: "<button mat-button\n class=\"aca-user-menu-button\"\n data-automation-id=\"app-user-menu-button\"\n [matMenuTriggerFor]=\"menu\"\n title=\"{{'APP.TOOLTIPS.OPTIONS_SETTINGS' | translate}}\"\n>\n <div>{{ (
|
|
95
|
-
}],
|
|
52
|
+
args: [{ standalone: true, imports: [CommonModule, TranslateModule, MatButtonModule, MatMenuModule, ToolbarMenuItemComponent], selector: 'aca-user-menu', encapsulation: ViewEncapsulation.None, template: "<button mat-button\n class=\"aca-user-menu-button\"\n data-automation-id=\"app-user-menu-button\"\n [matMenuTriggerFor]=\"menu\"\n title=\"{{'APP.TOOLTIPS.OPTIONS_SETTINGS' | translate}}\"\n>\n <div>{{ (user$ | async)?.initials }}</div>\n</button>\n\n<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-container *ngFor=\"let item of data.items\">\n <app-toolbar-menu-item [actionRef]=\"item\"></app-toolbar-menu-item>\n </ng-container>\n</mat-menu>\n", styles: [".aca-user-menu-button{border-radius:90%;height:32px;margin-right:0;min-width:32px;padding:0;font-weight:700;line-height:32px;text-align:center;vertical-align:middle;background:var(--theme-about-panel-border-color);color:var(--theme-sidenav-user-menu-color);border:none}\n"] }]
|
|
53
|
+
}], propDecorators: { actionRef: [{
|
|
96
54
|
type: Input
|
|
97
55
|
}], data: [{
|
|
98
56
|
type: Input
|
|
99
57
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9zaWRlbmF2L3VzZXItbWVudS91c2VyLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9jb21wb25lbnRzL3NpZGVuYXYvdXNlci1tZW51L3VzZXItbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQVVwQyxNQUFNLE9BQU8saUJBQWlCO0lBUjlCO1FBU1UsVUFBSyxHQUFHLE1BQU0sQ0FBa0IsQ0FBQSxLQUFlLENBQUEsQ0FBQyxDQUFDO1FBQ3pELFVBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztLQWEzQztJQUxDLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25EO0lBQ0gsQ0FBQzs7OEdBZFUsaUJBQWlCO2tHQUFqQixpQkFBaUIsMkhDMUM5QixtZEFjQSx3VURzQlksWUFBWSxnTkFBRSxlQUFlLDJGQUFFLGVBQWUsMFZBQUUsYUFBYSw0UEFBRSx3QkFBd0I7MkZBTXRGLGlCQUFpQjtrQkFSN0IsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsd0JBQXdCLENBQUMsWUFDeEYsZUFBZSxpQkFHVixpQkFBaUIsQ0FBQyxJQUFJOzhCQU9yQyxTQUFTO3NCQURSLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDIzIEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudEFjdGlvblJlZiB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgVG9vbGJhck1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQnO1xuaW1wb3J0IHsgQXBwU3RvcmUsIGdldFVzZXJQcm9maWxlIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgTWF0TWVudU1vZHVsZSwgVG9vbGJhck1lbnVJdGVtQ29tcG9uZW50XSxcbiAgc2VsZWN0b3I6ICdhY2EtdXNlci1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VzZXItbWVudS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBzdG9yZSA9IGluamVjdDxTdG9yZTxBcHBTdG9yZT4+KFN0b3JlPEFwcFN0b3JlPik7XG4gIHVzZXIkID0gdGhpcy5zdG9yZS5zZWxlY3QoZ2V0VXNlclByb2ZpbGUpO1xuXG4gIEBJbnB1dCgpXG4gIGFjdGlvblJlZjogQ29udGVudEFjdGlvblJlZjtcblxuICBASW5wdXQoKVxuICBkYXRhOiB7IGl0ZW1zOiBhbnlbXSB9O1xuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLmRhdGE/Lml0ZW1zKSB7XG4gICAgICB0aGlzLmRhdGEuaXRlbXMuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpO1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvbiBtYXQtYnV0dG9uXG4gIGNsYXNzPVwiYWNhLXVzZXItbWVudS1idXR0b25cIlxuICBkYXRhLWF1dG9tYXRpb24taWQ9XCJhcHAtdXNlci1tZW51LWJ1dHRvblwiXG4gIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcbiAgdGl0bGU9XCJ7eydBUFAuVE9PTFRJUFMuT1BUSU9OU19TRVRUSU5HUycgfCB0cmFuc2xhdGV9fVwiXG4+XG4gIDxkaXY+e3sgKHVzZXIkIHwgYXN5bmMpPy5pbml0aWFscyB9fTwvZGl2PlxuPC9idXR0b24+XG5cbjxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhLml0ZW1zXCI+XG4gICAgPGFwcC10b29sYmFyLW1lbnUtaXRlbSBbYWN0aW9uUmVmXT1cIml0ZW1cIj48L2FwcC10b29sYmFyLW1lbnUtaXRlbT5cbiAgPC9uZy1jb250YWluZXI+XG48L21hdC1tZW51PlxuIl19
|
|
@@ -82,6 +82,7 @@ function updateUser(state, action) {
|
|
|
82
82
|
const lastName = user.lastName || '';
|
|
83
83
|
const userName = `${firstName} ${lastName}`;
|
|
84
84
|
const initials = [firstName[0], lastName[0]].join('');
|
|
85
|
+
const email = user.email;
|
|
85
86
|
const capabilities = user.capabilities;
|
|
86
87
|
const isAdmin = capabilities ? capabilities.isAdmin : true;
|
|
87
88
|
newState.user = {
|
|
@@ -91,7 +92,8 @@ function updateUser(state, action) {
|
|
|
91
92
|
initials,
|
|
92
93
|
isAdmin,
|
|
93
94
|
id,
|
|
94
|
-
groups
|
|
95
|
+
groups,
|
|
96
|
+
email
|
|
95
97
|
};
|
|
96
98
|
return newState;
|
|
97
99
|
}
|
|
@@ -201,4 +203,4 @@ function showLoader(state, action) {
|
|
|
201
203
|
newState.showLoader = action.payload;
|
|
202
204
|
return newState;
|
|
203
205
|
}
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL3N0b3JlL3JlZHVjZXJzL2FwcC5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBR0gsT0FBTyxFQUVMLGVBQWUsRUFZZixjQUFjLEVBRWYsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyRCxNQUFNLFVBQVUsVUFBVSxDQUFDLFFBQWtCLGlCQUFpQixFQUFFLE1BQWM7SUFDNUUsSUFBSSxRQUFrQixDQUFDO0lBRXZCLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUNuQixLQUFLLGNBQWMsQ0FBQyxlQUFlO1lBQ2pDLFFBQVEsR0FBRyxFQUFFLEdBQUksTUFBZ0MsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1RCxNQUFNO1FBQ1IsS0FBSyxlQUFlLENBQUMsWUFBWTtZQUMvQixRQUFRLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxFQUFFLE1BQWdDLENBQUMsQ0FBQztZQUN4RSxNQUFNO1FBQ1IsS0FBSyxjQUFjLENBQUMsY0FBYztZQUNoQyxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxNQUE4QixDQUFDLENBQUM7WUFDN0QsTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDLGdCQUFnQjtZQUNsQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxFQUFFLE1BQWdDLENBQUMsQ0FBQztZQUN4RSxNQUFNO1FBQ1IsS0FBSyxjQUFjLENBQUMsaUJBQWlCO1lBQ25DLFFBQVEsR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsTUFBcUMsQ0FBQyxDQUFDO1lBQ2xGLE1BQU07UUFDUixLQUFLLGNBQWMsQ0FBQyxhQUFhO1lBQy9CLFFBQVEsR0FBRyxnQkFBZ0Is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Q0FBQyxPQUFPLENBQUM7SUFDckMsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQUMsS0FBZSxFQUFFLE1BQW9DO0lBQ3RGLE1BQU0sUUFBUSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUM5QixRQUFRLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUM5QyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyxVQUFVLENBQUMsS0FBZSxFQUFFLE1BQXdCO0lBQzNELE1BQU0sUUFBUSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUM5QixRQUFRLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDckMsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyMyBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBBcHBTdGF0ZSxcbiAgTm9kZUFjdGlvblR5cGVzLFxuICBTZXRVc2VyUHJvZmlsZUFjdGlvbixcbiAgU2V0Q3VycmVudEZvbGRlckFjdGlvbixcbiAgU2V0Q3VycmVudFVybEFjdGlvbixcbiAgU2V0SW5pdGlhbFN0YXRlQWN0aW9uLFxuICBTZXRTZWxlY3RlZE5vZGVzQWN0aW9uLFxuICBTZXRSZXBvc2l0b3J5SW5mb0FjdGlvbixcbiAgU2V0SW5mb0RyYXdlclN0YXRlQWN0aW9uLFxuICBTZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3RBY3Rpb24sXG4gIFNldEN1cnJlbnROb2RlVmVyc2lvbkFjdGlvbixcbiAgU2V0RmlsZVVwbG9hZGluZ0RpYWxvZ0FjdGlvbixcbiAgU2V0SW5mb0RyYXdlclByZXZpZXdTdGF0ZUFjdGlvbixcbiAgQXBwQWN0aW9uVHlwZXMsXG4gIFNob3dMb2FkZXJBY3Rpb25cbn0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgSU5JVElBTF9BUFBfU1RBVEUgfSBmcm9tICcuLi9pbml0aWFsLXN0YXRlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcFJlZHVjZXIoc3RhdGU6IEFwcFN0YXRlID0gSU5JVElBTF9BUFBfU1RBVEUsIGFjdGlvbjogQWN0aW9uKTogQXBwU3RhdGUge1xuICBsZXQgbmV3U3RhdGU6IEFwcFN0YXRlO1xuXG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEluaXRpYWxTdGF0ZTpcbiAgICAgIG5ld1N0YXRlID0geyAuLi4oYWN0aW9uIGFzIFNldEluaXRpYWxTdGF0ZUFjdGlvbikucGF5bG9hZCB9O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBOb2RlQWN0aW9uVHlwZXMuU2V0U2VsZWN0aW9uOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVTZWxlY3RlZE5vZGVzKHN0YXRlLCBhY3Rpb24gYXMgU2V0U2VsZWN0ZWROb2Rlc0FjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldFVzZXJQcm9maWxlOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVVc2VyKHN0YXRlLCBhY3Rpb24gYXMgU2V0VXNlclByb2ZpbGVBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRDdXJyZW50Rm9sZGVyOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50Rm9sZGVyKHN0YXRlLCBhY3Rpb24gYXMgU2V0Q3VycmVudEZvbGRlckFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEN1cnJlbnRWZXJzaW9uOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50Tm9kZVZlcnNpb24oc3RhdGUsIGFjdGlvbiBhcyBTZXRDdXJyZW50Tm9kZVZlcnNpb25BY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRDdXJyZW50VXJsOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50VXJsKHN0YXRlLCBhY3Rpb24gYXMgU2V0Q3VycmVudFVybEFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlRvZ2dsZUluZm9EcmF3ZXI6XG4gICAgICBuZXdTdGF0ZSA9IHRvZ2dsZUluZm9EcmF3ZXIoc3RhdGUpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRJbmZvRHJhd2VyU3RhdGU6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXIoc3RhdGUsIGFjdGlvbiBhcyBTZXRJbmZvRHJhd2VyU3RhdGVBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3Q6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXJBc3BlY3Qoc3RhdGUsIGFjdGlvbiBhcyBTZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3RBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRSZXBvc2l0b3J5SW5mbzpcbiAgICAgIG5ld1N0YXRlID0gdXBkYXRlUmVwb3NpdG9yeVN0YXR1cyhzdGF0ZSwgYWN0aW9uIGFzIFNldFJlcG9zaXRvcnlJbmZvQWN0aW9uKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgQXBwQWN0aW9uVHlwZXMuU2V0RmlsZVVwbG9hZGluZ0RpYWxvZzpcbiAgICAgIG5ld1N0YXRlID0gc2V0VXBsb2FkRGlhbG9nVmlzaWJpbGl0eShzdGF0ZSwgYWN0aW9uIGFzIFNldEZpbGVVcGxvYWRpbmdEaWFsb2dBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TaG93SW5mb0RyYXdlclByZXZpZXc6XG4gICAgICBuZXdTdGF0ZSA9IHNob3dJbmZvRHJhd2VyUHJldmlldyhzdGF0ZSk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEluZm9EcmF3ZXJQcmV2aWV3U3RhdGU6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXJQcmV2aWV3KHN0YXRlLCBhY3Rpb24gYXMgU2V0SW5mb0RyYXdlclByZXZpZXdTdGF0ZUFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNob3dMb2FkZXJBY3Rpb246XG4gICAgICBuZXdTdGF0ZSA9IHNob3dMb2FkZXIoc3RhdGUsIGFjdGlvbiBhcyBTaG93TG9hZGVyQWN0aW9uKTtcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgfVxuXG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVXNlcihzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0VXNlclByb2ZpbGVBY3Rpb24pOiBBcHBTdGF0ZSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBjb25zdCB1c2VyID0gYWN0aW9uLnBheWxvYWQucGVyc29uO1xuICBjb25zdCBncm91cHMgPSBbLi4uKGFjdGlvbi5wYXlsb2FkLmdyb3VwcyB8fCBbXSldO1xuXG4gIGNvbnN0IGlkID0gdXNlci5pZDtcbiAgY29uc3QgZmlyc3ROYW1lID0gdXNlci5maXJzdE5hbWUgfHwgJyc7XG4gIGNvbnN0IGxhc3ROYW1lID0gdXNlci5sYXN0TmFtZSB8fCAnJztcbiAgY29uc3QgdXNlck5hbWUgPSBgJHtmaXJzdE5hbWV9ICR7bGFzdE5hbWV9YDtcbiAgY29uc3QgaW5pdGlhbHMgPSBbZmlyc3ROYW1lWzBdLCBsYXN0TmFtZVswXV0uam9pbignJyk7XG5cbiAgY29uc3QgY2FwYWJpbGl0aWVzID0gdXNlci5jYXBhYmlsaXRpZXM7XG4gIGNvbnN0IGlzQWRtaW4gPSBjYXBhYmlsaXRpZXMgPyBjYXBhYmlsaXRpZXMuaXNBZG1pbiA6IHRydWU7XG5cbiAgbmV3U3RhdGUudXNlciA9IHtcbiAgICBmaXJzdE5hbWUsXG4gICAgbGFzdE5hbWUsXG4gICAgdXNlck5hbWUsXG4gICAgaW5pdGlhbHMsXG4gICAgaXNBZG1pbixcbiAgICBpZCxcbiAgICBncm91cHNcbiAgfTtcblxuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUN1cnJlbnRGb2xkZXIoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldEN1cnJlbnRGb2xkZXJBY3Rpb24pIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIG5ld1N0YXRlLm5hdmlnYXRpb24uY3VycmVudEZvbGRlciA9IGFjdGlvbi5wYXlsb2FkO1xuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUN1cnJlbnROb2RlVmVyc2lvbihzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0Q3VycmVudE5vZGVWZXJzaW9uQWN0aW9uKSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBuZXdTdGF0ZS5jdXJyZW50Tm9kZVZlcnNpb24gPSBhY3Rpb24ucGF5bG9hZDtcbiAgcmV0dXJuIG5ld1N0YXRlO1xufVxuXG5mdW5jdGlvbiB1cGRhdGVDdXJyZW50VXJsKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTZXRDdXJyZW50VXJsQWN0aW9uKSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBuZXdTdGF0ZS5uYXZpZ2F0aW9uLnVybCA9IGFjdGlvbi5wYXlsb2FkO1xuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHRvZ2dsZUluZm9EcmF3ZXIoc3RhdGU6IEFwcFN0YXRlKSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuXG4gIGxldCB2YWx1ZSA9IHN0YXRlLmluZm9EcmF3ZXJPcGVuZWQ7XG4gIGlmIChzdGF0ZS5zZWxlY3Rpb24uaXNFbXB0eSkge1xuICAgIHZhbHVlID0gZmFsc2U7XG4gIH0gZWxzZSB7XG4gICAgdmFsdWUgPSAhdmFsdWU7XG4gIH1cblxuICBuZXdTdGF0ZS5pbmZvRHJhd2VyT3BlbmVkID0gdmFsdWU7XG5cbiAgcmV0dXJuIG5ld1N0YXRlO1xufVxuXG5mdW5jdGlvbiBzaG93SW5mb0RyYXdlclByZXZpZXcoc3RhdGU6IEFwcFN0YXRlKSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuXG4gIGxldCB2YWx1ZSA9IHN0YXRlLmluZm9EcmF3ZXJQcmV2aWV3O1xuICBpZiAoc3RhdGUuc2VsZWN0aW9uLmlzRW1wdHkpIHtcbiAgICB2YWx1ZSA9IGZhbHNlO1xuICB9IGVsc2Uge1xuICAgIHZhbHVlID0gIXZhbHVlO1xuICB9XG5cbiAgbmV3U3RhdGUuaW5mb0RyYXdlclByZXZpZXcgPSB2YWx1ZTtcblxuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVNlbGVjdGVkTm9kZXMoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldFNlbGVjdGVkTm9kZXNBY3Rpb24pOiBBcHBTdGF0ZSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBjb25zdCBub2RlcyA9IFsuLi5hY3Rpb24ucGF5bG9hZF07XG4gIGNvbnN0IGNvdW50ID0gbm9kZXMubGVuZ3RoO1xuICBjb25zdCBpc0VtcHR5ID0gbm9kZXMubGVuZ3RoID09PSAwO1xuXG4gIGxldCBmaXJzdCA9IG51bGw7XG4gIGxldCBsYXN0ID0gbnVsbDtcbiAgbGV0IGZpbGUgPSBudWxsO1xuICBsZXQgZm9sZGVyID0gbnVsbDtcbiAgbGV0IGxpYnJhcnkgPSBudWxsO1xuXG4gIGlmIChub2Rlcy5sZW5ndGggPiAwKSB7XG4gICAgZmlyc3QgPSBub2Rlc1swXTtcbiAgICBsYXN0ID0gbm9kZXNbbm9kZXMubGVuZ3RoIC0gMV07XG5cbiAgICBpZiAobm9kZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICBmaWxlID0gbm9kZXMuZmluZChcbiAgICAgICAgKGVudGl0eTogYW55KSA9PlxuICAgICAgICAgIC8vIHdvcmthcm91bmQgU2hhcmVkXG4gICAgICAgICAgISEoZW50aXR5LmVudHJ5LmlzRmlsZSB8fCBlbnRpdHkuZW50cnkubm9kZUlkIHx8IGVudGl0eS5lbnRyeS5zaGFyZWRCeVVzZXIpXG4gICAgICApO1xuICAgICAgZm9sZGVyID0gbm9kZXMuZmluZCgoZW50aXR5OiBhbnkpID0+IGVudGl0eS5lbnRyeS5pc0ZvbGRlcik7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgbGlicmFyaWVzOiBhbnlbXSA9IFsuLi5hY3Rpb24ucGF5bG9hZF0uZmlsdGVyKChub2RlOiBhbnkpID0+IG5vZGUuaXNMaWJyYXJ5KTtcbiAgaWYgKGxpYnJhcmllcy5sZW5ndGggPT09IDEpIHtcbiAgICBsaWJyYXJ5ID0gbGlicmFyaWVzWzBdO1xuICB9XG5cbiAgaWYgKGlzRW1wdHkpIHtcbiAgICBuZXdTdGF0ZS5pbmZvRHJhd2VyT3BlbmVkID0gZmFsc2U7XG4gIH1cblxuICBuZXdTdGF0ZS5zZWxlY3Rpb24gPSB7XG4gICAgY291bnQsXG4gICAgbm9kZXMsXG4gICAgaXNFbXB0eSxcbiAgICBmaXJzdCxcbiAgICBsYXN0LFxuICAgIGZpbGUsXG4gICAgZm9sZGVyLFxuICAgIGxpYnJhcmllcyxcbiAgICBsaWJyYXJ5XG4gIH07XG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuY29uc3Qgc2V0SW5mb0RyYXdlciA9IChzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0SW5mb0RyYXdlclN0YXRlQWN0aW9uKSA9PiAoe1xuICAuLi5zdGF0ZSxcbiAgaW5mb0RyYXdlck9wZW5lZDogYWN0aW9uLnBheWxvYWRcbn0pO1xuXG5jb25zdCBzZXRJbmZvRHJhd2VyUHJldmlldyA9IChzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0SW5mb0RyYXdlclByZXZpZXdTdGF0ZUFjdGlvbikgPT4gKHtcbiAgLi4uc3RhdGUsXG4gIGluZm9EcmF3ZXJQcmV2aWV3OiBhY3Rpb24ucGF5bG9hZFxufSk7XG5cbmNvbnN0IHNldEluZm9EcmF3ZXJBc3BlY3QgPSAoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldEluZm9EcmF3ZXJNZXRhZGF0YUFzcGVjdEFjdGlvbikgPT4gKHtcbiAgLi4uc3RhdGUsXG4gIGluZm9EcmF3ZXJNZXRhZGF0YUFzcGVjdDogYWN0aW9uLnBheWxvYWRcbn0pO1xuXG5mdW5jdGlvbiB1cGRhdGVSZXBvc2l0b3J5U3RhdHVzKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTZXRSZXBvc2l0b3J5SW5mb0FjdGlvbikge1xuICBjb25zdCBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgbmV3U3RhdGUucmVwb3NpdG9yeSA9IGFjdGlvbi5wYXlsb2FkO1xuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHNldFVwbG9hZERpYWxvZ1Zpc2liaWxpdHkoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldEZpbGVVcGxvYWRpbmdEaWFsb2dBY3Rpb24pOiBBcHBTdGF0ZSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBuZXdTdGF0ZS5maWxlVXBsb2FkaW5nRGlhbG9nID0gYWN0aW9uLnBheWxvYWQ7XG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gc2hvd0xvYWRlcihzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2hvd0xvYWRlckFjdGlvbik6IEFwcFN0YXRlIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIG5ld1N0YXRlLnNob3dMb2FkZXIgPSBhY3Rpb24ucGF5bG9hZDtcbiAgcmV0dXJuIG5ld1N0YXRlO1xufVxuIl19
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL3N0b3JlL3JlZHVjZXJzL2FwcC5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBR0gsT0FBTyxFQUVMLGVBQWUsRUFZZixjQUFjLEVBRWYsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyRCxNQUFNLFVBQVUsVUFBVSxDQUFDLFFBQWtCLGlCQUFpQixFQUFFLE1BQWM7SUFDNUUsSUFBSSxRQUFrQixDQUFDO0lBRXZCLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUNuQixLQUFLLGNBQWMsQ0FBQyxlQUFlO1lBQ2pDLFFBQVEsR0FBRyxFQUFFLEdBQUksTUFBZ0MsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1RCxNQUFNO1FBQ1IsS0FBSyxlQUFlLENBQUMsWUFBWTtZQUMvQixRQUFRLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxFQUFFLE1BQWdDLENBQUMsQ0FBQztZQUN4RSxNQUFNO1FBQ1IsS0FBSyxjQUFjLENBQUMsY0FBYztZQUNoQyxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxNQUE4QixDQUFDLENBQUM7WUFDN0QsTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDLGdCQUFnQjtZQUNsQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxFQUFFLE1BQWdDLENBQUMsQ0FBQztZQUN4RSxNQUFNO1FBQ1IsS0FBSyxjQUFjLENBQUMsaUJBQWlCO1lBQ25DLFFBQVEsR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsTUFBcUMsQ0FBQyxDQUFDO1lBQ2xGLE1BQU07UUFDUixLQUFLLGNBQWMsQ0FBQyxhQUFhO1lBQy9CLFFBQVEsR0FBRyxnQkFBZ0Is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R0FBRyxLQUFLLEVBQUUsQ0FBQztJQUM5QixRQUFRLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDckMsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQUMsS0FBZSxFQUFFLE1BQW9DO0lBQ3RGLE1BQU0sUUFBUSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUM5QixRQUFRLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUM5QyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyxVQUFVLENBQUMsS0FBZSxFQUFFLE1BQXdCO0lBQzNELE1BQU0sUUFBUSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUM5QixRQUFRLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDckMsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyMyBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBBcHBTdGF0ZSxcbiAgTm9kZUFjdGlvblR5cGVzLFxuICBTZXRVc2VyUHJvZmlsZUFjdGlvbixcbiAgU2V0Q3VycmVudEZvbGRlckFjdGlvbixcbiAgU2V0Q3VycmVudFVybEFjdGlvbixcbiAgU2V0SW5pdGlhbFN0YXRlQWN0aW9uLFxuICBTZXRTZWxlY3RlZE5vZGVzQWN0aW9uLFxuICBTZXRSZXBvc2l0b3J5SW5mb0FjdGlvbixcbiAgU2V0SW5mb0RyYXdlclN0YXRlQWN0aW9uLFxuICBTZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3RBY3Rpb24sXG4gIFNldEN1cnJlbnROb2RlVmVyc2lvbkFjdGlvbixcbiAgU2V0RmlsZVVwbG9hZGluZ0RpYWxvZ0FjdGlvbixcbiAgU2V0SW5mb0RyYXdlclByZXZpZXdTdGF0ZUFjdGlvbixcbiAgQXBwQWN0aW9uVHlwZXMsXG4gIFNob3dMb2FkZXJBY3Rpb25cbn0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgSU5JVElBTF9BUFBfU1RBVEUgfSBmcm9tICcuLi9pbml0aWFsLXN0YXRlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcFJlZHVjZXIoc3RhdGU6IEFwcFN0YXRlID0gSU5JVElBTF9BUFBfU1RBVEUsIGFjdGlvbjogQWN0aW9uKTogQXBwU3RhdGUge1xuICBsZXQgbmV3U3RhdGU6IEFwcFN0YXRlO1xuXG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEluaXRpYWxTdGF0ZTpcbiAgICAgIG5ld1N0YXRlID0geyAuLi4oYWN0aW9uIGFzIFNldEluaXRpYWxTdGF0ZUFjdGlvbikucGF5bG9hZCB9O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBOb2RlQWN0aW9uVHlwZXMuU2V0U2VsZWN0aW9uOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVTZWxlY3RlZE5vZGVzKHN0YXRlLCBhY3Rpb24gYXMgU2V0U2VsZWN0ZWROb2Rlc0FjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldFVzZXJQcm9maWxlOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVVc2VyKHN0YXRlLCBhY3Rpb24gYXMgU2V0VXNlclByb2ZpbGVBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRDdXJyZW50Rm9sZGVyOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50Rm9sZGVyKHN0YXRlLCBhY3Rpb24gYXMgU2V0Q3VycmVudEZvbGRlckFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEN1cnJlbnRWZXJzaW9uOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50Tm9kZVZlcnNpb24oc3RhdGUsIGFjdGlvbiBhcyBTZXRDdXJyZW50Tm9kZVZlcnNpb25BY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRDdXJyZW50VXJsOlxuICAgICAgbmV3U3RhdGUgPSB1cGRhdGVDdXJyZW50VXJsKHN0YXRlLCBhY3Rpb24gYXMgU2V0Q3VycmVudFVybEFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlRvZ2dsZUluZm9EcmF3ZXI6XG4gICAgICBuZXdTdGF0ZSA9IHRvZ2dsZUluZm9EcmF3ZXIoc3RhdGUpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRJbmZvRHJhd2VyU3RhdGU6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXIoc3RhdGUsIGFjdGlvbiBhcyBTZXRJbmZvRHJhd2VyU3RhdGVBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3Q6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXJBc3BlY3Qoc3RhdGUsIGFjdGlvbiBhcyBTZXRJbmZvRHJhd2VyTWV0YWRhdGFBc3BlY3RBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TZXRSZXBvc2l0b3J5SW5mbzpcbiAgICAgIG5ld1N0YXRlID0gdXBkYXRlUmVwb3NpdG9yeVN0YXR1cyhzdGF0ZSwgYWN0aW9uIGFzIFNldFJlcG9zaXRvcnlJbmZvQWN0aW9uKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgQXBwQWN0aW9uVHlwZXMuU2V0RmlsZVVwbG9hZGluZ0RpYWxvZzpcbiAgICAgIG5ld1N0YXRlID0gc2V0VXBsb2FkRGlhbG9nVmlzaWJpbGl0eShzdGF0ZSwgYWN0aW9uIGFzIFNldEZpbGVVcGxvYWRpbmdEaWFsb2dBY3Rpb24pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBBcHBBY3Rpb25UeXBlcy5TaG93SW5mb0RyYXdlclByZXZpZXc6XG4gICAgICBuZXdTdGF0ZSA9IHNob3dJbmZvRHJhd2VyUHJldmlldyhzdGF0ZSk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNldEluZm9EcmF3ZXJQcmV2aWV3U3RhdGU6XG4gICAgICBuZXdTdGF0ZSA9IHNldEluZm9EcmF3ZXJQcmV2aWV3KHN0YXRlLCBhY3Rpb24gYXMgU2V0SW5mb0RyYXdlclByZXZpZXdTdGF0ZUFjdGlvbik7XG4gICAgICBicmVhaztcbiAgICBjYXNlIEFwcEFjdGlvblR5cGVzLlNob3dMb2FkZXJBY3Rpb246XG4gICAgICBuZXdTdGF0ZSA9IHNob3dMb2FkZXIoc3RhdGUsIGFjdGlvbiBhcyBTaG93TG9hZGVyQWN0aW9uKTtcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgfVxuXG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVXNlcihzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0VXNlclByb2ZpbGVBY3Rpb24pOiBBcHBTdGF0ZSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBjb25zdCB1c2VyID0gYWN0aW9uLnBheWxvYWQucGVyc29uO1xuICBjb25zdCBncm91cHMgPSBbLi4uKGFjdGlvbi5wYXlsb2FkLmdyb3VwcyB8fCBbXSldO1xuXG4gIGNvbnN0IGlkID0gdXNlci5pZDtcbiAgY29uc3QgZmlyc3ROYW1lID0gdXNlci5maXJzdE5hbWUgfHwgJyc7XG4gIGNvbnN0IGxhc3ROYW1lID0gdXNlci5sYXN0TmFtZSB8fCAnJztcbiAgY29uc3QgdXNlck5hbWUgPSBgJHtmaXJzdE5hbWV9ICR7bGFzdE5hbWV9YDtcbiAgY29uc3QgaW5pdGlhbHMgPSBbZmlyc3ROYW1lWzBdLCBsYXN0TmFtZVswXV0uam9pbignJyk7XG4gIGNvbnN0IGVtYWlsID0gdXNlci5lbWFpbDtcblxuICBjb25zdCBjYXBhYmlsaXRpZXMgPSB1c2VyLmNhcGFiaWxpdGllcztcbiAgY29uc3QgaXNBZG1pbiA9IGNhcGFiaWxpdGllcyA/IGNhcGFiaWxpdGllcy5pc0FkbWluIDogdHJ1ZTtcblxuICBuZXdTdGF0ZS51c2VyID0ge1xuICAgIGZpcnN0TmFtZSxcbiAgICBsYXN0TmFtZSxcbiAgICB1c2VyTmFtZSxcbiAgICBpbml0aWFscyxcbiAgICBpc0FkbWluLFxuICAgIGlkLFxuICAgIGdyb3VwcyxcbiAgICBlbWFpbFxuICB9O1xuXG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlQ3VycmVudEZvbGRlcihzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0Q3VycmVudEZvbGRlckFjdGlvbikge1xuICBjb25zdCBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgbmV3U3RhdGUubmF2aWdhdGlvbi5jdXJyZW50Rm9sZGVyID0gYWN0aW9uLnBheWxvYWQ7XG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlQ3VycmVudE5vZGVWZXJzaW9uKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTZXRDdXJyZW50Tm9kZVZlcnNpb25BY3Rpb24pIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIG5ld1N0YXRlLmN1cnJlbnROb2RlVmVyc2lvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUN1cnJlbnRVcmwoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldEN1cnJlbnRVcmxBY3Rpb24pIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIG5ld1N0YXRlLm5hdmlnYXRpb24udXJsID0gYWN0aW9uLnBheWxvYWQ7XG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdG9nZ2xlSW5mb0RyYXdlcihzdGF0ZTogQXBwU3RhdGUpIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG5cbiAgbGV0IHZhbHVlID0gc3RhdGUuaW5mb0RyYXdlck9wZW5lZDtcbiAgaWYgKHN0YXRlLnNlbGVjdGlvbi5pc0VtcHR5KSB7XG4gICAgdmFsdWUgPSBmYWxzZTtcbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9ICF2YWx1ZTtcbiAgfVxuXG4gIG5ld1N0YXRlLmluZm9EcmF3ZXJPcGVuZWQgPSB2YWx1ZTtcblxuICByZXR1cm4gbmV3U3RhdGU7XG59XG5cbmZ1bmN0aW9uIHNob3dJbmZvRHJhd2VyUHJldmlldyhzdGF0ZTogQXBwU3RhdGUpIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG5cbiAgbGV0IHZhbHVlID0gc3RhdGUuaW5mb0RyYXdlclByZXZpZXc7XG4gIGlmIChzdGF0ZS5zZWxlY3Rpb24uaXNFbXB0eSkge1xuICAgIHZhbHVlID0gZmFsc2U7XG4gIH0gZWxzZSB7XG4gICAgdmFsdWUgPSAhdmFsdWU7XG4gIH1cblxuICBuZXdTdGF0ZS5pbmZvRHJhd2VyUHJldmlldyA9IHZhbHVlO1xuXG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlU2VsZWN0ZWROb2RlcyhzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0U2VsZWN0ZWROb2Rlc0FjdGlvbik6IEFwcFN0YXRlIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIGNvbnN0IG5vZGVzID0gWy4uLmFjdGlvbi5wYXlsb2FkXTtcbiAgY29uc3QgY291bnQgPSBub2Rlcy5sZW5ndGg7XG4gIGNvbnN0IGlzRW1wdHkgPSBub2Rlcy5sZW5ndGggPT09IDA7XG5cbiAgbGV0IGZpcnN0ID0gbnVsbDtcbiAgbGV0IGxhc3QgPSBudWxsO1xuICBsZXQgZmlsZSA9IG51bGw7XG4gIGxldCBmb2xkZXIgPSBudWxsO1xuICBsZXQgbGlicmFyeSA9IG51bGw7XG5cbiAgaWYgKG5vZGVzLmxlbmd0aCA+IDApIHtcbiAgICBmaXJzdCA9IG5vZGVzWzBdO1xuICAgIGxhc3QgPSBub2Rlc1tub2Rlcy5sZW5ndGggLSAxXTtcblxuICAgIGlmIChub2Rlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgIGZpbGUgPSBub2Rlcy5maW5kKFxuICAgICAgICAoZW50aXR5OiBhbnkpID0+XG4gICAgICAgICAgLy8gd29ya2Fyb3VuZCBTaGFyZWRcbiAgICAgICAgICAhIShlbnRpdHkuZW50cnkuaXNGaWxlIHx8IGVudGl0eS5lbnRyeS5ub2RlSWQgfHwgZW50aXR5LmVudHJ5LnNoYXJlZEJ5VXNlcilcbiAgICAgICk7XG4gICAgICBmb2xkZXIgPSBub2Rlcy5maW5kKChlbnRpdHk6IGFueSkgPT4gZW50aXR5LmVudHJ5LmlzRm9sZGVyKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBsaWJyYXJpZXM6IGFueVtdID0gWy4uLmFjdGlvbi5wYXlsb2FkXS5maWx0ZXIoKG5vZGU6IGFueSkgPT4gbm9kZS5pc0xpYnJhcnkpO1xuICBpZiAobGlicmFyaWVzLmxlbmd0aCA9PT0gMSkge1xuICAgIGxpYnJhcnkgPSBsaWJyYXJpZXNbMF07XG4gIH1cblxuICBpZiAoaXNFbXB0eSkge1xuICAgIG5ld1N0YXRlLmluZm9EcmF3ZXJPcGVuZWQgPSBmYWxzZTtcbiAgfVxuXG4gIG5ld1N0YXRlLnNlbGVjdGlvbiA9IHtcbiAgICBjb3VudCxcbiAgICBub2RlcyxcbiAgICBpc0VtcHR5LFxuICAgIGZpcnN0LFxuICAgIGxhc3QsXG4gICAgZmlsZSxcbiAgICBmb2xkZXIsXG4gICAgbGlicmFyaWVzLFxuICAgIGxpYnJhcnlcbiAgfTtcbiAgcmV0dXJuIG5ld1N0YXRlO1xufVxuXG5jb25zdCBzZXRJbmZvRHJhd2VyID0gKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTZXRJbmZvRHJhd2VyU3RhdGVBY3Rpb24pID0+ICh7XG4gIC4uLnN0YXRlLFxuICBpbmZvRHJhd2VyT3BlbmVkOiBhY3Rpb24ucGF5bG9hZFxufSk7XG5cbmNvbnN0IHNldEluZm9EcmF3ZXJQcmV2aWV3ID0gKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTZXRJbmZvRHJhd2VyUHJldmlld1N0YXRlQWN0aW9uKSA9PiAoe1xuICAuLi5zdGF0ZSxcbiAgaW5mb0RyYXdlclByZXZpZXc6IGFjdGlvbi5wYXlsb2FkXG59KTtcblxuY29uc3Qgc2V0SW5mb0RyYXdlckFzcGVjdCA9IChzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0SW5mb0RyYXdlck1ldGFkYXRhQXNwZWN0QWN0aW9uKSA9PiAoe1xuICAuLi5zdGF0ZSxcbiAgaW5mb0RyYXdlck1ldGFkYXRhQXNwZWN0OiBhY3Rpb24ucGF5bG9hZFxufSk7XG5cbmZ1bmN0aW9uIHVwZGF0ZVJlcG9zaXRvcnlTdGF0dXMoc3RhdGU6IEFwcFN0YXRlLCBhY3Rpb246IFNldFJlcG9zaXRvcnlJbmZvQWN0aW9uKSB7XG4gIGNvbnN0IG5ld1N0YXRlID0geyAuLi5zdGF0ZSB9O1xuICBuZXdTdGF0ZS5yZXBvc2l0b3J5ID0gYWN0aW9uLnBheWxvYWQ7XG4gIHJldHVybiBuZXdTdGF0ZTtcbn1cblxuZnVuY3Rpb24gc2V0VXBsb2FkRGlhbG9nVmlzaWJpbGl0eShzdGF0ZTogQXBwU3RhdGUsIGFjdGlvbjogU2V0RmlsZVVwbG9hZGluZ0RpYWxvZ0FjdGlvbik6IEFwcFN0YXRlIHtcbiAgY29uc3QgbmV3U3RhdGUgPSB7IC4uLnN0YXRlIH07XG4gIG5ld1N0YXRlLmZpbGVVcGxvYWRpbmdEaWFsb2cgPSBhY3Rpb24ucGF5bG9hZDtcbiAgcmV0dXJuIG5ld1N0YXRlO1xufVxuXG5mdW5jdGlvbiBzaG93TG9hZGVyKHN0YXRlOiBBcHBTdGF0ZSwgYWN0aW9uOiBTaG93TG9hZGVyQWN0aW9uKTogQXBwU3RhdGUge1xuICBjb25zdCBuZXdTdGF0ZSA9IHsgLi4uc3RhdGUgfTtcbiAgbmV3U3RhdGUuc2hvd0xvYWRlciA9IGFjdGlvbi5wYXlsb2FkO1xuICByZXR1cm4gbmV3U3RhdGU7XG59XG4iXX0=
|