@ieeesa-npm/events-and-meetings 0.4.2 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/assets/constants.json +5 -6
- package/esm2022/lib/components/add-meeting/add-meeting.component.mjs +13 -10
- package/esm2022/lib/components/create-modify-event/create-modify-event.component.mjs +81 -112
- package/esm2022/lib/components/create-modify-event-or-meeting/create-modify-event-or-meeting.component.mjs +10 -6
- package/esm2022/lib/components/create-modify-meeting/create-modify-meeting.component.mjs +31 -17
- package/esm2022/lib/events-and-meetings.component.mjs +7 -934
- package/esm2022/lib/models/events-and-meetings-list.model.mjs +1 -1
- package/esm2022/lib/services/events-and-meetings.service.mjs +57 -7
- package/fesm2022/ieeesa-npm-events-and-meetings.mjs +228 -1096
- package/fesm2022/ieeesa-npm-events-and-meetings.mjs.map +1 -1
- package/lib/components/add-meeting/add-meeting.component.d.ts +3 -1
- package/lib/components/create-modify-event/create-modify-event.component.d.ts +13 -9
- package/lib/components/create-modify-event-or-meeting/create-modify-event-or-meeting.component.d.ts +3 -1
- package/lib/components/create-modify-meeting/create-modify-meeting.component.d.ts +7 -3
- package/lib/events-and-meetings.component.d.ts +2 -256
- package/lib/models/events-and-meetings-list.model.d.ts +2 -0
- package/lib/services/events-and-meetings.service.d.ts +28 -2
- package/package.json +1 -1
|
@@ -536,12 +536,11 @@
|
|
|
536
536
|
]
|
|
537
537
|
},
|
|
538
538
|
"routeConfigPath": {
|
|
539
|
-
"createEventMeeting": "create-event-meeting",
|
|
540
|
-
"
|
|
541
|
-
"
|
|
542
|
-
"
|
|
543
|
-
"
|
|
544
|
-
"eventsAndMeetings": "events-and-meetings"
|
|
539
|
+
"createEventMeeting": "events-and-meetings/create-event-meeting",
|
|
540
|
+
"createMeeting": "events-and-meetings/create-meeting/",
|
|
541
|
+
"editMeeting": "events-and-meetings/edit-meeting/",
|
|
542
|
+
"editEvent": "events-and-meetings/edit-event/",
|
|
543
|
+
"eventsAndMeetings": "events-and-meetings/view-events-meetings-list"
|
|
545
544
|
},
|
|
546
545
|
"errors": {
|
|
547
546
|
"4001": "Event Name is required.",
|
|
@@ -3,16 +3,12 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import { CreateModifyMeetingComponent } from '../create-modify-meeting/create-modify-meeting.component';
|
|
4
4
|
import * as screenTexts from '../../assets/constants.json';
|
|
5
5
|
import { Subject, takeUntil } from 'rxjs';
|
|
6
|
-
import { AlignType, TabsComponent, RouteParam } from '@ieeesa-npm/presentation';
|
|
6
|
+
import { AlignType, TabsComponent, RouteParam, } from '@ieeesa-npm/presentation';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "../../services/events-and-meetings.service";
|
|
9
9
|
import * as i2 from "@angular/router";
|
|
10
10
|
import * as i3 from "@angular/material/dialog";
|
|
11
11
|
import * as i4 from "@angular/common";
|
|
12
|
-
// ToDo must import from ieeesa-npm/presentation
|
|
13
|
-
// import { TabsComponent } from '@presentation/components/tabs/tabs.component';
|
|
14
|
-
// ToDo must import from ieeesa-npm/presentation
|
|
15
|
-
// import { RouteParam } from '@presentation/classes/route-param.class';
|
|
16
12
|
export class AddMeetingComponent {
|
|
17
13
|
constructor(
|
|
18
14
|
// eslint-disable-next-line no-unused-vars
|
|
@@ -54,8 +50,6 @@ export class AddMeetingComponent {
|
|
|
54
50
|
?.unsavedFormChangesConfirmationDialogOptions;
|
|
55
51
|
this.routeParam = new RouteParam();
|
|
56
52
|
this.routeParam = new RouteParam();
|
|
57
|
-
this.isStandaloneMeeting =
|
|
58
|
-
this.eventsAndMeetingsService.getStandaloneMeetingStatus();
|
|
59
53
|
}
|
|
60
54
|
/**
|
|
61
55
|
* Sets selected meeting id and form change status.
|
|
@@ -65,6 +59,13 @@ export class AddMeetingComponent {
|
|
|
65
59
|
if (!this.isParentAppLoaded) {
|
|
66
60
|
this.eventsAndMeetingsService.makeApiBaseUrlAndUserPermissionsSimulated();
|
|
67
61
|
}
|
|
62
|
+
this.eventsAndMeetingsService.setStandaloneMeetingStatus(this.routeParam.eventId && this.routeParam.meetingId
|
|
63
|
+
? false
|
|
64
|
+
: !this.routeParam.eventId);
|
|
65
|
+
this.isStandaloneMeeting =
|
|
66
|
+
this.eventsAndMeetingsService.getStandaloneMeetingStatus();
|
|
67
|
+
this.routePaths =
|
|
68
|
+
this.routePaths ?? this.eventsAndMeetingsService.getRoutePaths();
|
|
68
69
|
this.eventsAndMeetingsService.setSelectedEventId(this.eventId ?? '');
|
|
69
70
|
this.eventsAndMeetingsService.setSelectedMeetingId(this.meetingId ?? '');
|
|
70
71
|
this.routeParam.eventId = this.eventId ?? '';
|
|
@@ -110,7 +111,7 @@ export class AddMeetingComponent {
|
|
|
110
111
|
this.confirmationModalTexts?.promptMessageOnCancel;
|
|
111
112
|
this.formCancel.emit();
|
|
112
113
|
if (this.isStandaloneMeeting) {
|
|
113
|
-
this.router?.navigateByUrl(this.
|
|
114
|
+
this.router?.navigateByUrl(this.routePaths.eventsAndMeetings);
|
|
114
115
|
}
|
|
115
116
|
else if (!this.isStandaloneMeeting &&
|
|
116
117
|
this.eventsAndMeetingsService?.getEventOrMeetingFormChangeStatus()) {
|
|
@@ -154,7 +155,7 @@ export class AddMeetingComponent {
|
|
|
154
155
|
this.destroy$?.unsubscribe();
|
|
155
156
|
}
|
|
156
157
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddMeetingComponent, deps: [{ token: i1.EventsAndMeetingsService }, { token: i2.Router }, { token: i3.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
157
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddMeetingComponent, isStandalone: true, selector: "ieeesa-add-meeting-form", inputs: { eventId: "eventId", meetingId: "meetingId", isParentAppLoaded: "isParentAppLoaded" }, outputs: { formCancel: "formCancel" }, viewQueries: [{ propertyName: "tabsComponentRef", first: true, predicate: TabsComponent, descendants: true }], ngImport: i0, template: "<div\r\n [ngClass]=\"selectedMeetingId && isStandaloneMeeting ? 'ieeesa-meeting' : ''\"\r\n>\r\n <p\r\n *ngIf=\"selectedMeetingId && isStandaloneMeeting\"\r\n class=\"ieeesa-title-lg-24 pb-3 m-0\"\r\n >\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [routeParam]=\"routeParam\"\r\n [selectedTabIndex]=\"selectedTabIndex\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TabsComponent, selector: "ieeesa-tabs", inputs: ["selectedTabIndex", "tabs", "isFormChanged", "confirmationModalConfig", "routeParam"], outputs: ["selectedIndexChange"] }] }); }
|
|
158
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddMeetingComponent, isStandalone: true, selector: "ieeesa-add-meeting-form", inputs: { eventId: "eventId", meetingId: "meetingId", isParentAppLoaded: "isParentAppLoaded", routePaths: "routePaths" }, outputs: { formCancel: "formCancel" }, viewQueries: [{ propertyName: "tabsComponentRef", first: true, predicate: TabsComponent, descendants: true }], ngImport: i0, template: "<div\r\n [ngClass]=\"selectedMeetingId && isStandaloneMeeting ? 'ieeesa-meeting' : ''\"\r\n>\r\n <p\r\n *ngIf=\"selectedMeetingId && isStandaloneMeeting\"\r\n class=\"ieeesa-title-lg-24 pb-3 m-0\"\r\n >\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [routeParam]=\"routeParam\"\r\n [selectedTabIndex]=\"selectedTabIndex\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TabsComponent, selector: "ieeesa-tabs", inputs: ["selectedTabIndex", "tabs", "isFormChanged", "confirmationModalConfig", "routeParam"], outputs: ["selectedIndexChange"] }] }); }
|
|
158
159
|
}
|
|
159
160
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddMeetingComponent, decorators: [{
|
|
160
161
|
type: Component,
|
|
@@ -170,5 +171,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
170
171
|
type: Input
|
|
171
172
|
}], isParentAppLoaded: [{
|
|
172
173
|
type: Input
|
|
174
|
+
}], routePaths: [{
|
|
175
|
+
type: Input
|
|
173
176
|
}] } });
|
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW1lZXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEtBQUssV0FBVyxNQUFNLDZCQUE2QixDQUFDO0FBSTNELE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFDTCxTQUFTLEVBR1QsYUFBYSxFQUNiLFVBQVUsRUFDWCxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7QUFFbEMsZ0RBQWdEO0FBQ2hELGdGQUFnRjtBQUNoRixnREFBZ0Q7QUFDaEQsd0VBQXdFO0FBU3hFLE1BQU0sT0FBTyxtQkFBbUI7SUF5QzlCO0lBQ0UsMENBQTBDO0lBQ2xDLHdCQUFrRDtJQUMxRCwwQ0FBMEM7SUFDbEMsTUFBYztJQUN0QiwwQ0FBMEM7SUFDbkMsTUFBaUI7UUFKaEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUVsRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBRWYsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQTVDMUIsOERBQThEO1FB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Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ3JlYXRlTW9kaWZ5TWVldGluZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NyZWF0ZS1tb2RpZnktbWVldGluZy9jcmVhdGUtbW9kaWZ5LW1lZXRpbmcuY29tcG9uZW50JztcclxuaW1wb3J0ICogYXMgc2NyZWVuVGV4dHMgZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuaW1wb3J0IHsgRXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLWFuZC1tZWV0aW5ncy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGVhY3RpdmF0ZUNvbXBvbmVudCB9IGZyb20gJ0BpZWVlc2EtbnBtL3V0aWxpdHknO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBBbGlnblR5cGUsXHJcbiAgQ29uZmlybWF0aW9uTW9kYWxEYXRhLFxyXG4gIFRhYixcclxuICBUYWJzQ29tcG9uZW50LFxyXG4gIFJvdXRlUGFyYW1cclxufSBmcm9tICdAaWVlZXNhLW5wbS9wcmVzZW50YXRpb24nO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG4vLyBUb0RvIG11c3QgaW1wb3J0IGZyb20gaWVlZXNhLW5wbS9wcmVzZW50YXRpb25cclxuLy8gaW1wb3J0IHsgVGFic0NvbXBvbmVudCB9IGZyb20gJ0BwcmVzZW50YXRpb24vY29tcG9uZW50cy90YWJzL3RhYnMuY29tcG9uZW50JztcclxuLy8gVG9EbyBtdXN0IGltcG9ydCBmcm9tIGllZWVzYS1ucG0vcHJlc2VudGF0aW9uXHJcbi8vIGltcG9ydCB7IFJvdXRlUGFyYW0gfSBmcm9tICdAcHJlc2VudGF0aW9uL2NsYXNzZXMvcm91dGUtcGFyYW0uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZWVlc2EtYWRkLW1lZXRpbmctZm9ybScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUYWJzQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWRkLW1lZXRpbmcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FkZC1tZWV0aW5nLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQsIERlYWN0aXZhdGVDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxyXG57XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBzY3JlZW5UZXh0czogYW55ID0gc2NyZWVuVGV4dHM7XHJcbiAgbWVldGluZ0Zvcm1UYWJzOiBUYWJbXSA9IFtcclxuICAgIHtcclxuICAgICAgaWQ6IDEsXHJcbiAgICAgIGxhYmVsOiB0aGlzLnNjcmVlblRleHRzPy5hZGRNZWV0aW5nPy50YWJzPy5sYWJlbD8uaW5mbyxcclxuICAgICAgY29tcG9uZW50UmVmOiBDcmVhdGVNb2RpZnlNZWV0aW5nQ29tcG9uZW50LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgaWQ6IDIsXHJcbiAgICAgIGxhYmVsOiB0aGlzLnNjcmVlblRleHRzPy5hZGRNZWV0aW5nPy50YWJzPy5sYWJlbD8uYWdlbmRhLFxyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgaWQ6IDMsXHJcbiAgICAgIGxhYmVsOiB0aGlzLnNjcmVlblRleHRzPy5hZGRNZWV0aW5nPy50YWJzPy5sYWJlbD8uYXR0ZW5kZWVzLFxyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LFxyXG4gICAgfSxcclxuICBdO1xyXG4gIHNlbGVjdGVkVGFiSW5kZXggPSAwO1xyXG4gIHNlbGVjdGVkTWVldGluZ0lkITogc3RyaW5nO1xyXG4gIGlzU3RhbmRhbG9uZU1lZXRpbmcgPSB0cnVlO1xyXG4gIEBWaWV3Q2hpbGQoVGFic0NvbXBvbmVudCkgdGFic0NvbXBvbmVudFJlZiE6IFRhYnNDb21wb25lbnQ7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBkaWFsb2dSZWY6IGFueTtcclxuICBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgaXNGb3JtQ2hhbmdlZCA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBmb3JtQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnITogQ29uZmlybWF0aW9uTW9kYWxEYXRhO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsVGV4dHMgPVxyXG4gICAgdGhpcy5zY3JlZW5UZXh0cz8uY3JlYXRlTW9kaWZ5RXZlbnRPck1lZXRpbmdcclxuICAgICAgPy51bnNhdmVkRm9ybUNoYW5nZXNDb25maXJtYXRpb25EaWFsb2dPcHRpb25zO1xyXG4gIEBJbnB1dCgpIGV2ZW50SWQhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWVldGluZ0lkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzUGFyZW50QXBwTG9hZGVkITogYm9vbGVhbjtcclxuICByb3V0ZVBhcmFtID0gbmV3IFJvdXRlUGFyYW0oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U6IEV2ZW50c0FuZE1lZXRpbmdzU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJvdXRlUGFyYW0gPSBuZXcgUm91dGVQYXJhbSgpO1xyXG4gICAgdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nID1cclxuICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2UuZ2V0U3RhbmRhbG9uZU1lZXRpbmdTdGF0dXMoKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogU2V0cyBzZWxlY3RlZCBtZWV0aW5nIGlkIGFuZCBmb3JtIGNoYW5nZSBzdGF0dXMuXHJcbiAgICogQG1lbWJlcm9mIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICAgKi9cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pc1BhcmVudEFwcExvYWRlZCkge1xyXG4gICAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5tYWtlQXBpQmFzZVVybEFuZFVzZXJQZXJtaXNzaW9uc1NpbXVsYXRlZCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2Uuc2V0U2VsZWN0ZWRFdmVudElkKHRoaXMuZXZlbnRJZCA/PyAnJyk7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRTZWxlY3RlZE1lZXRpbmdJZCh0aGlzLm1lZXRpbmdJZCA/PyAnJyk7XHJcbiAgICB0aGlzLnJvdXRlUGFyYW0uZXZlbnRJZCA9IHRoaXMuZXZlbnRJZCA/PyAnJztcclxuICAgIHRoaXMucm91dGVQYXJhbS5tZWV0aW5nSWQgPSB0aGlzLm1lZXRpbmdJZCA/PyAnJztcclxuICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxDb25maWcgPSB7XHJcbiAgICAgIGxlZnRCdXR0b25MYWJlbDogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5sZWZ0QnV0dG9uTGFiZWwsXHJcbiAgICAgIHJpZ2h0QnV0dG9uTGFiZWw6IHRoaXMuY29uZmlybWF0aW9uTW9kYWxUZXh0cz8ucmlnaHRCdXR0b25MYWJlbCxcclxuICAgICAgcHJvbXB0TWVzc2FnZTogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5wcm9tcHRNZXNzYWdlLFxyXG4gICAgICBhY3Rpb25CdXR0b25BbGlnbjogQWxpZ25UeXBlLk1JRERMRSxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlbGVjdGVkTWVldGluZ0lkID0gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LnNlbGVjdGVkTWVldGluZ0lkO1xyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmZvcm1TdGF0dXNDaGFuZ2VOb3RpZmllciRcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gc3RhdHVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgY29uZmlybWF0aW9uIG1vZGFsIHdoaWxlIGxlYXZpbmcgdW5zYXZlZCBmb3JtLlxyXG4gICAqIEByZXR1cm4geyhib29sZWFuXHJcbiAgICogICAgIHwgVXJsVHJlZVxyXG4gICAqICAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICogICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pfVxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY2FuRGVhY3RpdmF0ZSgpOlxyXG4gICAgfCBib29sZWFuXHJcbiAgICB8IFVybFRyZWVcclxuICAgIHwgT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT5cclxuICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT5cclxuICAgIHwgYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmdldEV2ZW50T3JNZWV0aW5nRm9ybUNoYW5nZVN0YXR1cygpKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/Lm9wZW5Db25maXJtYXRpb25Nb2RhbChcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTtcclxuICAgICAgcmV0dXJuIHRoaXMuZGlhbG9nUmVmPy5hZnRlckNsb3NlZCgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgZm9ybSBjYW5jZWwgZXZlbnRzIGluIHRoZSB0YWIgY29tcG9uZW50LlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50YWJzQ29tcG9uZW50UmVmPy5mb3JtQ2FuY2VsXHJcbiAgICAgID8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgID8uc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnLnByb21wdE1lc3NhZ2UgPVxyXG4gICAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5wcm9tcHRNZXNzYWdlT25DYW5jZWw7XHJcbiAgICAgICAgdGhpcy5mb3JtQ2FuY2VsLmVtaXQoKTtcclxuICAgICAgICBpZiAodGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nKSB7XHJcbiAgICAgICAgICB0aGlzLnJvdXRlcj8ubmF2aWdhdGVCeVVybChcclxuICAgICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmdldFJvdXRlUGF0aHMoKT8uZXZlbnRzQW5kTWVldGluZ3NcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChcclxuICAgICAgICAgICF0aGlzLmlzU3RhbmRhbG9uZU1lZXRpbmcgJiZcclxuICAgICAgICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5kaWFsb2dSZWYgPSB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8ub3BlbkNvbmZpcm1hdGlvbk1vZGFsKFxyXG4gICAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbEFjdGlvbigpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgICAhdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nICYmXHJcbiAgICAgICAgICAhdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmdldEV2ZW50T3JNZWV0aW5nRm9ybUNoYW5nZVN0YXR1cygpXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uY2FuQ2xvc2VBZGRNZWV0aW5nTW9kYWwkPy5uZXh0KHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgY29uZmlybWF0aW9uIG1vZGFsIGFjdGlvbnMuXHJcbiAgICogQG1lbWJlcm9mIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICAgKi9cclxuICBjb25maXJtYXRpb25Nb2RhbEFjdGlvbigpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmXHJcbiAgICAgID8uYWZ0ZXJDbG9zZWQoKVxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSgocmVzdWx0OiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCAmJiAhdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nKSB7XHJcbiAgICAgICAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uY2FuQ2xvc2VBZGRNZWV0aW5nTW9kYWwkPy5uZXh0KHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFNldHMgaXNGb3JtQ2hhbmdlZCBzdGF0dXMgdG8gZmFsc2Ugb24gdGFiIGNoYW5nZXMuXHJcbiAgICogQG1lbWJlcm9mIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICAgKi9cclxuICBvblNlbGVjdGVkVGFiSW5kZXhDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9ybUNoYW5nZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlLnNldEV2ZW50T3JNZWV0aW5nRm9ybUNoYW5nZVN0YXR1cyhmYWxzZSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFVuc3Vic2NyaWJlcyB0aGUgc3Vic2NyaXB0aW9uIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBiZWluZyBkZXN0cm95ZWQuXHJcbiAgICogQG1lbWJlcm9mIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQ/Lm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgW25nQ2xhc3NdPVwic2VsZWN0ZWRNZWV0aW5nSWQgJiYgaXNTdGFuZGFsb25lTWVldGluZyA/ICdpZWVlc2EtbWVldGluZycgOiAnJ1wiXHJcbj5cclxuICA8cFxyXG4gICAgKm5nSWY9XCJzZWxlY3RlZE1lZXRpbmdJZCAmJiBpc1N0YW5kYWxvbmVNZWV0aW5nXCJcclxuICAgIGNsYXNzPVwiaWVlZXNhLXRpdGxlLWxnLTI0IHBiLTMgbS0wXCJcclxuICA+XHJcbiAgICB7eyBzY3JlZW5UZXh0cz8uY3JlYXRlT3JNb2RpZnlNZWV0aW5nPy5sYWJlbD8ubWVldGluZ0RldGFpbHMgfX1cclxuICA8L3A+XHJcbiAgPGllZWVzYS10YWJzXHJcbiAgICBbdGFic109XCJtZWV0aW5nRm9ybVRhYnNcIlxyXG4gICAgW3JvdXRlUGFyYW1dPVwicm91dGVQYXJhbVwiXHJcbiAgICBbc2VsZWN0ZWRUYWJJbmRleF09XCJzZWxlY3RlZFRhYkluZGV4XCJcclxuICAgIFtpc0Zvcm1DaGFuZ2VkXT1cImlzRm9ybUNoYW5nZWRcIlxyXG4gICAgKHNlbGVjdGVkSW5kZXhDaGFuZ2UpPVwib25TZWxlY3RlZFRhYkluZGV4Q2hhbmdlKClcIlxyXG4gICAgW2NvbmZpcm1hdGlvbk1vZGFsQ29uZmlnXT1cImNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnXCJcclxuICA+PC9pZWVlc2EtdGFicz5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW1lZXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEtBQUssV0FBVyxNQUFNLDZCQUE2QixDQUFDO0FBSTNELE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFDTCxTQUFTLEVBR1QsYUFBYSxFQUNiLFVBQVUsR0FDWCxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7QUFXbEMsTUFBTSxPQUFPLG1CQUFtQjtJQTBDOUI7SUFDRSwwQ0FBMEM7SUFDbEMsd0JBQWtEO0lBQzFELDBDQUEwQztJQUNsQyxNQUFjO0lBQ3RCLDBDQUEwQztJQUNuQyxNQUFpQjtRQUpoQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBRWxELFdBQU0sR0FBTixNQUFNLENBQVE7UUFFZixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBN0MxQiw4REFBOEQ7UUFDOUQsZ0JBQVcsR0FBUSxXQUFXLENBQUM7UUFDL0Isb0JBQWUsR0FBVTtZQUN2QjtnQkFD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RkFJMUIsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDOzRKQStCWixnQkFBZ0I7c0JBQXpDLFNBQVM7dUJBQUMsYUFBYTtnQkFLZCxVQUFVO3NCQUFuQixNQUFNO2dCQUtFLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ3JlYXRlTW9kaWZ5TWVldGluZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NyZWF0ZS1tb2RpZnktbWVldGluZy9jcmVhdGUtbW9kaWZ5LW1lZXRpbmcuY29tcG9uZW50JztcclxuaW1wb3J0ICogYXMgc2NyZWVuVGV4dHMgZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuaW1wb3J0IHsgRXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLWFuZC1tZWV0aW5ncy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGVhY3RpdmF0ZUNvbXBvbmVudCB9IGZyb20gJ0BpZWVlc2EtbnBtL3V0aWxpdHknO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBBbGlnblR5cGUsXHJcbiAgQ29uZmlybWF0aW9uTW9kYWxEYXRhLFxyXG4gIFRhYixcclxuICBUYWJzQ29tcG9uZW50LFxyXG4gIFJvdXRlUGFyYW0sXHJcbn0gZnJvbSAnQGllZWVzYS1ucG0vcHJlc2VudGF0aW9uJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgRXZlbnRzQW5kTWVldGluZ1JvdXRlQ29uZmlnIH0gZnJvbSAnQGllZWVzYS1ucG0vc2hhcmVkJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWVlZXNhLWFkZC1tZWV0aW5nLWZvcm0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVGFic0NvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1tZWV0aW5nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hZGQtbWVldGluZy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkTWVldGluZ0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25Jbml0LCBEZWFjdGl2YXRlQ29tcG9uZW50LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcclxue1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgc2NyZWVuVGV4dHM6IGFueSA9IHNjcmVlblRleHRzO1xyXG4gIG1lZXRpbmdGb3JtVGFiczogVGFiW10gPSBbXHJcbiAgICB7XHJcbiAgICAgIGlkOiAxLFxyXG4gICAgICBsYWJlbDogdGhpcy5zY3JlZW5UZXh0cz8uYWRkTWVldGluZz8udGFicz8ubGFiZWw/LmluZm8sXHJcbiAgICAgIGNvbXBvbmVudFJlZjogQ3JlYXRlTW9kaWZ5TWVldGluZ0NvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGlkOiAyLFxyXG4gICAgICBsYWJlbDogdGhpcy5zY3JlZW5UZXh0cz8uYWRkTWVldGluZz8udGFicz8ubGFiZWw/LmFnZW5kYSxcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PixcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGlkOiAzLFxyXG4gICAgICBsYWJlbDogdGhpcy5zY3JlZW5UZXh0cz8uYWRkTWVldGluZz8udGFicz8ubGFiZWw/LmF0dGVuZGVlcyxcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PixcclxuICAgIH0sXHJcbiAgXTtcclxuICBzZWxlY3RlZFRhYkluZGV4ID0gMDtcclxuICBzZWxlY3RlZE1lZXRpbmdJZCE6IHN0cmluZztcclxuICBpc1N0YW5kYWxvbmVNZWV0aW5nID0gdHJ1ZTtcclxuICBAVmlld0NoaWxkKFRhYnNDb21wb25lbnQpIHRhYnNDb21wb25lbnRSZWYhOiBUYWJzQ29tcG9uZW50O1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgZGlhbG9nUmVmOiBhbnk7XHJcbiAgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gIGlzRm9ybUNoYW5nZWQgPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgZm9ybUNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBjb25maXJtYXRpb25Nb2RhbENvbmZpZyE6IENvbmZpcm1hdGlvbk1vZGFsRGF0YTtcclxuICBjb25maXJtYXRpb25Nb2RhbFRleHRzID1cclxuICAgIHRoaXMuc2NyZWVuVGV4dHM/LmNyZWF0ZU1vZGlmeUV2ZW50T3JNZWV0aW5nXHJcbiAgICAgID8udW5zYXZlZEZvcm1DaGFuZ2VzQ29uZmlybWF0aW9uRGlhbG9nT3B0aW9ucztcclxuICBASW5wdXQoKSBldmVudElkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG1lZXRpbmdJZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBpc1BhcmVudEFwcExvYWRlZCE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcm91dGVQYXRocyE6IEV2ZW50c0FuZE1lZXRpbmdSb3V0ZUNvbmZpZztcclxuICByb3V0ZVBhcmFtID0gbmV3IFJvdXRlUGFyYW0oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U6IEV2ZW50c0FuZE1lZXRpbmdzU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJvdXRlUGFyYW0gPSBuZXcgUm91dGVQYXJhbSgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIHNlbGVjdGVkIG1lZXRpbmcgaWQgYW5kIGZvcm0gY2hhbmdlIHN0YXR1cy5cclxuICAgKiBAbWVtYmVyb2YgQWRkTWVldGluZ0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzUGFyZW50QXBwTG9hZGVkKSB7XHJcbiAgICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlLm1ha2VBcGlCYXNlVXJsQW5kVXNlclBlcm1pc3Npb25zU2ltdWxhdGVkKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRTdGFuZGFsb25lTWVldGluZ1N0YXR1cyhcclxuICAgICAgdGhpcy5yb3V0ZVBhcmFtLmV2ZW50SWQgJiYgdGhpcy5yb3V0ZVBhcmFtLm1lZXRpbmdJZFxyXG4gICAgICAgID8gZmFsc2VcclxuICAgICAgICA6ICF0aGlzLnJvdXRlUGFyYW0uZXZlbnRJZFxyXG4gICAgKTtcclxuICAgIHRoaXMuaXNTdGFuZGFsb25lTWVldGluZyA9XHJcbiAgICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlLmdldFN0YW5kYWxvbmVNZWV0aW5nU3RhdHVzKCk7XHJcbiAgICB0aGlzLnJvdXRlUGF0aHMgPVxyXG4gICAgICB0aGlzLnJvdXRlUGF0aHMgPz8gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2UuZ2V0Um91dGVQYXRocygpO1xyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2Uuc2V0U2VsZWN0ZWRFdmVudElkKHRoaXMuZXZlbnRJZCA/PyAnJyk7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRTZWxlY3RlZE1lZXRpbmdJZCh0aGlzLm1lZXRpbmdJZCA/PyAnJyk7XHJcbiAgICB0aGlzLnJvdXRlUGFyYW0uZXZlbnRJZCA9IHRoaXMuZXZlbnRJZCA/PyAnJztcclxuICAgIHRoaXMucm91dGVQYXJhbS5tZWV0aW5nSWQgPSB0aGlzLm1lZXRpbmdJZCA/PyAnJztcclxuICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxDb25maWcgPSB7XHJcbiAgICAgIGxlZnRCdXR0b25MYWJlbDogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5sZWZ0QnV0dG9uTGFiZWwsXHJcbiAgICAgIHJpZ2h0QnV0dG9uTGFiZWw6IHRoaXMuY29uZmlybWF0aW9uTW9kYWxUZXh0cz8ucmlnaHRCdXR0b25MYWJlbCxcclxuICAgICAgcHJvbXB0TWVzc2FnZTogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5wcm9tcHRNZXNzYWdlLFxyXG4gICAgICBhY3Rpb25CdXR0b25BbGlnbjogQWxpZ25UeXBlLk1JRERMRSxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlbGVjdGVkTWVldGluZ0lkID0gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LnNlbGVjdGVkTWVldGluZ0lkO1xyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmZvcm1TdGF0dXNDaGFuZ2VOb3RpZmllciRcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gc3RhdHVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgY29uZmlybWF0aW9uIG1vZGFsIHdoaWxlIGxlYXZpbmcgdW5zYXZlZCBmb3JtLlxyXG4gICAqIEByZXR1cm4geyhib29sZWFuXHJcbiAgICogICAgIHwgVXJsVHJlZVxyXG4gICAqICAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICogICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pfVxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY2FuRGVhY3RpdmF0ZSgpOlxyXG4gICAgfCBib29sZWFuXHJcbiAgICB8IFVybFRyZWVcclxuICAgIHwgT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT5cclxuICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT5cclxuICAgIHwgYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmdldEV2ZW50T3JNZWV0aW5nRm9ybUNoYW5nZVN0YXR1cygpKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/Lm9wZW5Db25maXJtYXRpb25Nb2RhbChcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTtcclxuICAgICAgcmV0dXJuIHRoaXMuZGlhbG9nUmVmPy5hZnRlckNsb3NlZCgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgZm9ybSBjYW5jZWwgZXZlbnRzIGluIHRoZSB0YWIgY29tcG9uZW50LlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50YWJzQ29tcG9uZW50UmVmPy5mb3JtQ2FuY2VsXHJcbiAgICAgID8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgID8uc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnLnByb21wdE1lc3NhZ2UgPVxyXG4gICAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5wcm9tcHRNZXNzYWdlT25DYW5jZWw7XHJcbiAgICAgICAgdGhpcy5mb3JtQ2FuY2VsLmVtaXQoKTtcclxuICAgICAgICBpZiAodGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nKSB7XHJcbiAgICAgICAgICB0aGlzLnJvdXRlcj8ubmF2aWdhdGVCeVVybCh0aGlzLnJvdXRlUGF0aHMuZXZlbnRzQW5kTWVldGluZ3MpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgICAhdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nICYmXHJcbiAgICAgICAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uZ2V0RXZlbnRPck1lZXRpbmdGb3JtQ2hhbmdlU3RhdHVzKClcclxuICAgICAgICApIHtcclxuICAgICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/Lm9wZW5Db25maXJtYXRpb25Nb2RhbChcclxuICAgICAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZ1xyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTtcclxuICAgICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgICAgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZyAmJlxyXG4gICAgICAgICAgIXRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGNvbmZpcm1hdGlvbiBtb2RhbCBhY3Rpb25zLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZlxyXG4gICAgICA/LmFmdGVyQ2xvc2VkKClcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoKHJlc3VsdDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQgJiYgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZykge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIGlzRm9ybUNoYW5nZWQgc3RhdHVzIHRvIGZhbHNlIG9uIHRhYiBjaGFuZ2VzLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25TZWxlY3RlZFRhYkluZGV4Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoZmFsc2UpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBVbnN1YnNjcmliZXMgdGhlIHN1YnNjcmlwdGlvbiB3aGVuIHRoZSBjb21wb25lbnQgaXMgYmVpbmcgZGVzdHJveWVkLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkPy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JD8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIFtuZ0NsYXNzXT1cInNlbGVjdGVkTWVldGluZ0lkICYmIGlzU3RhbmRhbG9uZU1lZXRpbmcgPyAnaWVlZXNhLW1lZXRpbmcnIDogJydcIlxyXG4+XHJcbiAgPHBcclxuICAgICpuZ0lmPVwic2VsZWN0ZWRNZWV0aW5nSWQgJiYgaXNTdGFuZGFsb25lTWVldGluZ1wiXHJcbiAgICBjbGFzcz1cImllZWVzYS10aXRsZS1sZy0yNCBwYi0zIG0tMFwiXHJcbiAgPlxyXG4gICAge3sgc2NyZWVuVGV4dHM/LmNyZWF0ZU9yTW9kaWZ5TWVldGluZz8ubGFiZWw/Lm1lZXRpbmdEZXRhaWxzIH19XHJcbiAgPC9wPlxyXG4gIDxpZWVlc2EtdGFic1xyXG4gICAgW3RhYnNdPVwibWVldGluZ0Zvcm1UYWJzXCJcclxuICAgIFtyb3V0ZVBhcmFtXT1cInJvdXRlUGFyYW1cIlxyXG4gICAgW3NlbGVjdGVkVGFiSW5kZXhdPVwic2VsZWN0ZWRUYWJJbmRleFwiXHJcbiAgICBbaXNGb3JtQ2hhbmdlZF09XCJpc0Zvcm1DaGFuZ2VkXCJcclxuICAgIChzZWxlY3RlZEluZGV4Q2hhbmdlKT1cIm9uU2VsZWN0ZWRUYWJJbmRleENoYW5nZSgpXCJcclxuICAgIFtjb25maXJtYXRpb25Nb2RhbENvbmZpZ109XCJjb25maXJtYXRpb25Nb2RhbENvbmZpZ1wiXHJcbiAgPjwvaWVlZXNhLXRhYnM+XHJcbjwvZGl2PlxyXG4iXX0=
|