@ironcode/vas-lib 0.0.40 → 1.0.1
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/cjs/lib/entity/index.d.ts +10 -0
- package/cjs/lib/entity/index.d.ts.map +1 -1
- package/cjs/lib/entity/index.js +10 -0
- package/cjs/lib/entity/index.js.map +1 -1
- package/cjs/lib/entity/vas-account-object.model.d.ts +3 -1
- package/cjs/lib/entity/vas-account-object.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-account-object.model.js +4 -2
- package/cjs/lib/entity/vas-account-object.model.js.map +1 -1
- package/cjs/lib/entity/vas-base.dto.d.ts +2 -0
- package/cjs/lib/entity/vas-base.dto.d.ts.map +1 -1
- package/cjs/lib/entity/vas-base.dto.js.map +1 -1
- package/cjs/lib/entity/vas-base.model.d.ts +3 -10
- package/cjs/lib/entity/vas-base.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-base.model.js +3 -10
- package/cjs/lib/entity/vas-base.model.js.map +1 -1
- package/cjs/lib/entity/vas-branch.model.d.ts +3 -1
- package/cjs/lib/entity/vas-branch.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-branch.model.js +7 -3
- package/cjs/lib/entity/vas-branch.model.js.map +1 -1
- package/cjs/lib/entity/vas-contact.dto.d.ts +7 -0
- package/cjs/lib/entity/vas-contact.dto.d.ts.map +1 -1
- package/cjs/lib/entity/vas-contact.dto.js.map +1 -1
- package/cjs/lib/entity/vas-contact.model.d.ts +11 -1
- package/cjs/lib/entity/vas-contact.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-contact.model.js +24 -3
- package/cjs/lib/entity/vas-contact.model.js.map +1 -1
- package/cjs/lib/entity/vas-control-type.model.d.ts +5 -9
- package/cjs/lib/entity/vas-control-type.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-control-type.model.js +13 -13
- package/cjs/lib/entity/vas-control-type.model.js.map +1 -1
- package/cjs/lib/entity/vas-control.dto.d.ts +3 -1
- package/cjs/lib/entity/vas-control.dto.d.ts.map +1 -1
- package/cjs/lib/entity/vas-control.dto.js.map +1 -1
- package/cjs/lib/entity/vas-control.model.d.ts +11 -37
- package/cjs/lib/entity/vas-control.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-control.model.js +40 -50
- package/cjs/lib/entity/vas-control.model.js.map +1 -1
- package/cjs/lib/entity/vas-field.model.d.ts +3 -1
- package/cjs/lib/entity/vas-field.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-field.model.js +7 -3
- package/cjs/lib/entity/vas-field.model.js.map +1 -1
- package/cjs/lib/entity/vas-file.model.d.ts +4 -2
- package/cjs/lib/entity/vas-file.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-file.model.js +9 -5
- package/cjs/lib/entity/vas-file.model.js.map +1 -1
- package/cjs/lib/entity/vas-fire-user.model.d.ts +6 -1
- package/cjs/lib/entity/vas-fire-user.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-fire-user.model.js +14 -4
- package/cjs/lib/entity/vas-fire-user.model.js.map +1 -1
- package/cjs/lib/entity/vas-form.dto.d.ts +1 -0
- package/cjs/lib/entity/vas-form.dto.d.ts.map +1 -1
- package/cjs/lib/entity/vas-form.dto.js.map +1 -1
- package/cjs/lib/entity/vas-form.model.d.ts +7 -22
- package/cjs/lib/entity/vas-form.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-form.model.js +27 -42
- package/cjs/lib/entity/vas-form.model.js.map +1 -1
- package/cjs/lib/entity/vas-group.model.d.ts +3 -22
- package/cjs/lib/entity/vas-group.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-group.model.js +7 -24
- package/cjs/lib/entity/vas-group.model.js.map +1 -1
- package/cjs/lib/entity/vas-instruction-job-field.dto.d.ts +6 -0
- package/cjs/lib/entity/vas-instruction-job-field.dto.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-job-field.dto.js +3 -0
- package/cjs/lib/entity/vas-instruction-job-field.dto.js.map +1 -0
- package/cjs/lib/entity/vas-instruction-job-field.model.d.ts +23 -0
- package/cjs/lib/entity/vas-instruction-job-field.model.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-job-field.model.js +46 -0
- package/cjs/lib/entity/vas-instruction-job-field.model.js.map +1 -0
- package/cjs/lib/entity/vas-instruction-job.dto.d.ts +16 -0
- package/cjs/lib/entity/vas-instruction-job.dto.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-job.dto.js +3 -0
- package/cjs/lib/entity/vas-instruction-job.dto.js.map +1 -0
- package/cjs/lib/entity/vas-instruction-job.model.d.ts +58 -0
- package/cjs/lib/entity/vas-instruction-job.model.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-job.model.js +85 -0
- package/cjs/lib/entity/vas-instruction-job.model.js.map +1 -0
- package/cjs/lib/entity/vas-instruction-provider.dto.d.ts +9 -0
- package/cjs/lib/entity/vas-instruction-provider.dto.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-provider.dto.js +3 -0
- package/cjs/lib/entity/vas-instruction-provider.dto.js.map +1 -0
- package/cjs/lib/entity/vas-instruction-provider.model.d.ts +34 -0
- package/cjs/lib/entity/vas-instruction-provider.model.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction-provider.model.js +62 -0
- package/cjs/lib/entity/vas-instruction-provider.model.js.map +1 -0
- package/cjs/lib/entity/vas-instruction.dto.d.ts +6 -0
- package/cjs/lib/entity/vas-instruction.dto.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction.dto.js +3 -0
- package/cjs/lib/entity/vas-instruction.dto.js.map +1 -0
- package/cjs/lib/entity/vas-instruction.model.d.ts +30 -0
- package/cjs/lib/entity/vas-instruction.model.d.ts.map +1 -0
- package/cjs/lib/entity/vas-instruction.model.js +53 -0
- package/cjs/lib/entity/vas-instruction.model.js.map +1 -0
- package/cjs/lib/entity/vas-invitation.d.ts +36 -3
- package/cjs/lib/entity/vas-invitation.d.ts.map +1 -1
- package/cjs/lib/entity/vas-invitation.js +57 -4
- package/cjs/lib/entity/vas-invitation.js.map +1 -1
- package/cjs/lib/entity/vas-job-data.model.d.ts +3 -12
- package/cjs/lib/entity/vas-job-data.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-job-data.model.js +4 -13
- package/cjs/lib/entity/vas-job-data.model.js.map +1 -1
- package/cjs/lib/entity/vas-job.model.d.ts +8 -37
- package/cjs/lib/entity/vas-job.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-job.model.js +16 -48
- package/cjs/lib/entity/vas-job.model.js.map +1 -1
- package/cjs/lib/entity/vas-job.model.spec-data.d.ts +1 -2
- package/cjs/lib/entity/vas-job.model.spec-data.d.ts.map +1 -1
- package/cjs/lib/entity/vas-job.model.spec-data.js +15 -55
- package/cjs/lib/entity/vas-job.model.spec-data.js.map +1 -1
- package/cjs/lib/entity/vas-membership.model.d.ts +3 -1
- package/cjs/lib/entity/vas-membership.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-membership.model.js +7 -3
- package/cjs/lib/entity/vas-membership.model.js.map +1 -1
- package/cjs/lib/entity/vas-note.dto.d.ts +7 -0
- package/cjs/lib/entity/vas-note.dto.d.ts.map +1 -0
- package/cjs/lib/entity/vas-note.dto.js +3 -0
- package/cjs/lib/entity/vas-note.dto.js.map +1 -0
- package/cjs/lib/entity/vas-note.model.d.ts +31 -0
- package/cjs/lib/entity/vas-note.model.d.ts.map +1 -0
- package/cjs/lib/entity/vas-note.model.js +54 -0
- package/cjs/lib/entity/vas-note.model.js.map +1 -0
- package/cjs/lib/entity/vas-report-layout.model.d.ts +3 -1
- package/cjs/lib/entity/vas-report-layout.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-report-layout.model.js +4 -2
- package/cjs/lib/entity/vas-report-layout.model.js.map +1 -1
- package/cjs/lib/entity/vas-report-request.model.d.ts +3 -1
- package/cjs/lib/entity/vas-report-request.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-report-request.model.js +7 -3
- package/cjs/lib/entity/vas-report-request.model.js.map +1 -1
- package/cjs/lib/entity/vas-report.model.d.ts +5 -3
- package/cjs/lib/entity/vas-report.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-report.model.js +10 -12
- package/cjs/lib/entity/vas-report.model.js.map +1 -1
- package/cjs/lib/entity/vas-restricted-account-object.model.d.ts +3 -1
- package/cjs/lib/entity/vas-restricted-account-object.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-restricted-account-object.model.js +4 -2
- package/cjs/lib/entity/vas-restricted-account-object.model.js.map +1 -1
- package/cjs/lib/entity/vas-user.dto.d.ts +3 -0
- package/cjs/lib/entity/vas-user.dto.d.ts.map +1 -1
- package/cjs/lib/entity/vas-user.dto.js.map +1 -1
- package/cjs/lib/entity/vas-user.model.d.ts +6 -1
- package/cjs/lib/entity/vas-user.model.d.ts.map +1 -1
- package/cjs/lib/entity/vas-user.model.js +14 -4
- package/cjs/lib/entity/vas-user.model.js.map +1 -1
- package/cjs/package.json +12 -6
- package/esm2020/lib/entity/index.mjs +11 -1
- package/esm2020/lib/entity/vas-account-object.model.mjs +5 -3
- package/esm2020/lib/entity/vas-base.dto.mjs +1 -1
- package/esm2020/lib/entity/vas-base.model.mjs +4 -11
- package/esm2020/lib/entity/vas-branch.model.mjs +8 -4
- package/esm2020/lib/entity/vas-contact.dto.mjs +1 -1
- package/esm2020/lib/entity/vas-contact.model.mjs +44 -4
- package/esm2020/lib/entity/vas-control-type.model.mjs +14 -14
- package/esm2020/lib/entity/vas-control.dto.mjs +1 -1
- package/esm2020/lib/entity/vas-control.model.mjs +45 -51
- package/esm2020/lib/entity/vas-field.model.mjs +8 -4
- package/esm2020/lib/entity/vas-file.model.mjs +10 -6
- package/esm2020/lib/entity/vas-fire-user.model.mjs +15 -5
- package/esm2020/lib/entity/vas-form.dto.mjs +1 -1
- package/esm2020/lib/entity/vas-form.model.mjs +28 -42
- package/esm2020/lib/entity/vas-group.model.mjs +8 -25
- package/esm2020/lib/entity/vas-instruction-job-field.dto.mjs +2 -0
- package/esm2020/lib/entity/vas-instruction-job-field.model.mjs +42 -0
- package/esm2020/lib/entity/vas-instruction-job.dto.mjs +2 -0
- package/esm2020/lib/entity/vas-instruction-job.model.mjs +81 -0
- package/esm2020/lib/entity/vas-instruction-provider.dto.mjs +2 -0
- package/esm2020/lib/entity/vas-instruction-provider.model.mjs +63 -0
- package/esm2020/lib/entity/vas-instruction.dto.mjs +2 -0
- package/esm2020/lib/entity/vas-instruction.model.mjs +49 -0
- package/esm2020/lib/entity/vas-invitation.mjs +60 -4
- package/esm2020/lib/entity/vas-job-data.model.mjs +5 -14
- package/esm2020/lib/entity/vas-job.model.mjs +17 -49
- package/esm2020/lib/entity/vas-membership.model.mjs +8 -4
- package/esm2020/lib/entity/vas-note.dto.mjs +2 -0
- package/esm2020/lib/entity/vas-note.model.mjs +50 -0
- package/esm2020/lib/entity/vas-report-layout.model.mjs +5 -3
- package/esm2020/lib/entity/vas-report-request.model.mjs +8 -4
- package/esm2020/lib/entity/vas-report.model.mjs +11 -13
- package/esm2020/lib/entity/vas-restricted-account-object.model.mjs +5 -3
- package/esm2020/lib/entity/vas-user.dto.mjs +1 -1
- package/esm2020/lib/entity/vas-user.model.mjs +15 -5
- package/fesm2015/ironcode-vas-lib.mjs +626 -329
- package/fesm2015/ironcode-vas-lib.mjs.map +1 -1
- package/fesm2020/ironcode-vas-lib.mjs +655 -326
- package/fesm2020/ironcode-vas-lib.mjs.map +1 -1
- package/lib/entity/index.d.ts +10 -0
- package/lib/entity/vas-account-object.model.d.ts +3 -1
- package/lib/entity/vas-base.dto.d.ts +2 -0
- package/lib/entity/vas-base.model.d.ts +3 -10
- package/lib/entity/vas-branch.model.d.ts +3 -1
- package/lib/entity/vas-contact.dto.d.ts +7 -0
- package/lib/entity/vas-contact.model.d.ts +11 -1
- package/lib/entity/vas-control-type.model.d.ts +5 -9
- package/lib/entity/vas-control.dto.d.ts +3 -1
- package/lib/entity/vas-control.model.d.ts +11 -37
- package/lib/entity/vas-field.model.d.ts +3 -1
- package/lib/entity/vas-file.model.d.ts +4 -2
- package/lib/entity/vas-fire-user.model.d.ts +6 -1
- package/lib/entity/vas-form.dto.d.ts +1 -0
- package/lib/entity/vas-form.model.d.ts +7 -22
- package/lib/entity/vas-group.model.d.ts +3 -22
- package/lib/entity/vas-instruction-job-field.dto.d.ts +5 -0
- package/lib/entity/vas-instruction-job-field.model.d.ts +22 -0
- package/lib/entity/vas-instruction-job.dto.d.ts +15 -0
- package/lib/entity/vas-instruction-job.model.d.ts +57 -0
- package/lib/entity/vas-instruction-provider.dto.d.ts +8 -0
- package/lib/entity/vas-instruction-provider.model.d.ts +33 -0
- package/lib/entity/vas-instruction.dto.d.ts +5 -0
- package/lib/entity/vas-instruction.model.d.ts +29 -0
- package/lib/entity/vas-invitation.d.ts +36 -3
- package/lib/entity/vas-job-data.model.d.ts +3 -12
- package/lib/entity/vas-job.model.d.ts +8 -37
- package/lib/entity/vas-membership.model.d.ts +3 -1
- package/lib/entity/vas-note.dto.d.ts +6 -0
- package/lib/entity/vas-note.model.d.ts +30 -0
- package/lib/entity/vas-report-layout.model.d.ts +3 -1
- package/lib/entity/vas-report-request.model.d.ts +3 -1
- package/lib/entity/vas-report.model.d.ts +5 -3
- package/lib/entity/vas-restricted-account-object.model.d.ts +3 -1
- package/lib/entity/vas-user.dto.d.ts +3 -0
- package/lib/entity/vas-user.model.d.ts +6 -1
- package/package.json +1 -1
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import { VasAccountObjectModel } from './vas-account-object.model';
|
|
2
|
+
export var VasInvitationTypeEnum;
|
|
3
|
+
(function (VasInvitationTypeEnum) {
|
|
4
|
+
VasInvitationTypeEnum["TYPE_VAS_DESKTOP"] = "vas-desktop";
|
|
5
|
+
VasInvitationTypeEnum["TYPE_VAS_MOBILE"] = "vas-mobile";
|
|
6
|
+
VasInvitationTypeEnum["TYPE_VAS_PORTAL"] = "vas-portal";
|
|
7
|
+
VasInvitationTypeEnum["TYPE_P2C_DESKTOP"] = "p2c-desktop";
|
|
8
|
+
VasInvitationTypeEnum["TYPE_P2C_MOBILE"] = "p2c-mobile";
|
|
9
|
+
})(VasInvitationTypeEnum || (VasInvitationTypeEnum = {}));
|
|
2
10
|
export class VasInvitationModel extends VasAccountObjectModel {
|
|
3
|
-
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account, secret) {
|
|
4
|
-
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account);
|
|
11
|
+
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, secret, type, accessGroups, contactTypes, jobStatuses, jobTypes, lookupTypes, taskTypes, instructionProviders) {
|
|
12
|
+
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
|
|
5
13
|
this.id = id;
|
|
6
14
|
this.created = created;
|
|
7
15
|
this.serverCreated = serverCreated;
|
|
@@ -9,8 +17,18 @@ export class VasInvitationModel extends VasAccountObjectModel {
|
|
|
9
17
|
this.modified = modified;
|
|
10
18
|
this.serverModified = serverModified;
|
|
11
19
|
this.modifiedBy = modifiedBy;
|
|
20
|
+
this.createdByName = createdByName;
|
|
21
|
+
this.modifiedByName = modifiedByName;
|
|
12
22
|
this.account = account;
|
|
13
23
|
this.secret = secret;
|
|
24
|
+
this.type = type;
|
|
25
|
+
this.accessGroups = accessGroups;
|
|
26
|
+
this.contactTypes = contactTypes;
|
|
27
|
+
this.jobStatuses = jobStatuses;
|
|
28
|
+
this.jobTypes = jobTypes;
|
|
29
|
+
this.lookupTypes = lookupTypes;
|
|
30
|
+
this.taskTypes = taskTypes;
|
|
31
|
+
this.instructionProviders = instructionProviders;
|
|
14
32
|
}
|
|
15
33
|
toDto() {
|
|
16
34
|
return {
|
|
@@ -21,12 +39,50 @@ export class VasInvitationModel extends VasAccountObjectModel {
|
|
|
21
39
|
modified: this.modified,
|
|
22
40
|
serverModified: this.serverModified,
|
|
23
41
|
modifiedBy: this.modifiedBy,
|
|
42
|
+
createdByName: this.createdByName,
|
|
43
|
+
modifiedByName: this.modifiedByName,
|
|
24
44
|
account: this.account,
|
|
25
45
|
secret: this.secret,
|
|
46
|
+
type: this.type,
|
|
47
|
+
accessGroups: this.accessGroups,
|
|
48
|
+
contactTypes: this.contactTypes,
|
|
49
|
+
jobStatuses: this.jobStatuses,
|
|
50
|
+
jobTypes: this.jobTypes,
|
|
51
|
+
lookupTypes: this.lookupTypes,
|
|
52
|
+
taskTypes: this.taskTypes,
|
|
53
|
+
instructionProviders: this.instructionProviders,
|
|
26
54
|
};
|
|
27
55
|
}
|
|
28
56
|
static fromDto(dto) {
|
|
29
|
-
return new VasInvitationModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.account || '', dto.secret || '');
|
|
57
|
+
return new VasInvitationModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.secret || '', dto.type || VasInvitationTypeEnum.TYPE_VAS_PORTAL, dto.accessGroups || [], dto.contactTypes || [], dto.jobStatuses || [], dto.jobTypes || [], dto.lookupTypes || [], dto.taskTypes || [], dto.instructionProviders || []);
|
|
58
|
+
}
|
|
59
|
+
toApiDto(options) {
|
|
60
|
+
const dto = {
|
|
61
|
+
...super.toApiDto(),
|
|
62
|
+
type: this.type
|
|
63
|
+
};
|
|
64
|
+
if (this.accessGroups.length) {
|
|
65
|
+
dto['accessGroups'] = this.accessGroups.map(d => d.id);
|
|
66
|
+
}
|
|
67
|
+
if (this.contactTypes.length) {
|
|
68
|
+
dto['contactTypes'] = this.contactTypes.map(d => d.id);
|
|
69
|
+
}
|
|
70
|
+
if (this.jobStatuses.length) {
|
|
71
|
+
dto['jobStatuses'] = this.jobStatuses.map(d => d.id);
|
|
72
|
+
}
|
|
73
|
+
if (this.jobTypes.length) {
|
|
74
|
+
dto['jobTypes'] = this.jobTypes.map(d => d.id);
|
|
75
|
+
}
|
|
76
|
+
if (this.lookupTypes.length) {
|
|
77
|
+
dto['lookupTypes'] = this.lookupTypes.map(d => d.id);
|
|
78
|
+
}
|
|
79
|
+
if (this.taskTypes.length) {
|
|
80
|
+
dto['taskTypes'] = this.taskTypes.map(d => d.id);
|
|
81
|
+
}
|
|
82
|
+
if (this.instructionProviders.length) {
|
|
83
|
+
dto['instructionProviders'] = this.instructionProviders.map(d => d.id);
|
|
84
|
+
}
|
|
85
|
+
return dto;
|
|
30
86
|
}
|
|
31
87
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLWludml0YXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YXMtbGliL3NyYy9saWIvZW50aXR5L3Zhcy1pbnZpdGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBT25FLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxxQkFBcUI7SUFFM0QsWUFDa0IsRUFBVSxFQUNWLE9BQWUsRUFDZixhQUFxQixFQUNyQixTQUFpQixFQUNqQixRQUFnQixFQUNoQixjQUFzQixFQUN0QixVQUFrQixFQUNsQixPQUFlLEVBQ3hCLE1BQWM7UUFFckIsS0FBSyxDQUNILEVBQUUsRUFDRixPQUFPLEVBQ1AsYUFBYSxFQUNiLFNBQVMsRUFDVCxRQUFRLEVBQ1IsY0FBYyxFQUNkLFVBQVUsRUFDVixPQUFPLENBQ1IsQ0FBQztRQW5CYyxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ1YsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQVl2QixDQUFDO0lBRUQsS0FBSztRQUNILE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ25DLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFxQjtRQUNsQyxPQUFPLElBQUksa0JBQWtCLENBQzNCLEdBQUcsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUNaLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxFQUNqQixHQUFHLENBQUMsYUFBYSxJQUFJLEVBQUUsRUFDdkIsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLEVBQ25CLEdBQUcsQ0FBQyxRQUFRLElBQUksRUFBRSxFQUNsQixHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUUsRUFDeEIsR0FBRyxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQ3BCLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxFQUNqQixHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FDakIsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhc0FjY291bnRPYmplY3RNb2RlbCB9IGZyb20gJy4vdmFzLWFjY291bnQtb2JqZWN0Lm1vZGVsJztcbmltcG9ydCB7IFZhc0FjY291bnRPYmplY3REdG8gfSBmcm9tICcuL3Zhcy1hY2NvdW50LW9iamVjdC5kdG8nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZhc0ludml0YXRpb25EdG8gZXh0ZW5kcyBWYXNBY2NvdW50T2JqZWN0RHRvIHtcbiAgc2VjcmV0OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBWYXNJbnZpdGF0aW9uTW9kZWwgZXh0ZW5kcyBWYXNBY2NvdW50T2JqZWN0TW9kZWwgaW1wbGVtZW50cyBWYXNBY2NvdW50T2JqZWN0RHRvIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgb3ZlcnJpZGUgaWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBzZXJ2ZXJDcmVhdGVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWRCeTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBzZXJ2ZXJNb2RpZmllZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZEJ5OiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGFjY291bnQ6IHN0cmluZyxcbiAgICBwdWJsaWMgc2VjcmV0OiBzdHJpbmdcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBpZCxcbiAgICAgIGNyZWF0ZWQsXG4gICAgICBzZXJ2ZXJDcmVhdGVkLFxuICAgICAgY3JlYXRlZEJ5LFxuICAgICAgbW9kaWZpZWQsXG4gICAgICBzZXJ2ZXJNb2RpZmllZCxcbiAgICAgIG1vZGlmaWVkQnksXG4gICAgICBhY2NvdW50XG4gICAgKTtcbiAgfVxuXG4gIHRvRHRvKCk6IFZhc0ludml0YXRpb25EdG8ge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGNyZWF0ZWQ6IHRoaXMuY3JlYXRlZCxcbiAgICAgIHNlcnZlckNyZWF0ZWQ6IHRoaXMuc2VydmVyQ3JlYXRlZCxcbiAgICAgIGNyZWF0ZWRCeTogdGhpcy5jcmVhdGVkQnksXG4gICAgICBtb2RpZmllZDogdGhpcy5tb2RpZmllZCxcbiAgICAgIHNlcnZlck1vZGlmaWVkOiB0aGlzLnNlcnZlck1vZGlmaWVkLFxuICAgICAgbW9kaWZpZWRCeTogdGhpcy5tb2RpZmllZEJ5LFxuICAgICAgYWNjb3VudDogdGhpcy5hY2NvdW50LFxuICAgICAgc2VjcmV0OiB0aGlzLnNlY3JldCxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGZyb21EdG8oZHRvOiBWYXNJbnZpdGF0aW9uRHRvKTogVmFzSW52aXRhdGlvbk1vZGVsIHtcbiAgICByZXR1cm4gbmV3IFZhc0ludml0YXRpb25Nb2RlbChcbiAgICAgIGR0by5pZCB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlckNyZWF0ZWQgfHwgJycsXG4gICAgICBkdG8uY3JlYXRlZEJ5IHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlck1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkQnkgfHwgJycsXG4gICAgICBkdG8uYWNjb3VudCB8fCAnJyxcbiAgICAgIGR0by5zZWNyZXQgfHwgJycsXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLWludml0YXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YXMtbGliL3NyYy9saWIvZW50aXR5L3Zhcy1pbnZpdGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE1BQU0sQ0FBTixJQUFZLHFCQU1YO0FBTkQsV0FBWSxxQkFBcUI7SUFDL0IseURBQWdDLENBQUE7SUFDaEMsdURBQThCLENBQUE7SUFDOUIsdURBQThCLENBQUE7SUFDOUIseURBQWdDLENBQUE7SUFDaEMsdURBQThCLENBQUE7QUFDaEMsQ0FBQyxFQU5XLHFCQUFxQixLQUFyQixxQkFBcUIsUUFNaEM7QUFjRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEscUJBQXFCO0lBRTNELFlBQ2tCLEVBQVUsRUFDVixPQUFlLEVBQ2YsYUFBcUIsRUFDckIsU0FBaUIsRUFDakIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsVUFBa0IsRUFDbEIsYUFBcUIsRUFDckIsY0FBc0IsRUFDdEIsT0FBZSxFQUN4QixNQUFjLEVBQ2QsSUFBMkIsRUFDM0IsWUFBc0MsRUFDdEMsWUFBc0MsRUFDdEMsV0FBbUMsRUFDbkMsUUFBOEIsRUFDOUIsV0FBb0MsRUFDcEMsU0FBZ0MsRUFDaEMsb0JBQXNEO1FBRTdELEtBQUssQ0FDSCxFQUFFLEVBQ0YsT0FBTyxFQUNQLGFBQWEsRUFDYixTQUFTLEVBQ1QsUUFBUSxFQUNSLGNBQWMsRUFDZCxVQUFVLEVBQ1YsYUFBYSxFQUNiLGNBQWMsRUFDZCxPQUFPLENBQ1IsQ0FBQztRQS9CYyxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ1YsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixtQkFB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QUUsQ0FBQyxDQUFDO1NBQ2xEO1FBQ0QsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxFQUFFO1lBQ3BDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDeEU7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhc0FjY291bnRPYmplY3REdG8gfSBmcm9tICcuL3Zhcy1hY2NvdW50LW9iamVjdC5kdG8nO1xuaW1wb3J0IHsgVmFzQWNjZXNzR3JvdXBEdG8gfSBmcm9tICcuL3Zhcy1hY2Nlc3MtZ3JvdXAuZHRvJztcbmltcG9ydCB7IFZhc0NvbnRhY3RUeXBlRHRvIH0gZnJvbSAnLi92YXMtY29udGFjdC10eXBlLmR0byc7XG5pbXBvcnQgeyBWYXNJbnN0cnVjdGlvblByb3ZpZGVyRHRvIH0gZnJvbSAnLi92YXMtaW5zdHJ1Y3Rpb24tcHJvdmlkZXIuZHRvJztcbmltcG9ydCB7IFZhc0pvYlN0YXR1c0R0byB9IGZyb20gJy4vdmFzLWpvYi1zdGF0dXMuZHRvJztcbmltcG9ydCB7IFZhc0pvYlR5cGVEdG8gfSBmcm9tICcuL3Zhcy1qb2ItdHlwZS5kdG8nO1xuaW1wb3J0IHsgVmFzTG9va3VwVHlwZUR0byB9IGZyb20gJy4vdmFzLWxvb2t1cC10eXBlLmR0byc7XG5pbXBvcnQgeyBWYXNUYXNrVHlwZUR0byB9IGZyb20gJy4vdmFzLXRhc2stdHlwZS5kdG8nO1xuaW1wb3J0IHsgVmFzQWNjb3VudE9iamVjdE1vZGVsIH0gZnJvbSAnLi92YXMtYWNjb3VudC1vYmplY3QubW9kZWwnO1xuXG5leHBvcnQgZW51bSBWYXNJbnZpdGF0aW9uVHlwZUVudW0ge1xuICBUWVBFX1ZBU19ERVNLVE9QID0gJ3Zhcy1kZXNrdG9wJyxcbiAgVFlQRV9WQVNfTU9CSUxFID0gJ3Zhcy1tb2JpbGUnLFxuICBUWVBFX1ZBU19QT1JUQUwgPSAndmFzLXBvcnRhbCcsXG4gIFRZUEVfUDJDX0RFU0tUT1AgPSAncDJjLWRlc2t0b3AnLFxuICBUWVBFX1AyQ19NT0JJTEUgPSAncDJjLW1vYmlsZScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFzSW52aXRhdGlvbkR0byBleHRlbmRzIFZhc0FjY291bnRPYmplY3REdG8ge1xuICBzZWNyZXQ6IHN0cmluZztcbiAgdHlwZTogVmFzSW52aXRhdGlvblR5cGVFbnVtO1xuICBhY2Nlc3NHcm91cHM6IEFycmF5PFZhc0FjY2Vzc0dyb3VwRHRvPjtcbiAgY29udGFjdFR5cGVzOiBBcnJheTxWYXNDb250YWN0VHlwZUR0bz47XG4gIGpvYlN0YXR1c2VzOiBBcnJheTxWYXNKb2JTdGF0dXNEdG8+O1xuICBqb2JUeXBlczogQXJyYXk8VmFzSm9iVHlwZUR0bz47XG4gIGxvb2t1cFR5cGVzOiBBcnJheTxWYXNMb29rdXBUeXBlRHRvPjtcbiAgdGFza1R5cGVzOiBBcnJheTxWYXNUYXNrVHlwZUR0bz47XG4gIGluc3RydWN0aW9uUHJvdmlkZXJzOiBBcnJheTxWYXNJbnN0cnVjdGlvblByb3ZpZGVyRHRvPjtcbn1cblxuZXhwb3J0IGNsYXNzIFZhc0ludml0YXRpb25Nb2RlbCBleHRlbmRzIFZhc0FjY291bnRPYmplY3RNb2RlbCBpbXBsZW1lbnRzIFZhc0FjY291bnRPYmplY3REdG8ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBvdmVycmlkZSBpZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIHNlcnZlckNyZWF0ZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZEJ5OiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIHNlcnZlck1vZGlmaWVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkQnk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZEJ5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZEJ5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBhY2NvdW50OiBzdHJpbmcsXG4gICAgcHVibGljIHNlY3JldDogc3RyaW5nLFxuICAgIHB1YmxpYyB0eXBlOiBWYXNJbnZpdGF0aW9uVHlwZUVudW0sXG4gICAgcHVibGljIGFjY2Vzc0dyb3VwczogQXJyYXk8VmFzQWNjZXNzR3JvdXBEdG8+LFxuICAgIHB1YmxpYyBjb250YWN0VHlwZXM6IEFycmF5PFZhc0NvbnRhY3RUeXBlRHRvPixcbiAgICBwdWJsaWMgam9iU3RhdHVzZXM6IEFycmF5PFZhc0pvYlN0YXR1c0R0bz4sXG4gICAgcHVibGljIGpvYlR5cGVzOiBBcnJheTxWYXNKb2JUeXBlRHRvPixcbiAgICBwdWJsaWMgbG9va3VwVHlwZXM6IEFycmF5PFZhc0xvb2t1cFR5cGVEdG8+LFxuICAgIHB1YmxpYyB0YXNrVHlwZXM6IEFycmF5PFZhc1Rhc2tUeXBlRHRvPixcbiAgICBwdWJsaWMgaW5zdHJ1Y3Rpb25Qcm92aWRlcnM6IEFycmF5PFZhc0luc3RydWN0aW9uUHJvdmlkZXJEdG8+LFxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGlkLFxuICAgICAgY3JlYXRlZCxcbiAgICAgIHNlcnZlckNyZWF0ZWQsXG4gICAgICBjcmVhdGVkQnksXG4gICAgICBtb2RpZmllZCxcbiAgICAgIHNlcnZlck1vZGlmaWVkLFxuICAgICAgbW9kaWZpZWRCeSxcbiAgICAgIGNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnRcbiAgICApO1xuICB9XG5cbiAgdG9EdG8oKTogVmFzSW52aXRhdGlvbkR0byB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgY3JlYXRlZDogdGhpcy5jcmVhdGVkLFxuICAgICAgc2VydmVyQ3JlYXRlZDogdGhpcy5zZXJ2ZXJDcmVhdGVkLFxuICAgICAgY3JlYXRlZEJ5OiB0aGlzLmNyZWF0ZWRCeSxcbiAgICAgIG1vZGlmaWVkOiB0aGlzLm1vZGlmaWVkLFxuICAgICAgc2VydmVyTW9kaWZpZWQ6IHRoaXMuc2VydmVyTW9kaWZpZWQsXG4gICAgICBtb2RpZmllZEJ5OiB0aGlzLm1vZGlmaWVkQnksXG4gICAgICBjcmVhdGVkQnlOYW1lOiB0aGlzLmNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZTogdGhpcy5tb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnQ6IHRoaXMuYWNjb3VudCxcbiAgICAgIHNlY3JldDogdGhpcy5zZWNyZXQsXG4gICAgICB0eXBlOiB0aGlzLnR5cGUsXG4gICAgICBhY2Nlc3NHcm91cHM6IHRoaXMuYWNjZXNzR3JvdXBzLFxuICAgICAgY29udGFjdFR5cGVzOiB0aGlzLmNvbnRhY3RUeXBlcyxcbiAgICAgIGpvYlN0YXR1c2VzOiB0aGlzLmpvYlN0YXR1c2VzLFxuICAgICAgam9iVHlwZXM6IHRoaXMuam9iVHlwZXMsXG4gICAgICBsb29rdXBUeXBlczogdGhpcy5sb29rdXBUeXBlcyxcbiAgICAgIHRhc2tUeXBlczogdGhpcy50YXNrVHlwZXMsXG4gICAgICBpbnN0cnVjdGlvblByb3ZpZGVyczogdGhpcy5pbnN0cnVjdGlvblByb3ZpZGVycyxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGZyb21EdG8oZHRvOiBQYXJ0aWFsPFZhc0ludml0YXRpb25EdG8+KTogVmFzSW52aXRhdGlvbk1vZGVsIHtcbiAgICByZXR1cm4gbmV3IFZhc0ludml0YXRpb25Nb2RlbChcbiAgICAgIGR0by5pZCB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlckNyZWF0ZWQgfHwgJycsXG4gICAgICBkdG8uY3JlYXRlZEJ5IHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlck1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkQnkgfHwgJycsXG4gICAgICBkdG8uY3JlYXRlZEJ5TmFtZSB8fCAnJyxcbiAgICAgIGR0by5tb2RpZmllZEJ5TmFtZSB8fCAnJyxcbiAgICAgIGR0by5hY2NvdW50IHx8ICcnLFxuICAgICAgZHRvLnNlY3JldCB8fCAnJyxcbiAgICAgIGR0by50eXBlIHx8IFZhc0ludml0YXRpb25UeXBlRW51bS5UWVBFX1ZBU19QT1JUQUwsXG4gICAgICBkdG8uYWNjZXNzR3JvdXBzIHx8IFtdLFxuICAgICAgZHRvLmNvbnRhY3RUeXBlcyB8fCBbXSxcbiAgICAgIGR0by5qb2JTdGF0dXNlcyB8fCBbXSxcbiAgICAgIGR0by5qb2JUeXBlcyB8fCBbXSxcbiAgICAgIGR0by5sb29rdXBUeXBlcyB8fCBbXSxcbiAgICAgIGR0by50YXNrVHlwZXMgfHwgW10sXG4gICAgICBkdG8uaW5zdHJ1Y3Rpb25Qcm92aWRlcnMgfHwgW10sXG4gICAgKTtcbiAgfVxuXG5cbiAgb3ZlcnJpZGUgdG9BcGlEdG8ob3B0aW9ucz86IGFueSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4+IHtcbiAgICBjb25zdCBkdG86IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7XG4gICAgICAuLi5zdXBlci50b0FwaUR0bygpLFxuICAgICAgdHlwZTogdGhpcy50eXBlXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmFjY2Vzc0dyb3Vwcy5sZW5ndGgpIHtcbiAgICAgIGR0b1snYWNjZXNzR3JvdXBzJ10gPSB0aGlzLmFjY2Vzc0dyb3Vwcy5tYXAoZCA9PiBkLmlkKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29udGFjdFR5cGVzLmxlbmd0aCkge1xuICAgICAgZHRvWydjb250YWN0VHlwZXMnXSA9IHRoaXMuY29udGFjdFR5cGVzLm1hcChkID0+IGQuaWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5qb2JTdGF0dXNlcy5sZW5ndGgpIHtcbiAgICAgIGR0b1snam9iU3RhdHVzZXMnXSA9IHRoaXMuam9iU3RhdHVzZXMubWFwKGQgPT4gZC5pZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmpvYlR5cGVzLmxlbmd0aCkge1xuICAgICAgZHRvWydqb2JUeXBlcyddID0gdGhpcy5qb2JUeXBlcy5tYXAoZCA9PiBkLmlkKTtcbiAgICB9XG4gICAgaWYgKHRoaXMubG9va3VwVHlwZXMubGVuZ3RoKSB7XG4gICAgICBkdG9bJ2xvb2t1cFR5cGVzJ10gPSB0aGlzLmxvb2t1cFR5cGVzLm1hcChkID0+IGQuaWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy50YXNrVHlwZXMubGVuZ3RoKSB7XG4gICAgICBkdG9bJ3Rhc2tUeXBlcyddID0gdGhpcy50YXNrVHlwZXMubWFwKGQgPT4gZC5pZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmluc3RydWN0aW9uUHJvdmlkZXJzLmxlbmd0aCkge1xuICAgICAgZHRvWydpbnN0cnVjdGlvblByb3ZpZGVycyddID0gdGhpcy5pbnN0cnVjdGlvblByb3ZpZGVycy5tYXAoZCA9PiBkLmlkKTtcbiAgICB9XG4gICAgcmV0dXJuIGR0bztcbiAgfVxufVxuIl19
|
|
@@ -3,19 +3,8 @@ import { VasAccountObjectModel } from './vas-account-object.model';
|
|
|
3
3
|
* VasJobDataModel
|
|
4
4
|
*/
|
|
5
5
|
export class VasJobDataModel extends VasAccountObjectModel {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* @param {string} created
|
|
9
|
-
* @param {string} serverCreated
|
|
10
|
-
* @param {string} createdBy
|
|
11
|
-
* @param {string} modified
|
|
12
|
-
* @param {string} serverModified
|
|
13
|
-
* @param {string} modifiedBy
|
|
14
|
-
* @param {string} account
|
|
15
|
-
* @param {string} job
|
|
16
|
-
*/
|
|
17
|
-
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account, job) {
|
|
18
|
-
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account);
|
|
6
|
+
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job) {
|
|
7
|
+
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
|
|
19
8
|
this.id = id;
|
|
20
9
|
this.created = created;
|
|
21
10
|
this.serverCreated = serverCreated;
|
|
@@ -23,8 +12,10 @@ export class VasJobDataModel extends VasAccountObjectModel {
|
|
|
23
12
|
this.modified = modified;
|
|
24
13
|
this.serverModified = serverModified;
|
|
25
14
|
this.modifiedBy = modifiedBy;
|
|
15
|
+
this.createdByName = createdByName;
|
|
16
|
+
this.modifiedByName = modifiedByName;
|
|
26
17
|
this.account = account;
|
|
27
18
|
this.job = job;
|
|
28
19
|
}
|
|
29
20
|
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLWpvYi1kYXRhLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFzLWxpYi9zcmMvbGliL2VudGl0eS92YXMtam9iLWRhdGEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkU7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLGVBQWdCLFNBQVEscUJBQXFCO0lBRWpFLFlBQ2tCLEVBQVUsRUFDVixPQUFlLEVBQ2YsYUFBcUIsRUFDckIsU0FBaUIsRUFDakIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsVUFBa0IsRUFDbEIsYUFBcUIsRUFDckIsY0FBc0IsRUFDdEIsT0FBZSxFQUN4QixHQUFXO1FBRWxCLEtBQUssQ0FDSCxFQUFFLEVBQ0YsT0FBTyxFQUNQLGFBQWEsRUFDYixTQUFTLEVBQ1QsUUFBUSxFQUNSLGNBQWMsRUFDZCxVQUFVLEVBQ1YsYUFBYSxFQUNiLGNBQWMsRUFDZCxPQUFPLENBQ1IsQ0FBQztRQXZCYyxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ1YsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDeEIsUUFBRyxHQUFILEdBQUcsQ0FBUTtJQWNwQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXNBY2NvdW50T2JqZWN0TW9kZWwgfSBmcm9tICcuL3Zhcy1hY2NvdW50LW9iamVjdC5tb2RlbCc7XG5cbi8qKlxuICogVmFzSm9iRGF0YU1vZGVsXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYXNKb2JEYXRhTW9kZWwgZXh0ZW5kcyBWYXNBY2NvdW50T2JqZWN0TW9kZWwge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBvdmVycmlkZSBpZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIHNlcnZlckNyZWF0ZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZEJ5OiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIHNlcnZlck1vZGlmaWVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkQnk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZEJ5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZEJ5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBhY2NvdW50OiBzdHJpbmcsXG4gICAgcHVibGljIGpvYjogc3RyaW5nXG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgaWQsXG4gICAgICBjcmVhdGVkLFxuICAgICAgc2VydmVyQ3JlYXRlZCxcbiAgICAgIGNyZWF0ZWRCeSxcbiAgICAgIG1vZGlmaWVkLFxuICAgICAgc2VydmVyTW9kaWZpZWQsXG4gICAgICBtb2RpZmllZEJ5LFxuICAgICAgY3JlYXRlZEJ5TmFtZSxcbiAgICAgIG1vZGlmaWVkQnlOYW1lLFxuICAgICAgYWNjb3VudFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,34 +11,8 @@ import { isArrayString } from '../utils/is-array-string';
|
|
|
11
11
|
* JobModel
|
|
12
12
|
*/
|
|
13
13
|
export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
* @param created
|
|
17
|
-
* @param serverCreated
|
|
18
|
-
* @param createdBy
|
|
19
|
-
* @param modified
|
|
20
|
-
* @param serverModified
|
|
21
|
-
* @param modifiedBy
|
|
22
|
-
* @param account
|
|
23
|
-
* @param accessGroup
|
|
24
|
-
* @param reference
|
|
25
|
-
* @param jobDate
|
|
26
|
-
* @param jobStatus
|
|
27
|
-
* @param jobType
|
|
28
|
-
* @param assigneeId
|
|
29
|
-
* @param formId
|
|
30
|
-
* @param timeZoneOffset
|
|
31
|
-
* @param pendingFields
|
|
32
|
-
* @param childModified
|
|
33
|
-
* @param version
|
|
34
|
-
* @param fields
|
|
35
|
-
* @param files,
|
|
36
|
-
* @param createdByDisplayName
|
|
37
|
-
* @param modifiedByDisplayName
|
|
38
|
-
* @param geoLocation
|
|
39
|
-
*/
|
|
40
|
-
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account, accessGroup, reference, jobDate, jobStatus, jobType, assigneeId, formId, timeZoneOffset, pendingFields, childModified, version, fields, files, createdByDisplayName, modifiedByDisplayName, geoLocation) {
|
|
41
|
-
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account, accessGroup);
|
|
14
|
+
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, reference, jobDate, jobStatus, jobType, assigneeId, formId, timeZoneOffset, pendingFields, childModified, version, fields, files, createdByDisplayName, modifiedByDisplayName, geoLocation) {
|
|
15
|
+
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
|
|
42
16
|
this.id = id;
|
|
43
17
|
this.created = created;
|
|
44
18
|
this.serverCreated = serverCreated;
|
|
@@ -46,6 +20,8 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
46
20
|
this.modified = modified;
|
|
47
21
|
this.serverModified = serverModified;
|
|
48
22
|
this.modifiedBy = modifiedBy;
|
|
23
|
+
this.createdByName = createdByName;
|
|
24
|
+
this.modifiedByName = modifiedByName;
|
|
49
25
|
this.account = account;
|
|
50
26
|
this.accessGroup = accessGroup;
|
|
51
27
|
this.reference = reference;
|
|
@@ -92,23 +68,15 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
92
68
|
* @return {VasJobModel}
|
|
93
69
|
*/
|
|
94
70
|
static empty() {
|
|
95
|
-
return new VasJobModel(
|
|
96
|
-
// eslint-disable-next-line new-cap
|
|
97
|
-
UUID.UUID(), '', '', '', '', '', '', '', '', '', '', '', '', '', '', moment().utcOffset(), 0, '', 0, [], [], '', '', getEmptyGeoLocation());
|
|
71
|
+
return new VasJobModel('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', moment().utcOffset(), 0, '', 0, [], [], '', '', getEmptyGeoLocation());
|
|
98
72
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
* @return {VasJobModel}
|
|
102
|
-
*/
|
|
103
|
-
static fromDto(jobDto) {
|
|
104
|
-
const model = new VasJobModel(
|
|
105
|
-
// eslint-disable-next-line new-cap
|
|
106
|
-
jobDto.id || UUID.UUID(), jobDto.created || '', jobDto.serverCreated || '', jobDto.createdBy || '', jobDto.modified || '', jobDto.serverModified || '', jobDto.modifiedBy || '', jobDto.account || '', jobDto.accessGroup || '', jobDto.reference || '', jobDto.jobDate || '', jobDto.jobStatus || '', jobDto.jobType || '', jobDto.assigneeId || '', jobDto.formId || '', jobDto.timeZoneOffset || moment().utcOffset(), jobDto.pendingFields || 0, jobDto.childModified || '', jobDto.version || 0, jobDto.fields || [], jobDto.files || [], jobDto.createdByDisplayName || '', jobDto.modifiedByDisplayName || '', jobDto.geoLocation || getEmptyGeoLocation());
|
|
73
|
+
static fromDto(dto) {
|
|
74
|
+
const model = new VasJobModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.reference || '', dto.jobDate || '', dto.jobStatus || '', dto.jobType || '', dto.assigneeId || '', dto.formId || '', dto.timeZoneOffset || moment().utcOffset(), dto.pendingFields || 0, dto.childModified || '', dto.version || 0, dto.fields || [], dto.files || [], dto.createdByDisplayName || '', dto.modifiedByDisplayName || '', dto.geoLocation || getEmptyGeoLocation());
|
|
107
75
|
const emptyKeys = model.staticProperties;
|
|
108
76
|
Object
|
|
109
|
-
.keys(
|
|
77
|
+
.keys(dto)
|
|
110
78
|
.filter(key => emptyKeys.indexOf(key) === -1)
|
|
111
|
-
.forEach((key) => model.$this[key] =
|
|
79
|
+
.forEach((key) => model.$this[key] = dto[key]);
|
|
112
80
|
return model;
|
|
113
81
|
}
|
|
114
82
|
/**
|
|
@@ -127,11 +95,10 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
127
95
|
return fields;
|
|
128
96
|
}
|
|
129
97
|
/**
|
|
130
|
-
* Will return an object whose keys are the names of all fields in the job
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
* drive the logic)
|
|
98
|
+
* Will return an object whose keys are the names of all fields in the job.
|
|
99
|
+
* This method is similar to `getFields` except that this method will only
|
|
100
|
+
* return values where a value was set, as opposed to `getFields` which
|
|
101
|
+
* return a property regardless (because it uses the form to drive the logic)
|
|
135
102
|
* @return {Record<string, VasFieldDtoValue>}
|
|
136
103
|
*/
|
|
137
104
|
getFields2() {
|
|
@@ -141,8 +108,7 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
141
108
|
Object
|
|
142
109
|
.keys(this.$this[groupName])
|
|
143
110
|
.forEach(controlName => {
|
|
144
|
-
|
|
145
|
-
fields[controlNameShort] = this.getValueByPath([groupName, controlName]);
|
|
111
|
+
fields[controlName] = this.getValueByPath([groupName, controlName]);
|
|
146
112
|
});
|
|
147
113
|
}, {});
|
|
148
114
|
return fields;
|
|
@@ -363,6 +329,8 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
363
329
|
modifiedBy: this.modifiedBy,
|
|
364
330
|
serverCreated: this.serverCreated,
|
|
365
331
|
serverModified: this.serverModified,
|
|
332
|
+
createdByName: this.createdByName,
|
|
333
|
+
modifiedByName: this.modifiedByName,
|
|
366
334
|
account: this.account,
|
|
367
335
|
accessGroup: this.accessGroup,
|
|
368
336
|
reference: this.reference,
|
|
@@ -500,4 +468,4 @@ export class VasJobModel extends VasRestrictedAccountObjectModel {
|
|
|
500
468
|
};
|
|
501
469
|
}
|
|
502
470
|
}
|
|
503
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLWpvYi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Zhcy1saWIvc3JjL2xpYi9lbnRpdHkvdmFzLWpvYi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdsRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RixPQUFPLEVBQWUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsc0JBQXNCLEVBQThCLE1BQU0saURBQWlELENBQUM7QUFDckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBb0J6RDs7R0FFRztBQUNILE1BQU0sT0FBTyxXQUFZLFNBQVEsK0JBQStCO0lBQzlEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BeUJHO0lBQ0gsWUFDa0IsRUFBVSxFQUNWLE9BQWUsRUFDZixhQUFxQixFQUNyQixTQUFpQixFQUNqQixRQUFnQixFQUNoQixjQUFzQixFQUN0QixVQUFrQixFQUNsQixPQUFlLEVBQ2YsV0FBbUIsRUFDNUIsU0FBaUIsRUFDakIsT0FBZSxFQUNmLFNBQWlCLEVBQ2pCLE9BQWUsRUFDZixVQUFrQixFQUNsQixNQUFjLEVBQ2QsY0FBc0IsRUFDdEIsYUFBcUIsRUFDckIsYUFBcUIsRUFDckIsT0FBZSxFQUNmLE1BQTBCLEVBQzFCLEtBQXdCLEVBQ3hCLG9CQUE0QixFQUM1QixxQkFBNkIsRUFDN0IsV0FBd0I7UUFF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RztZQUM1QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxHQUFHO1lBQzVCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLEdBQUc7WUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksR0FBRztZQUNoQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQ2xDLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUM7WUFDeEMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQztZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxHQUFHO1NBQzdCLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0ZpbGVEdG8sIFZhc0ZpbGVEdG8gfSBmcm9tICcuL3Zhcy1maWxlLmR0byc7XG5pbXBvcnQgeyBVVUlEIH0gZnJvbSAnYW5ndWxhcjItdXVpZCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBnZXRWYWx1ZUJ5UGF0aCB9IGZyb20gJy4uL3V0aWxzL2dldC12YWx1ZS1ieS1wYXRoJztcbmltcG9ydCB7IFZhc0Jhc2VEdG8gfSBmcm9tICcuL3Zhcy1iYXNlLmR0byc7XG5pbXBvcnQgeyBWYXNGaWVsZER0bywgVmFzRmllbGREdG9WYWx1ZSB9IGZyb20gJy4vdmFzLWZpZWxkLmR0byc7XG5pbXBvcnQgeyBWYXNGaWVsZE1vZGVsIH0gZnJvbSAnLi92YXMtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgVmFzRm9ybU1vZGVsIH0gZnJvbSAnLi92YXMtZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBWYXNKb2JEdG8gfSBmcm9tICcuL3Zhcy1qb2IuZHRvJztcbmltcG9ydCB7IFZhc1Jlc3RyaWN0ZWRBY2NvdW50T2JqZWN0TW9kZWwgfSBmcm9tICcuL3Zhcy1yZXN0cmljdGVkLWFjY291bnQtb2JqZWN0Lm1vZGVsJztcbmltcG9ydCB7IEdlb0xvY2F0aW9uLCBnZXRFbXB0eUdlb0xvY2F0aW9uIH0gZnJvbSAnLi4vbW9kZWwvZ2VvLWxvY2F0aW9uJztcbmltcG9ydCB7IGlzQ2FtZXJhQ29udHJvbFZhbHVlVjEsIFZhc0NhbWVyYUNvbnRyb2xWYWx1ZU1vZGVsIH0gZnJvbSAnLi4vY29udHJvbC12YWx1ZS92YXMtY2FtZXJhLWNvbnRyb2wtdmFsdWUubW9kZWwnO1xuaW1wb3J0IHsgaXNBcnJheVN0cmluZyB9IGZyb20gJy4uL3V0aWxzL2lzLWFycmF5LXN0cmluZyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBWYXNKb2JNb2RlbER5bmFtaWNJbnRlcmZhY2Uge1xuICBbczogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VTeW50YXhPcHRpb25zIHtcbiAgLy8gVGhpcyB2YWx1ZSB3aWxsIGJlIHVzZWQgdG8gYWRqdXN0IGFueSBkYXRldGltZSB2YWx1ZXMgdGhhdCBhcmUgcmVmZXJlbmNlZFxuICAvLyBpbiB0aGUgc3ludGF4IHN0cmluZy4gU2VlXG4gIC8vIGh0dHBzOi8vbW9tZW50anNjb20ucmVhZHRoZWRvY3MuaW8vZW4vbGF0ZXN0L21vbWVudC8wMy1tYW5pcHVsYXRpbmcvMDktdXRjLW9mZnNldC9cbiAgLy8gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgaG93IGBtb21lbnRgIHdpbGwgaGFuZGxlIHRoZSB2YWx1ZS5cbiAgdGltZVpvbmVPZmZzZXQ6IG51bWJlcixcbiAgLy8gdGhpcyBkaWN0aW9uYXJ5IGNhbiBiZSBwYXNzZWQgaW4gdG8gY29udGFpbiBvdGhlciBvYmplY3RzIHRvIGJlIHJlZmVyZW5jZWRcbiAgLy8gaW4gdGhlIHN5bnRheC4gRm9yIGV4YW1wbGUgaWYgd2UgaGF2ZSB7am9iLmZvb30gdGhpcyB3aWxsIHJlZmVyZW5jZSB0aGVcbiAgLy8gam9iJ3MgYGZvb2AgcHJvcGVydHksIGhvd2V2ZXIgaWYgd2UgaGF2ZSBcInJlcG9ydExheW91dC50aXRsZVwiIHRoaXMgd2lsbFxuICAvLyBleHBlY3QgdG8gZmluZCBhIHByb3BlcnR5IG9mIGBvYmplY3RzYCBjYWxsZWQgYHJlcG9ydExheW91dGAgd2hpY2ggd2lsbFxuICAvLyBoYXZlIGEgcHJvcGVydHkgY2FsbGVkIGB0aXRsZWBcbiAgb2JqZWN0cz86IFJlY29yZDxzdHJpbmcsIFBhcnRpYWw8VmFzQmFzZUR0bz4gfCBSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPj47XG59XG5cbi8qKlxuICogSm9iTW9kZWxcbiAqL1xuZXhwb3J0IGNsYXNzIFZhc0pvYk1vZGVsIGV4dGVuZHMgVmFzUmVzdHJpY3RlZEFjY291bnRPYmplY3RNb2RlbCB7XG4gIC8qKlxuICAgKiBAcGFyYW0gaWRcbiAgICogQHBhcmFtIGNyZWF0ZWRcbiAgICogQHBhcmFtIHNlcnZlckNyZWF0ZWRcbiAgICogQHBhcmFtIGNyZWF0ZWRCeVxuICAgKiBAcGFyYW0gbW9kaWZpZWRcbiAgICogQHBhcmFtIHNlcnZlck1vZGlmaWVkXG4gICAqIEBwYXJhbSBtb2RpZmllZEJ5XG4gICAqIEBwYXJhbSBhY2NvdW50XG4gICAqIEBwYXJhbSBhY2Nlc3NHcm91cFxuICAgKiBAcGFyYW0gcmVmZXJlbmNlXG4gICAqIEBwYXJhbSBqb2JEYXRlXG4gICAqIEBwYXJhbSBqb2JTdGF0dXNcbiAgICogQHBhcmFtIGpvYlR5cGVcbiAgICogQHBhcmFtIGFzc2lnbmVlSWRcbiAgICogQHBhcmFtIGZvcm1JZFxuICAgKiBAcGFyYW0gdGltZVpvbmVPZmZzZXRcbiAgICogQHBhcmFtIHBlbmRpbmdGaWVsZHNcbiAgICogQHBhcmFtIGNoaWxkTW9kaWZpZWRcbiAgICogQHBhcmFtIHZlcnNpb25cbiAgICogQHBhcmFtIGZpZWxkc1xuICAgKiBAcGFyYW0gZmlsZXMsXG4gICAqIEBwYXJhbSBjcmVhdGVkQnlEaXNwbGF5TmFtZVxuICAgKiBAcGFyYW0gbW9kaWZpZWRCeURpc3BsYXlOYW1lXG4gICAqIEBwYXJhbSBnZW9Mb2NhdGlvblxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJyaWRlIGlkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyQ3JlYXRlZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkQnk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyTW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWRCeTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBhY2NvdW50OiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGFjY2Vzc0dyb3VwOiBzdHJpbmcsXG4gICAgcHVibGljIHJlZmVyZW5jZTogc3RyaW5nLFxuICAgIHB1YmxpYyBqb2JEYXRlOiBzdHJpbmcsXG4gICAgcHVibGljIGpvYlN0YXR1czogc3RyaW5nLFxuICAgIHB1YmxpYyBqb2JUeXBlOiBzdHJpbmcsXG4gICAgcHVibGljIGFzc2lnbmVlSWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgZm9ybUlkOiBzdHJpbmcsXG4gICAgcHVibGljIHRpbWVab25lT2Zmc2V0OiBudW1iZXIsXG4gICAgcHVibGljIHBlbmRpbmdGaWVsZHM6IG51bWJlcixcbiAgICBwdWJsaWMgY2hpbGRNb2RpZmllZDogc3RyaW5nLFxuICAgIHB1YmxpYyB2ZXJzaW9uOiBudW1iZXIsXG4gICAgcHVibGljIGZpZWxkczogQXJyYXk8VmFzRmllbGREdG8+LFxuICAgIHB1YmxpYyBmaWxlczogQXJyYXk8VmFzRmlsZUR0bz4sXG4gICAgcHVibGljIGNyZWF0ZWRCeURpc3BsYXlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG1vZGlmaWVkQnlEaXNwbGF5TmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBnZW9Mb2NhdGlvbjogR2VvTG9jYXRpb25cbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBpZCxcbiAgICAgIGNyZWF0ZWQsXG4gICAgICBzZXJ2ZXJDcmVhdGVkLFxuICAgICAgY3JlYXRlZEJ5LFxuICAgICAgbW9kaWZpZWQsXG4gICAgICBzZXJ2ZXJNb2RpZmllZCxcbiAgICAgIG1vZGlmaWVkQnksXG4gICAgICBhY2NvdW50LFxuICAgICAgYWNjZXNzR3JvdXBcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhpcyB3aXRoIHRoZSBkeW5hbWljIGludGVyZmFjZVxuICAgKiBAcmV0dXJuIHtWYXNKb2JNb2RlbER5bmFtaWNJbnRlcmZhY2V9XG4gICAqL1xuICBnZXQgJHRoaXMoKTogVmFzSm9iTW9kZWxEeW5hbWljSW50ZXJmYWNlIHtcbiAgICByZXR1cm4gdGhpcyBhcyBhbnk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGxpc3Qgb2YgSm9iIGR5bmFtaWMgcHJvcGVydGllcyBpLmUuIHRob3NlIHRoYXQgYXJlIGFkZGVkIGJ5IHRoZVxuICAgKiBkeW5hbWljIGZvcm1zXG4gICAqL1xuICBnZXQgZHluYW1pY1Byb3BlcnRpZXMoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgY29uc3QgbmF0aXZlUHJvcHMgPSB0aGlzLnN0YXRpY1Byb3BlcnRpZXM7XG4gICAgcmV0dXJuIE9iamVjdFxuICAgICAgLmdldE93blByb3BlcnR5TmFtZXModGhpcylcbiAgICAgIC5maWx0ZXIocHJvcCA9PiAhbmF0aXZlUHJvcHMuaW5jbHVkZXMocHJvcCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBsaXN0IG9mIEpvYiBzdGF0aWMgcHJvcGVydGllcyBpLmUuIHRob3NlIHRoYXQgYXJlIGRlY2xhcmVkIGJ5XG4gICAqIHRoZSB0eXBlXG4gICAqL1xuICBnZXQgc3RhdGljUHJvcGVydGllcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICByZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoVmFzSm9iTW9kZWwuZW1wdHkoKSk7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybiB7VmFzSm9iTW9kZWx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGVtcHR5KCk6IFZhc0pvYk1vZGVsIHtcbiAgICByZXR1cm4gbmV3IFZhc0pvYk1vZGVsKFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5ldy1jYXBcbiAgICAgIFVVSUQuVVVJRCgpLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgIG1vbWVudCgpLnV0Y09mZnNldCgpLFxuICAgICAgMCxcbiAgICAgICcnLFxuICAgICAgMCxcbiAgICAgIFtdLFxuICAgICAgW10sXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgZ2V0RW1wdHlHZW9Mb2NhdGlvbigpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1Zhc0pvYkR0b30gam9iRHRvXG4gICAqIEByZXR1cm4ge1Zhc0pvYk1vZGVsfVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRHRvKGpvYkR0bzogUGFydGlhbDxWYXNKb2JEdG8+KTogVmFzSm9iTW9kZWwge1xuICAgIGNvbnN0IG1vZGVsID0gbmV3IFZhc0pvYk1vZGVsKFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5ldy1jYXBcbiAgICAgIGpvYkR0by5pZCB8fCBVVUlELlVVSUQoKSxcbiAgICAgIGpvYkR0by5jcmVhdGVkIHx8ICcnLFxuICAgICAgam9iRHRvLnNlcnZlckNyZWF0ZWQgfHwgJycsXG4gICAgICBqb2JEdG8uY3JlYXRlZEJ5IHx8ICcnLFxuICAgICAgam9iRHRvLm1vZGlmaWVkIHx8ICcnLFxuICAgICAgam9iRHRvLnNlcnZlck1vZGlmaWVkIHx8ICcnLFxuICAgICAgam9iRHRvLm1vZGlmaWVkQnkgfHwgJycsXG4gICAgICBqb2JEdG8uYWNjb3VudCB8fCAnJyxcbiAgICAgIGpvYkR0by5hY2Nlc3NHcm91cCB8fCAnJyxcbiAgICAgIGpvYkR0by5yZWZlcmVuY2UgfHwgJycsXG4gICAgICBqb2JEdG8uam9iRGF0ZSB8fCAnJyxcbiAgICAgIGpvYkR0by5qb2JTdGF0dXMgfHwgJycsXG4gICAgICBqb2JEdG8uam9iVHlwZSB8fCAnJyxcbiAgICAgIGpvYkR0by5hc3NpZ25lZUlkIHx8ICcnLFxuICAgICAgam9iRHRvLmZvcm1JZCB8fCAnJyxcbiAgICAgIGpvYkR0by50aW1lWm9uZU9mZnNldCB8fCBtb21lbnQoKS51dGNPZmZzZXQoKSxcbiAgICAgIGpvYkR0by5wZW5kaW5nRmllbGRzIHx8IDAsXG4gICAgICBqb2JEdG8uY2hpbGRNb2RpZmllZCB8fCAnJyxcbiAgICAgIGpvYkR0by52ZXJzaW9uIHx8IDAsXG4gICAgICBqb2JEdG8uZmllbGRzIHx8IFtdLFxuICAgICAgam9iRHRvLmZpbGVzIHx8IFtdLFxuICAgICAgam9iRHRvLmNyZWF0ZWRCeURpc3BsYXlOYW1lIHx8ICcnLFxuICAgICAgam9iRHRvLm1vZGlmaWVkQnlEaXNwbGF5TmFtZSB8fCAnJyxcbiAgICAgIGpvYkR0by5nZW9Mb2NhdGlvbiB8fCBnZXRFbXB0eUdlb0xvY2F0aW9uKClcbiAgICApO1xuICAgIGNvbnN0IGVtcHR5S2V5cyA9IG1vZGVsLnN0YXRpY1Byb3BlcnRpZXM7XG4gICAgT2JqZWN0XG4gICAgICAua2V5cyhqb2JEdG8pXG4gICAgICAuZmlsdGVyKGtleSA9PiBlbXB0eUtleXMuaW5kZXhPZihrZXkpID09PSAtMSlcbiAgICAgIC5mb3JFYWNoKChrZXk6IHN0cmluZykgPT5cbiAgICAgICAgbW9kZWwuJHRoaXNba2V5XSA9IChqb2JEdG8gYXMgVmFzSm9iTW9kZWxEeW5hbWljSW50ZXJmYWNlKVtrZXldXG4gICAgICApO1xuICAgIHJldHVybiBtb2RlbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1Zhc0Zvcm1Nb2RlbH0gZm9ybU1vZGVsXG4gICAqIEByZXR1cm4ge1JlY29yZDxzdHJpbmcsIFZhc0ZpZWxkRHRvVmFsdWU+fVxuICAgKi9cbiAgZ2V0RmllbGRzKGZvcm1Nb2RlbDogVmFzRm9ybU1vZGVsKTogUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT4ge1xuICAgIGNvbnN0IGZpZWxkczoge1trZXk6IHN0cmluZ106IFZhc0ZpZWxkRHRvVmFsdWV9ID0ge307XG4gICAgZm9ybU1vZGVsLmdyb3Vwc1xuICAgICAgLmZvckVhY2goZ3JvdXAgPT4ge1xuICAgICAgICBncm91cC5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgICAgIChmaWVsZHMpW2NvbnRyb2wucmVwb3J0VGVtcGxhdGVOYW1lXSA9XG4gICAgICAgICAgICB0aGlzLmdldFZhbHVlQnlQYXRoKFtncm91cC5uYW1lLCBjb250cm9sLm5hbWVdKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICByZXR1cm4gZmllbGRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFdpbGwgcmV0dXJuIGFuIG9iamVjdCB3aG9zZSBrZXlzIGFyZSB0aGUgbmFtZXMgb2YgYWxsIGZpZWxkcyBpbiB0aGUgam9iIGJ1dFxuICAgKiB3aXRoIHRoZSBcImZpZWxkcy5cIiBwYXJ0IHJlbW92ZWQuIFRoaXMgbWV0aG9kIGlzIHNpbWlsYXIgdG8gYGdldEZpZWxkc2BcbiAgICogZXhjZXB0IHRoYXQgdGhpcyBtZXRob2Qgd2lsbCBvbmx5IHJldHVybiB2YWx1ZXMgdGhhdCBhcmUgc2V0IHdoZXJlYXNcbiAgICogYGdldEZpZWxkc2Agd2lsbCByZXR1cm4gYSBwcm9wZXJ0eSByZWdhcmRsZXNzIChiZWNhdXNlIGl0IHVzZXMgdGhlIGZvcm0gdG9cbiAgICogZHJpdmUgdGhlIGxvZ2ljKVxuICAgKiBAcmV0dXJuIHtSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPn1cbiAgICovXG4gIGdldEZpZWxkczIoKTogUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT4ge1xuICAgIGxldCBmaWVsZHM6IHtba2V5OiBzdHJpbmddOiBWYXNGaWVsZER0b1ZhbHVlfSA9IHt9O1xuICAgIHRoaXMuZHluYW1pY1Byb3BlcnRpZXNcbiAgICAgIC5mb3JFYWNoKChncm91cE5hbWUpID0+IHtcbiAgICAgICAgT2JqZWN0XG4gICAgICAgICAgLmtleXModGhpcy4kdGhpc1tncm91cE5hbWVdKVxuICAgICAgICAgIC5mb3JFYWNoKGNvbnRyb2xOYW1lID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2xOYW1lU2hvcnQgPSBjb250cm9sTmFtZS5yZXBsYWNlKC9maWVsZHNcXC4vLCAnJyk7XG4gICAgICAgICAgICBmaWVsZHNbY29udHJvbE5hbWVTaG9ydF0gPSB0aGlzLmdldFZhbHVlQnlQYXRoKFxuICAgICAgICAgICAgICBbZ3JvdXBOYW1lLCBjb250cm9sTmFtZV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICB9KVxuICAgICAgfSwge30pXG4gICAgcmV0dXJuIGZpZWxkcztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9iamVjdCBkZXNjcmliaW5nIGhvdyBtYW55IGF0dGFjaG1lbnRzIHdlcmUgYWRkZWQgdG8gdGhpcyBqb2JcbiAgICogKGNhbWVyYSBjb250cm9scyBhbmQgZmlsZXMpLCBhbmQgaG93IG1hbnkgaGF2ZSBub3QgYmVlbiB1cGxvYWRlZCB5ZXQuXG4gICAqXG4gICAqIEBwYXJhbSBmb3JtTW9kZWwgaW5zdGFuY2Ugb2Yge0BsaW5rIFZhc0Zvcm1Nb2RlbH0gdGhhdCB3YXMgdXNlZCB3aGVuIHRoZVxuICAgKiBqb2Igd2FzIGNyZWF0ZWRcbiAgICovXG4gIGdldEZpbGVzVXBsb2FkU3RhdHVzKFxuICAgIGZvcm1Nb2RlbDogVmFzRm9ybU1vZGVsXG4gICk6IHtwZW5kaW5nOiBudW1iZXI7IHRvdGFsOiBudW1iZXJ9IHtcblxuICAgIGNvbnN0IHBhdGhzV2l0aFZhbHVlOiBBcnJheTxBcnJheTxzdHJpbmc+PiA9IGZvcm1Nb2RlbFxuICAgICAgLmdldENhbWVyYUNvbnRyb2xQYXRocygpXG4gICAgICAubWFwKHBhdGggPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZTogVmFzRmlsZUR0byB8IFZhc0NhbWVyYUNvbnRyb2xWYWx1ZU1vZGVsID1cbiAgICAgICAgICB0aGlzLmdldFZhbHVlQnlQYXRoKHBhdGgpIGFzIGFueTtcbiAgICAgICAgaWYgKHZhbHVlICYmICEhdmFsdWUuaWQpIHtcbiAgICAgICAgICByZXR1cm4gcGF0aDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKHBhdGggPT4gcGF0aCAhPT0gbnVsbCA/IHBhdGggOiBudWxsKVxuICAgICAgLmZpbHRlcihpc0FycmF5U3RyaW5nKTtcblxuICAgIGxldCB0b3RhbCA9IHBhdGhzV2l0aFZhbHVlLmxlbmd0aDtcblxuICAgIHRvdGFsICs9IHRoaXMuZmlsZXMubGVuZ3RoO1xuXG4gICAgLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2YgY2FtZXJhIGltYWdlcyBzdGlsbCB0byB1cGxvYWRcbiAgICBsZXQgcGVuZGluZyA9IHBhdGhzV2l0aFZhbHVlXG4gICAgICAubWFwKHBhdGggPT4gdGhpcy5nZXRWYWx1ZUJ5UGF0aChwYXRoKSBhcyBhbnkpXG4gICAgICAubWFwKCh2YWx1ZTogVmFzRmlsZUR0byB8IFZhc0NhbWVyYUNvbnRyb2xWYWx1ZU1vZGVsKSA9PiB7XG4gICAgICAgIGlmIChpc0ZpbGVEdG8odmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlLmlkICYmIHZhbHVlLnN0YXR1cyAhPT0gJ0NPTVBMRVRFJztcbiAgICAgICAgfSBlbHNlIGlmIChpc0NhbWVyYUNvbnRyb2xWYWx1ZVYxKHZhbHVlKSkge1xuICAgICAgICAgIC8vIGlmIHVybCBpcyBub3Qgc2V0LCBpdCBoYXNuJ3QgYmVlbiB1cGxvYWRlZFxuICAgICAgICAgIHJldHVybiB2YWx1ZS5pZCAmJiAhdmFsdWUudXJsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKGhhc1VwbG9hZGVkID0+IGhhc1VwbG9hZGVkKVxuICAgICAgLmxlbmd0aDtcblxuICAgIC8vIGFkZCB0b3RhbCBmcm9tIGZpbGVzIHRoYXQgYXJlIHBlbmRpbmdcbiAgICBwZW5kaW5nICs9IHRoaXMuZmlsZXNcbiAgICAgIC5maWx0ZXIodmFsdWUgPT4gdmFsdWUuc3RhdHVzICE9PSAnQ09NUExFVEVEJylcbiAgICAgIC5sZW5ndGg7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcGVuZGluZyxcbiAgICAgIHRvdGFsXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHdpbGwgaHlkcmF0ZSB0aGUgYGZpZWxkc2AgcHJvcGVydHkgb2YgdGhlIG1vZGVsLiBUaGUgcmVhc29uIGZvclxuICAgKiB0aGlzIGlzIHRoYXQgd2UgaGF2ZSBkaWZmZXJlbnQgd2F5cyB0byBzdG9yZSB0aGUgZmllbGQgZGF0YS4gT25lIHdheSwgaXNcbiAgICogd2Ugc3RvcmUgdGhlbSBhcyBkeW5hbWljIHByb3BlcnRpZXMgb2YgdGhlIGpvYi4gRm9yIGV4YW1wbGUgam9iLmZvby5iYXIsXG4gICAqIHdoZXJlIGBmb29gIGlzIHRoZSBuYW1lIG9mIGEgR3JvdXAsIGFuZCBgYmFyYCBpcyB0aGUgbmFtZSBvZiBhIGNvbnRyb2wuXG4gICAqIFRodXMsIHdoZW4gd2UgY3JlYXRlIGEgam9iIHVzaW5nIGEgZm9ybSBpbiB0aGUgY2xpZW50LCB0aGUgam9iIG9iamVjdCB3aWxsXG4gICAqIGhhdmUgaXRzIHN0YXRpYyBwcm9wZXJ0aWVzIChpZCwgYWNjb3VudCwgcmVmZXJlbmNlIGV0YyksIGFuZCBhbHNvIGEgbnVtYmVyXG4gICAqIG9mIGR5bmFtaWMgcHJvcGVydGllcyBkZXRlcm1pbmVkIGJ5IHRoZSBHcm91cHMgYW5kIENvbnRyb2xzLiBUaGlzIGtpbmQgb2ZcbiAgICogb2JqZWN0IGlzIG5pY2UgdG8gd29yayB3aXRoIGluIGNlcnRhaW4gY2lyY3Vtc3RhbmNlcy4gSG93ZXZlciwgdGhlIGFwaVxuICAgKiB3b3JrcyBkaWZmZXJlbnRseS4gSW4gdGhlIEFQSSBhIEpvYiBpcyBhIHJlY29yZCwgYW5kIHJlZmVyZW5jZXMgYSBudW1iZXIgb2ZcbiAgICogRmllbGQgcmVjb3Jkcy4gRWFjaCBGaWVsZCBzdG9yZXMgdGhlIHZhbHVlLiBDb21wYXJpbmcgdGhlc2UgdHdvIG1vZGVscyB3ZVxuICAgKiBoYXZlOlxuICAgKiBBKSBqb2Igd2l0aCBkeW5hbWljIHByb3BlcnRpZXMsIGUuZy5cbiAgICoge1xuICAgKiAgIGlkOiA8Z3VpZD4sXG4gICAqICAgcmVmZXJlbmNlOiBcInNvbWV0aGluZ1wiXG4gICAqICAgPG90aGVyIHN0YXRpYyBqb2IgcHJvcGVydGllcz4uLi5cbiAgICogICBmb286IHtcbiAgICogICAgIGJhcjogXCJ2YWx1ZVwiXG4gICAqICAgfVxuICAgKiB9XG4gICAqXG4gICAqIEIpIGpvYiB3aXRoIGZpZWxkc1xuICAgKiB7XG4gICAqICAgaWQ6IDxndWlkPixcbiAgICogICByZWZlcmVuY2U6IFwic29tZXRoaW5nXCJcbiAgICogICA8b3RoZXIgc3RhdGljIGpvYiBwcm9wZXJ0aWVzPi4uLlxuICAgKiAgIDx3aWxsIG5vdCBoYXZlIGR5bmFtaWMgcHJvcGVydGllcz4uLi5cbiAgICogICBmaWVsZHM6IFtcbiAgICogICAgIHtcbiAgICogICAgICAgaWQ6IDxndWlkPixcbiAgICogICAgICAgPG90aGVyIGZpZWxkIHByb3BlcnRpZXM+LFxuICAgKiAgICAgICB2YWx1ZTogXCJ2YWx1ZVwiXG4gICAqICAgICB9XG4gICAqICAgXVxuICAgKiB9XG4gICAqXG4gICAqIFNvLCB3aGF0IHRoaXMgbWV0aG9kIGRvZXMgaXMgZ2l2ZW4gYSBKb2JNb2RlbCBpbiB0aGUgZm9ybSBvZiBBLCByZWFkIGFsbFxuICAgKiBvZiB0aG9zZSBkeW5hbWljIHByb3BlcnRpZXMgYW5kIHNldCB0aGVtIGludG8gYGZpZWxkc2AuIERvaW5nIHRoaXMgcmVxdWlyZXNcbiAgICoga25vd2xlZGdlIG9mIHRoZSBGb3JtIHRoYXQgd2FzIHVzZWQgdG8gY3JlYXRlIHRoZSBqb2IuIE1vcmVvdmVyLCBzaW5jZSB0aGVcbiAgICogZHluYW1pYyBwcm9wZXJ0aWVzIGRvIG5vdCBjb250YWluIHRoZSBpZHMgb2YgdGhlIGZpZWxkcywgd2UgYWxzbyBhbGxvdyB0b1xuICAgKiBwYXNzIGluIGEgYGNvbnRyb2xGaWVsZElkTWFwYC4gVGhpcyBtYXAgc3RvcmVzIHRoZSBtYXBwaW5nIGJldHdlZW4gQ29udHJvbFxuICAgKiBhbmQgdGhlIEZpZWxkIHRoYXQgd2FzIGNyZWF0ZWQgaW4gdGhlIEpvYiB0byBzdG9yZSB0aGUgdmFsdWUgZm9yIHRoYXRcbiAgICogQ29udHJvbC4gVGhpcyBpcyB1c2VmdWwsIGlmIGZvciBleGFtcGxlIHlvdSB3YW50IHRvIGNvbXBhcmUgYSBKb2IgaW4gZm9ybSBBXG4gICAqIHdpdGggYSBKb2IgaW4gZm9ybSBCLCBmb3IgZXhhbXBsZSBpZiB5b3Ugd2FudCB0byB1cGRhdGUgdGhlIEpvYiBvbiB0aGUgQVBJXG4gICAqIHdpdGggYSBKb2IgdGhhdCB3YXMgc2F2ZWQgYnkgYSBjbGllbnQgaW4gZm9ybSBBLlxuICAgKlxuICAgKiBFLmcuXG4gICAqIENsaWVudCAtPiBBUEk6IGNsaWVudCByZXF1ZXN0cyBmb3JtXG4gICAqIFVzZXIgLT4gQ2xpZW50OiB1c2VyIGZpbGxzIGluIHRoZSBmb3JtIGFuZCBzdWJtaXRzXG4gICAqIENsaWVudCAtPiBGaXJlc3RvcmU6IGNsaWVudCBzYXZlcyB0aGUgSm9iIGluIGZvcm0gQSBpLmUuIGR5bmFtaWMgcHJvcHNcbiAgICogRmlyZXN0b3JlIC0+IEZ1bmN0aW9uOiBBIGZ1bmN0aW9uIGlzIHRyaWdnZXJlZCB0byBzeW5jIHRoZSBqb2IgdG8gdGhlIEFQSVxuICAgKiBGdW5jdGlvbiAtPiBBUEk6IEZ1bmN0aW9uIGNoZWNrcyBpZiBqb2IgYWxyZWFkeSBleGlzdHMsIGl0IHJlY2VpdmVzIDQwNFxuICAgKiBGdW5jdGlvbiAtPiBGdW5jdGlvbjogVGhlIGZ1bmN0aW9uIGNhbGxzIGBoeWRyYXRlRmllbGRzKC4uLilgXG4gICAqIEZ1bmN0aW9uIC0+IEFQSTogVGhlIGZ1bmN0aW9uIFBPU1QgdGhlIEpvYiB0byAvam9ic1xuICAgKiBGdW5jdGlvbiAtPiBBUEk6IFRoZSBmdW5jdGlvbiBQT1NUIGVhY2ggZmllbGQgdG8gL2ZpZWxkc1xuICAgKlxuICAgKiBTaW1pbGFybHksIGlmIHRoZSB1c2VyIHVwZGF0ZXMgdGhlIGpvYlxuICAgKiBDbGllbnQgLT4gQVBJOiBjbGllbnQgcmVxdWVzdHMgZm9ybVxuICAgKiBVc2VyIC0+IENsaWVudDogdXNlciBmaWxscyBpbiB0aGUgZm9ybSBhbmQgc3VibWl0cyBhbiB1cGRhdGVcbiAgICogQ2xpZW50IC0+IEZpcmVzdG9yZTogY2xpZW50IHNhdmVzIHRoZSBKb2IgaW4gZm9ybSBBIGkuZS4gZHluYW1pYyBwcm9wc1xuICAgKiBGaXJlc3RvcmUgLT4gRnVuY3Rpb246IEEgZnVuY3Rpb24gaXMgdHJpZ2dlcmVkIHRvIHN5bmMgdGhlIGpvYiB0byB0aGUgQVBJXG4gICAqIEZ1bmN0aW9uIC0+IEFQSTogRnVuY3Rpb24gY2hlY2tzIGlmIGpvYiBhbHJlYWR5IGV4aXN0cywgaXQgcmVjZWl2ZXMgMjAwXG4gICAqIEZ1bmN0aW9uIC0+IEZ1bmN0aW9uOiBUaGUgZnVuY3Rpb24gY2FsbHMgYGh5ZHJhdGVGaWVsZHMoLi4uKWAgcGFzc2luZyBpblxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgdGhlIG1hcCBpcyBtYWRlIGJ5IGl0ZXJhdGluZyBvdmVyIHRoZSBmaWVsZHMgaXRcbiAgICogICAgICAgICAgICAgICAgICAgICAgIHJlY2VpdmVkIGZyb20gdGhlIEFQSSBhbmQgc3RvcmluZyB0aGUgbWFwcGluZ3NcbiAgICogICAgICAgICAgICAgICAgICAgICAgIGJldHdlZW4gY29udHJvbElkIGFuZCBmaWVsZElkIGZvciBlYWNoIGZpZWxkXG4gICAqIEZ1bmN0aW9uIC0+IEFQSTogVGhlIGZ1bmN0aW9uIFBBVENIIHRoZSBKb2IgdG8gL2pvYnNcbiAgICogRnVuY3Rpb24gLT4gQVBJOiBUaGUgZnVuY3Rpb24gUE9TVC9QQVRDSCBlYWNoIGZpZWxkIHRvIC9maWVsZHNcbiAgICogdHJlYXRlZCBhcyBuZXdcbiAgICpcbiAgICogQHBhcmFtIHtWYXNGb3JtTW9kZWx9IGZvcm1Nb2RlbCB0aGUgVmFzRm9ybU1vZGVsIHRoYXQgd2FzIHVzZWQgdG8gY3JlYXRlXG4gICAqIHRoZSBqb2JcbiAgICogQHBhcmFtIHtNYXA8c3RyaW5nLCBzdHJpbmc+fSBjb250cm9sRmllbGRJZE1hcCBhIG1hcHBpbmcgb2YgY29udHJvbCB0b1xuICAgKiBmaWVsZCBpZHMuIFRoaXMgaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hldGhlciBhIG5ldyBpZCBmb3IgdGhlIGZpZWxkIHNob3VsZFxuICAgKiBiZSBnZW5lcmF0ZWQsIG9yIHRvIHJldXNlIGFuIGV4aXN0aW5nIG9uZSBmcm9tIHRoZSBtYXAuXG4gICAqIEBwYXJhbSB7QXJyYXk8c3RyaW5nPn0gY29udHJvbE5hbWVzIGlmIGEgdmFsdWUgaXMgcHJvdmlkZWQsIGl0IHdpbGwgYmUgdXNlZFxuICAgKiB0byBmaWx0ZXIgdGhlIGZpZWxkcyB0aGF0IGFyZSByZXR1cm5lZC5cbiAgICogQHJldHVybiB7QXJyYXk8VmFzRmllbGREdG8+fVxuICAgKi9cbiAgaHlkcmF0ZUZpZWxkcyhcbiAgICBmb3JtTW9kZWw6IFZhc0Zvcm1Nb2RlbCxcbiAgICBjb250cm9sRmllbGRJZE1hcDogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCksXG4gICAgY29udHJvbE5hbWVzPzogQXJyYXk8c3RyaW5nPlxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmaWVsZHM6IEFycmF5PFZhc0ZpZWxkRHRvPiA9IFtdO1xuICAgIGZvcm1Nb2RlbC5ncm91cHNcbiAgICAgIC5mb3JFYWNoKGdyb3VwID0+IHtcbiAgICAgICAgZ3JvdXAuY29udHJvbHMuZm9yRWFjaChjb250cm9sID0+IHtcblxuICAgICAgICAgIGlmICghY29udHJvbC5uYW1lLnN0YXJ0c1dpdGgoJ2ZpZWxkcy4nKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChjb250cm9sTmFtZXMgJiYgIWNvbnRyb2xOYW1lcy5pbmNsdWRlcyhjb250cm9sLm5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZmllbGRzLnB1c2goVmFzRmllbGRNb2RlbC5mcm9tRHRvKHtcbiAgICAgICAgICAgIC8vIGlmIHRoZSBjb250cm9sSWQgZXhpc3RzIGluIHRoZSBtYXAsIHVzZSB0aGUgYXNzb2NpYXRlZCBmaWVsZElkLFxuICAgICAgICAgICAgLy8gb3RoZXJ3aXNlIGdlbmVyYXRlIGEgbmV3IGlkIGZvciB0aGUgZmllbGQuXG4gICAgICAgICAgICBpZDogY29udHJvbEZpZWxkSWRNYXAuZ2V0KGNvbnRyb2wuaWQpIHx8IFVVSUQuVVVJRCgpLFxuICAgICAgICAgICAgYWNjb3VudDogdGhpcy5hY2NvdW50LFxuICAgICAgICAgICAgam9iOiB0aGlzLmlkLFxuICAgICAgICAgICAgY3JlYXRlZEJ5OiB0aGlzLmNyZWF0ZWRCeSxcbiAgICAgICAgICAgIGNyZWF0ZWQ6IHRoaXMuY3JlYXRlZCxcbiAgICAgICAgICAgIG1vZGlmaWVkQnk6IHRoaXMubW9kaWZpZWRCeSxcbiAgICAgICAgICAgIG1vZGlmaWVkOiB0aGlzLm1vZGlmaWVkLFxuICAgICAgICAgICAgY29udHJvbDogY29udHJvbC5pZCxcbiAgICAgICAgICAgIHZhbHVlOiB0aGlzLmdldFZhbHVlQnlQYXRoKFxuICAgICAgICAgICAgICBbZ3JvdXAubmFtZSwgY29udHJvbC5uYW1lXVxuICAgICAgICAgICAgKVxuICAgICAgICAgIH0pKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB0aGlzLmZpZWxkcyA9IGZpZWxkcztcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBwYXRoIHBhdGggc2VnbWVudHNcbiAgICogQHJldHVybiB7dm9pZH1cbiAgICovXG4gIGdldFZhbHVlQnlQYXRoPFQgZXh0ZW5kcyBWYXNGaWVsZER0b1ZhbHVlPihcbiAgICBwYXRoOiBzdHJpbmdbXSA9IFtdXG4gICk6IFQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBnZXRWYWx1ZUJ5UGF0aChwYXRoLCB0aGlzLiR0aGlzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHZlcnkgbm9uIHNvcGhpc3RpY2F0ZWQgd2F5IHRvIHNldCB2YWx1ZXMgaW4gdGhlIGpvYiB2aWEgcGF0aHNcbiAgICpcbiAgICogRm9yIGV4YW1wbGU6XG4gICAqXG4gICAqIHNldFZhbHVlQnlQYXRoKCd2YWx1ZScsIFsnZm9vJywgJ2JhciddKTtcbiAgICpcbiAgICogd2lsbCBtYWtlIHJlc3VsdHMgaW4gam9iXG4gICAqIHtcbiAgICogICBmb286IHtcbiAgICogICAgIGJhcjogJ3ZhbHVlJ1xuICAgKiAgIH1cbiAgICogfVxuICAgKlxuICAgKiBAcGFyYW0ge2FueX0gdmFsdWUgdGhlIHZhbHVlIHRvIHNldFxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBwYXRoIHBhdGggc2VnbWVudHNcbiAgICovXG4gIHNldFZhbHVlQnlQYXRoKHZhbHVlOiBWYXNGaWVsZER0b1ZhbHVlLCBwYXRoOiBzdHJpbmdbXSA9IFtdKTogdm9pZCB7XG4gICAgc3dpdGNoIChwYXRoLmxlbmd0aCkge1xuICAgICAgY2FzZSAwOiB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNhc2UgMToge1xuICAgICAgICAodGhpcyBhcyBhbnkpW3BhdGhbMF1dID0gdmFsdWU7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNhc2UgMjoge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuICAgICAgICAodGhpcy4kdGhpc1twYXRoWzBdXSBhcyBSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPilbcGF0aFsxXV0gPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAzOiB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGVuXG4gICAgICAgICgodGhpcy4kdGhpc1twYXRoWzBdXSBhcyBSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPilbcGF0aFsxXV0gYXMgUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT4pW3BhdGhbMl1dID0gdmFsdWU7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgdGhyb3cgRXJyb3IoJ3BhdGggaGFzIHRvbyBtYW55IHNlZ21lbnRzJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gc3RhdGljT25seSBpZiB0cnVlLCB3aWxsIG9ubHkgb3V0cHV0IHZhbHVlcyBmb3IgdGhlIHN0YXRpY1xuICAgKiBwcm9wZXJ0aWVzIGluIHRoZSBkdG9cbiAgICogQHJldHVybiB7VmFzSm9iRHRvfVxuICAgKi9cbiAgcHVibGljIHRvRHRvKHN0YXRpY09ubHkgPSBmYWxzZSk6IFZhc0pvYkR0byB7XG5cbiAgICBpZiAoc3RhdGljT25seSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgIGNyZWF0ZWQ6IHRoaXMuY3JlYXRlZCxcbiAgICAgICAgY3JlYXRlZEJ5OiB0aGlzLmNyZWF0ZWRCeSxcbiAgICAgICAgbW9kaWZpZWQ6IHRoaXMubW9kaWZpZWQsXG4gICAgICAgIG1vZGlmaWVkQnk6IHRoaXMubW9kaWZpZWRCeSxcbiAgICAgICAgc2VydmVyQ3JlYXRlZDogdGhpcy5zZXJ2ZXJDcmVhdGVkLFxuICAgICAgICBzZXJ2ZXJNb2RpZmllZDogdGhpcy5zZXJ2ZXJNb2RpZmllZCxcbiAgICAgICAgYWNjb3VudDogdGhpcy5hY2NvdW50LFxuICAgICAgICBhY2Nlc3NHcm91cDogdGhpcy5hY2Nlc3NHcm91cCxcbiAgICAgICAgcmVmZXJlbmNlOiB0aGlzLnJlZmVyZW5jZSxcbiAgICAgICAgam9iRGF0ZTogdGhpcy5qb2JEYXRlLFxuICAgICAgICBqb2JTdGF0dXM6IHRoaXMuam9iU3RhdHVzLFxuICAgICAgICBqb2JUeXBlOiB0aGlzLmpvYlR5cGUsXG4gICAgICAgIGFzc2lnbmVlSWQ6IHRoaXMuYXNzaWduZWVJZCxcbiAgICAgICAgZm9ybUlkOiB0aGlzLmZvcm1JZCxcbiAgICAgICAgdGltZVpvbmVPZmZzZXQ6IHRoaXMudGltZVpvbmVPZmZzZXQsXG4gICAgICAgIHBlbmRpbmdGaWVsZHM6IHRoaXMucGVuZGluZ0ZpZWxkcyxcbiAgICAgICAgY2hpbGRNb2RpZmllZDogdGhpcy5jaGlsZE1vZGlmaWVkLFxuICAgICAgICB2ZXJzaW9uOiB0aGlzLnZlcnNpb24sXG4gICAgICAgIGZpZWxkczogdGhpcy5maWVsZHMsXG4gICAgICAgIGZpbGVzOiB0aGlzLmZpbGVzLFxuICAgICAgICBjcmVhdGVkQnlEaXNwbGF5TmFtZTogdGhpcy5jcmVhdGVkQnlEaXNwbGF5TmFtZSxcbiAgICAgICAgbW9kaWZpZWRCeURpc3BsYXlOYW1lOiB0aGlzLm1vZGlmaWVkQnlEaXNwbGF5TmFtZSxcbiAgICAgICAgZ2VvTG9jYXRpb246IHRoaXMuZ2VvTG9jYXRpb25cbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgZHRvID0ge30gYXMgVmFzSm9iTW9kZWxEeW5hbWljSW50ZXJmYWNlO1xuICAgIFsuLi50aGlzLnN0YXRpY1Byb3BlcnRpZXMsIC4uLnRoaXMuZHluYW1pY1Byb3BlcnRpZXNdXG4gICAgICAuZm9yRWFjaChwcm9wID0+XG4gICAgICAgIChkdG8pW3Byb3BdID0gdGhpcy4kdGhpc1twcm9wXSk7XG5cbiAgICByZXR1cm4gZHRvIGFzIGFueTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCB3aWxsIHBhcnNlIGEgc3ludGF4IHRoYXQgYWxsb3dzIHVzIHRvIGJ1aWxkIHN0cmluZ3MgZnJvbSB0aGVcbiAgICogdmFsdWVzIG9mIGZyb20gdGhlIGpvYiBtb2RlbC4gRm9yIGV4YW1wbGUgaWYgdGhlIGpvYiBtb2RlbCB3YXM6XG4gICAqXG4gICAqIHtcbiAgICogICBmb286ICdiYXInXG4gICAqIH1cbiAgICpcbiAgICogYW5kIHdlIHBhc3MgXCJpIGFtIGZvbyB7Zm9vfVwiLCB0aGUgcmVzdWx0IHdvdWxkIGJlOlxuICAgKlxuICAgKiBcImkgYW0gZm9vIGJhclwiXG4gICAqXG4gICAqIHdlIGNhbiBhbHNvIHVzZSBtb21lbnQgdG8gcGFyc2UgZGF0ZXMsIGZvciBleGFtcGxlIGlmIHRoZSBqb2IgbW9kZWwgd2FzOlxuICAgKlxuICAgKiB7XG4gICAqICAgY3JlYXRlZDogXCIyMDIyLTAxLTAxVDAwOjAwOjAwKzAwMDBcIlxuICAgKiB9XG4gICAqXG4gICAqIGFuZCB3ZSBwYXNzIFwie2NyZWF0ZWR8ZGF0ZTpZWS1NTS1ERH1cIiwgdGhlIHJlc3VsdCB3b3VsZCBiZTpcbiAgICpcbiAgICogXCIyMDIyLTAxLTAxXCJcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIGEgc3RyaW5nIHdpdGggdGhlIHN5bnRheFxuICAgKiBAcGFyYW0ge1BhcnNlU3ludGF4T3B0aW9uc30gb3B0aW9uc1xuICAgKiBAcmV0dXJuIHtzdHJpbmd9IHRoZSByZXN1bHRzIG9mIHBhcnNpbmcgdGhlIHN5bnRheCBvbiB0aGlzIGpvYlxuICAgKi9cbiAgcGFyc2VTeW50YXgoXG4gICAgdmFsdWU6IHN0cmluZyxcbiAgICBvcHRpb25zOiBQYXJzZVN5bnRheE9wdGlvbnMgPSB7XG4gICAgICB0aW1lWm9uZU9mZnNldDogMFxuICAgIH1cbiAgKTogc3RyaW5nIHtcblxuICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUucmVwbGFjZSgvKHtbXn1dKn0pL2csIChtYXRjaDogc3RyaW5nLCB0b2tlbjogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBzeW50YXggPSB0b2tlbi5zdWJzdHJpbmcoMSwgdG9rZW4ubGVuZ3RoIC0gMSk7XG5cbiAgICAgIGxldCBba2V5LCBmaWx0ZXJdID0gc3ludGF4LnNwbGl0KCd8Jyk7XG4gICAgICBrZXkgPSAoa2V5IHx8ICcnKS50cmltKCk7XG4gICAgICBmaWx0ZXIgPSAoZmlsdGVyIHx8ICcnKS50cmltKClcblxuICAgICAgbGV0IGZpbHRlck5hbWUsIGZpbHRlckFyZzogc3RyaW5nID0gJyc7XG4gICAgICBpZiAoZmlsdGVyKSB7XG4gICAgICAgIGNvbnN0IHNwbGl0SW5kZXggPSBmaWx0ZXIuaW5kZXhPZignOicpO1xuICAgICAgICBpZiAoc3BsaXRJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBmaWx0ZXJOYW1lID0gZmlsdGVyLnN1YnN0cmluZygwLCBzcGxpdEluZGV4KTtcbiAgICAgICAgICBmaWx0ZXJBcmcgPSBmaWx0ZXIuc3Vic3RyaW5nKHNwbGl0SW5kZXggKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmaWx0ZXJOYW1lID0gZmlsdGVyO1xuICAgICAgICAgIGZpbHRlckFyZyA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGZpbHRlck5hbWUgPSAoZmlsdGVyTmFtZSB8fCAnJykudHJpbSgpO1xuICAgICAgICBmaWx0ZXJBcmcgPSAoZmlsdGVyQXJnIHx8ICcnKS50cmltKCk7XG4gICAgICB9XG4gICAgICBjb25zdCBwYXRoID0ga2V5LnNwbGl0KCcuJyk7XG4gICAgICBjb25zdCBvYmplY3RLZXkgPSBwYXRoLnNoaWZ0KCkgfHwgJyc7XG4gICAgICBsZXQgcmVzdWx0ID0gJyc7XG4gICAgICBpZiAob2JqZWN0S2V5ID09PSAnam9iJykge1xuICAgICAgICByZXN1bHQgPSAodGhpcy5nZXRWYWx1ZUJ5UGF0aChwYXRoKSB8fCAnJykudG9TdHJpbmcoKTtcbiAgICAgIH0gZWxzZSBpZiAob2JqZWN0S2V5ID09PSAnZmllbGRzJykge1xuICAgICAgICByZXN1bHQgPSAoZ2V0VmFsdWVCeVBhdGgocGF0aCwgdGhpcy5nZXRGaWVsZHMyKCkpIHx8ICcnKS50b1N0cmluZygpO1xuICAgICAgfSBlbHNlIGlmIChvYmplY3RLZXkubGVuZ3RoKSB7XG4gICAgICAgIGlmIChvcHRpb25zLm9iamVjdHMpIHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5vYmplY3RzW29iamVjdEtleV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc29sZS5kZWJ1ZyhcbiAgICAgICAgICAgICAgYG9iamVjdEtleSAke29iamVjdEtleX0gaXMgbm90IHByZXNlbnQgaW4gb3B0aW9ucy5vYmplY3RgXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcmVzdWx0ID0gJyc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IChnZXRWYWx1ZUJ5UGF0aChwYXRoLCBvcHRpb25zLm9iamVjdHNbb2JqZWN0S2V5XSkgfHwgJycpXG4gICAgICAgICAgICAgIC50b1N0cmluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgICAgICAgYG9iamVjdEtleSAke29iamVjdEtleX0gd2FzIHVzZWQgYnV0IG9wdGlvbnMub2JqZWN0IGlzIG5vdCBzZXRgXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH1cblxuXG4gICAgICBpZiAoZmlsdGVyTmFtZSAmJiByZXN1bHQpIHtcbiAgICAgICAgc3dpdGNoIChmaWx0ZXJOYW1lKSB7XG4gICAgICAgICAgY2FzZSAnZGF0ZSc6IHtcbiAgICAgICAgICAgIHJldHVybiBtb21lbnQocmVzdWx0KVxuICAgICAgICAgICAgICAudXRjT2Zmc2V0KG9wdGlvbnMudGltZVpvbmVPZmZzZXQpXG4gICAgICAgICAgICAgIC5mb3JtYXQoZmlsdGVyQXJnIHx8ICcnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCd1bmtub3duIGZpbHRlciAlcycsIGZpbHRlck5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0pLnRyaW0oKTtcbiAgfTtcblxuICAvKipcbiAgICogQHJldHVybiB7b2JqZWN0fVxuICAgKi9cbiAgb3ZlcnJpZGUgdG9BcGlEdG8oKTogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zdXBlci50b0FwaUR0bygpLFxuICAgICAgcmVmZXJlbmNlOiB0aGlzLnJlZmVyZW5jZSB8fCAnficsXG4gICAgICBqb2JEYXRlOiB0aGlzLmpvYkRhdGUgfHwgJ34nLFxuICAgICAgam9iVHlwZTogdGhpcy5qb2JUeXBlIHx8ICd+JyxcbiAgICAgIGFjY2Vzc0dyb3VwOiB0aGlzLmFjY2Vzc0dyb3VwIHx8ICd+JyxcbiAgICAgIGpvYlN0YXR1czogdGhpcy5qb2JTdGF0dXMgfHwgJ34nLFxuICAgICAgYXNzaWduZWVJZDogdGhpcy5hc3NpZ25lZUlkIHx8ICd+JyxcbiAgICAgIHRpbWVab25lT2Zmc2V0OiB0aGlzLnRpbWVab25lT2Zmc2V0IHx8IDAsXG4gICAgICBwZW5kaW5nRmllbGRzOiB0aGlzLnBlbmRpbmdGaWVsZHMgfHwgMCxcbiAgICAgIGxhc3RGb3JtOiB0aGlzLmZvcm1JZCB8fCAnfidcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
471
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLWpvYi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Zhcy1saWIvc3JjL2xpYi9lbnRpdHkvdmFzLWpvYi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdsRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RixPQUFPLEVBQWUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsc0JBQXNCLEVBQThCLE1BQU0saURBQWlELENBQUM7QUFDckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBb0J6RDs7R0FFRztBQUNILE1BQU0sT0FBTyxXQUFZLFNBQVEsK0JBQStCO0lBRTlELFlBQ2tCLEVBQVUsRUFDVixPQUFlLEVBQ2YsYUFBcUIsRUFDckIsU0FBaUIsRUFDakIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsVUFBa0IsRUFDbEIsYUFBcUIsRUFDckIsY0FBc0IsRUFDdEIsT0FBZSxFQUNmLFdBQW1CLEVBQzVCLFNBQWlCLEVBQ2pCLE9BQWUsRUFDZixTQUFpQixFQUNqQixPQUFlLEVBQ2YsVUFBa0IsRUFDbEIsTUFBYyxFQUNkLGNBQXNCLEVBQ3RCLGFBQXFCLEVBQ3JCLGFBQXFCLEVBQ3JCLE9BQWUsRUFDZixNQUEwQixFQUMxQixLQUF3QixFQUN4QixvQkFBNEIsRUFDNUIscUJBQTZCLEVBQzdCLFdBQXdCO1FBRS9CLEtBQUssQ0FD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RSxJQUFJLENBQUMsU0FBUyxJQUFJLEdBQUc7WUFDaEMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLElBQUksR0FBRztZQUM1QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxHQUFHO1lBQzVCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLEdBQUc7WUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksR0FBRztZQUNoQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQ2xDLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUM7WUFDeEMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQztZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxHQUFHO1NBQzdCLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0ZpbGVEdG8sIFZhc0ZpbGVEdG8gfSBmcm9tICcuL3Zhcy1maWxlLmR0byc7XG5pbXBvcnQgeyBVVUlEIH0gZnJvbSAnYW5ndWxhcjItdXVpZCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBnZXRWYWx1ZUJ5UGF0aCB9IGZyb20gJy4uL3V0aWxzL2dldC12YWx1ZS1ieS1wYXRoJztcbmltcG9ydCB7IFZhc0Jhc2VEdG8gfSBmcm9tICcuL3Zhcy1iYXNlLmR0byc7XG5pbXBvcnQgeyBWYXNGaWVsZER0bywgVmFzRmllbGREdG9WYWx1ZSB9IGZyb20gJy4vdmFzLWZpZWxkLmR0byc7XG5pbXBvcnQgeyBWYXNGaWVsZE1vZGVsIH0gZnJvbSAnLi92YXMtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgVmFzRm9ybU1vZGVsIH0gZnJvbSAnLi92YXMtZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBWYXNKb2JEdG8gfSBmcm9tICcuL3Zhcy1qb2IuZHRvJztcbmltcG9ydCB7IFZhc1Jlc3RyaWN0ZWRBY2NvdW50T2JqZWN0TW9kZWwgfSBmcm9tICcuL3Zhcy1yZXN0cmljdGVkLWFjY291bnQtb2JqZWN0Lm1vZGVsJztcbmltcG9ydCB7IEdlb0xvY2F0aW9uLCBnZXRFbXB0eUdlb0xvY2F0aW9uIH0gZnJvbSAnLi4vbW9kZWwvZ2VvLWxvY2F0aW9uJztcbmltcG9ydCB7IGlzQ2FtZXJhQ29udHJvbFZhbHVlVjEsIFZhc0NhbWVyYUNvbnRyb2xWYWx1ZU1vZGVsIH0gZnJvbSAnLi4vY29udHJvbC12YWx1ZS92YXMtY2FtZXJhLWNvbnRyb2wtdmFsdWUubW9kZWwnO1xuaW1wb3J0IHsgaXNBcnJheVN0cmluZyB9IGZyb20gJy4uL3V0aWxzL2lzLWFycmF5LXN0cmluZyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBWYXNKb2JNb2RlbER5bmFtaWNJbnRlcmZhY2Uge1xuICBbczogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VTeW50YXhPcHRpb25zIHtcbiAgLy8gVGhpcyB2YWx1ZSB3aWxsIGJlIHVzZWQgdG8gYWRqdXN0IGFueSBkYXRldGltZSB2YWx1ZXMgdGhhdCBhcmUgcmVmZXJlbmNlZFxuICAvLyBpbiB0aGUgc3ludGF4IHN0cmluZy4gU2VlXG4gIC8vIGh0dHBzOi8vbW9tZW50anNjb20ucmVhZHRoZWRvY3MuaW8vZW4vbGF0ZXN0L21vbWVudC8wMy1tYW5pcHVsYXRpbmcvMDktdXRjLW9mZnNldC9cbiAgLy8gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgaG93IGBtb21lbnRgIHdpbGwgaGFuZGxlIHRoZSB2YWx1ZS5cbiAgdGltZVpvbmVPZmZzZXQ6IG51bWJlcixcbiAgLy8gdGhpcyBkaWN0aW9uYXJ5IGNhbiBiZSBwYXNzZWQgaW4gdG8gY29udGFpbiBvdGhlciBvYmplY3RzIHRvIGJlIHJlZmVyZW5jZWRcbiAgLy8gaW4gdGhlIHN5bnRheC4gRm9yIGV4YW1wbGUgaWYgd2UgaGF2ZSB7am9iLmZvb30gdGhpcyB3aWxsIHJlZmVyZW5jZSB0aGVcbiAgLy8gam9iJ3MgYGZvb2AgcHJvcGVydHksIGhvd2V2ZXIgaWYgd2UgaGF2ZSBcInJlcG9ydExheW91dC50aXRsZVwiIHRoaXMgd2lsbFxuICAvLyBleHBlY3QgdG8gZmluZCBhIHByb3BlcnR5IG9mIGBvYmplY3RzYCBjYWxsZWQgYHJlcG9ydExheW91dGAgd2hpY2ggd2lsbFxuICAvLyBoYXZlIGEgcHJvcGVydHkgY2FsbGVkIGB0aXRsZWBcbiAgb2JqZWN0cz86IFJlY29yZDxzdHJpbmcsIFBhcnRpYWw8VmFzQmFzZUR0bz4gfCBSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPj47XG59XG5cbi8qKlxuICogSm9iTW9kZWxcbiAqL1xuZXhwb3J0IGNsYXNzIFZhc0pvYk1vZGVsIGV4dGVuZHMgVmFzUmVzdHJpY3RlZEFjY291bnRPYmplY3RNb2RlbCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJyaWRlIGlkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyQ3JlYXRlZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkQnk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyTW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWRCeTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkQnlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkQnlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGFjY291bnQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgYWNjZXNzR3JvdXA6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVmZXJlbmNlOiBzdHJpbmcsXG4gICAgcHVibGljIGpvYkRhdGU6IHN0cmluZyxcbiAgICBwdWJsaWMgam9iU3RhdHVzOiBzdHJpbmcsXG4gICAgcHVibGljIGpvYlR5cGU6IHN0cmluZyxcbiAgICBwdWJsaWMgYXNzaWduZWVJZDogc3RyaW5nLFxuICAgIHB1YmxpYyBmb3JtSWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgdGltZVpvbmVPZmZzZXQ6IG51bWJlcixcbiAgICBwdWJsaWMgcGVuZGluZ0ZpZWxkczogbnVtYmVyLFxuICAgIHB1YmxpYyBjaGlsZE1vZGlmaWVkOiBzdHJpbmcsXG4gICAgcHVibGljIHZlcnNpb246IG51bWJlcixcbiAgICBwdWJsaWMgZmllbGRzOiBBcnJheTxWYXNGaWVsZER0bz4sXG4gICAgcHVibGljIGZpbGVzOiBBcnJheTxWYXNGaWxlRHRvPixcbiAgICBwdWJsaWMgY3JlYXRlZEJ5RGlzcGxheU5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgbW9kaWZpZWRCeURpc3BsYXlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIGdlb0xvY2F0aW9uOiBHZW9Mb2NhdGlvblxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGlkLFxuICAgICAgY3JlYXRlZCxcbiAgICAgIHNlcnZlckNyZWF0ZWQsXG4gICAgICBjcmVhdGVkQnksXG4gICAgICBtb2RpZmllZCxcbiAgICAgIHNlcnZlck1vZGlmaWVkLFxuICAgICAgbW9kaWZpZWRCeSxcbiAgICAgIGNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnQsXG4gICAgICBhY2Nlc3NHcm91cFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGlzIHdpdGggdGhlIGR5bmFtaWMgaW50ZXJmYWNlXG4gICAqIEByZXR1cm4ge1Zhc0pvYk1vZGVsRHluYW1pY0ludGVyZmFjZX1cbiAgICovXG4gIGdldCAkdGhpcygpOiBWYXNKb2JNb2RlbER5bmFtaWNJbnRlcmZhY2Uge1xuICAgIHJldHVybiB0aGlzIGFzIGFueTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgbGlzdCBvZiBKb2IgZHluYW1pYyBwcm9wZXJ0aWVzIGkuZS4gdGhvc2UgdGhhdCBhcmUgYWRkZWQgYnkgdGhlXG4gICAqIGR5bmFtaWMgZm9ybXNcbiAgICovXG4gIGdldCBkeW5hbWljUHJvcGVydGllcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICBjb25zdCBuYXRpdmVQcm9wcyA9IHRoaXMuc3RhdGljUHJvcGVydGllcztcbiAgICByZXR1cm4gT2JqZWN0XG4gICAgICAuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKVxuICAgICAgLmZpbHRlcihwcm9wID0+ICFuYXRpdmVQcm9wcy5pbmNsdWRlcyhwcm9wKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGxpc3Qgb2YgSm9iIHN0YXRpYyBwcm9wZXJ0aWVzIGkuZS4gdGhvc2UgdGhhdCBhcmUgZGVjbGFyZWQgYnlcbiAgICogdGhlIHR5cGVcbiAgICovXG4gIGdldCBzdGF0aWNQcm9wZXJ0aWVzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgIHJldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhWYXNKb2JNb2RlbC5lbXB0eSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJuIHtWYXNKb2JNb2RlbH1cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZW1wdHkoKTogVmFzSm9iTW9kZWwge1xuICAgIHJldHVybiBuZXcgVmFzSm9iTW9kZWwoXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICAnJyxcbiAgICAgICcnLFxuICAgICAgbW9tZW50KCkudXRjT2Zmc2V0KCksXG4gICAgICAwLFxuICAgICAgJycsXG4gICAgICAwLFxuICAgICAgW10sXG4gICAgICBbXSxcbiAgICAgICcnLFxuICAgICAgJycsXG4gICAgICBnZXRFbXB0eUdlb0xvY2F0aW9uKClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tRHRvKGR0bzogUGFydGlhbDxWYXNKb2JEdG8+KTogVmFzSm9iTW9kZWwge1xuICAgIGNvbnN0IG1vZGVsID0gbmV3IFZhc0pvYk1vZGVsKFxuICAgICAgZHRvLmlkIHx8ICcnLFxuICAgICAgZHRvLmNyZWF0ZWQgfHwgJycsXG4gICAgICBkdG8uc2VydmVyQ3JlYXRlZCB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkQnkgfHwgJycsXG4gICAgICBkdG8ubW9kaWZpZWQgfHwgJycsXG4gICAgICBkdG8uc2VydmVyTW9kaWZpZWQgfHwgJycsXG4gICAgICBkdG8ubW9kaWZpZWRCeSB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkQnlOYW1lIHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkQnlOYW1lIHx8ICcnLFxuICAgICAgZHRvLmFjY291bnQgfHwgJycsXG4gICAgICBkdG8uYWNjZXNzR3JvdXAgfHwgJycsXG4gICAgICBkdG8ucmVmZXJlbmNlIHx8ICcnLFxuICAgICAgZHRvLmpvYkRhdGUgfHwgJycsXG4gICAgICBkdG8uam9iU3RhdHVzIHx8ICcnLFxuICAgICAgZHRvLmpvYlR5cGUgfHwgJycsXG4gICAgICBkdG8uYXNzaWduZWVJZCB8fCAnJyxcbiAgICAgIGR0by5mb3JtSWQgfHwgJycsXG4gICAgICBkdG8udGltZVpvbmVPZmZzZXQgfHwgbW9tZW50KCkudXRjT2Zmc2V0KCksXG4gICAgICBkdG8ucGVuZGluZ0ZpZWxkcyB8fCAwLFxuICAgICAgZHRvLmNoaWxkTW9kaWZpZWQgfHwgJycsXG4gICAgICBkdG8udmVyc2lvbiB8fCAwLFxuICAgICAgZHRvLmZpZWxkcyB8fCBbXSxcbiAgICAgIGR0by5maWxlcyB8fCBbXSxcbiAgICAgIGR0by5jcmVhdGVkQnlEaXNwbGF5TmFtZSB8fCAnJyxcbiAgICAgIGR0by5tb2RpZmllZEJ5RGlzcGxheU5hbWUgfHwgJycsXG4gICAgICBkdG8uZ2VvTG9jYXRpb24gfHwgZ2V0RW1wdHlHZW9Mb2NhdGlvbigpXG4gICAgKTtcbiAgICBjb25zdCBlbXB0eUtleXMgPSBtb2RlbC5zdGF0aWNQcm9wZXJ0aWVzO1xuICAgIE9iamVjdFxuICAgICAgLmtleXMoZHRvKVxuICAgICAgLmZpbHRlcihrZXkgPT4gZW1wdHlLZXlzLmluZGV4T2Yoa2V5KSA9PT0gLTEpXG4gICAgICAuZm9yRWFjaCgoa2V5OiBzdHJpbmcpID0+XG4gICAgICAgIG1vZGVsLiR0aGlzW2tleV0gPSAoZHRvIGFzIFZhc0pvYk1vZGVsRHluYW1pY0ludGVyZmFjZSlba2V5XVxuICAgICAgKTtcbiAgICByZXR1cm4gbW9kZWw7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtWYXNGb3JtTW9kZWx9IGZvcm1Nb2RlbFxuICAgKiBAcmV0dXJuIHtSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPn1cbiAgICovXG4gIGdldEZpZWxkcyhmb3JtTW9kZWw6IFZhc0Zvcm1Nb2RlbCk6IFJlY29yZDxzdHJpbmcsIFZhc0ZpZWxkRHRvVmFsdWU+IHtcbiAgICBjb25zdCBmaWVsZHM6IHsgW2tleTogc3RyaW5nXTogVmFzRmllbGREdG9WYWx1ZSB9ID0ge307XG4gICAgZm9ybU1vZGVsLmdyb3Vwc1xuICAgICAgLmZvckVhY2goZ3JvdXAgPT4ge1xuICAgICAgICBncm91cC5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgICAgIChmaWVsZHMpW2NvbnRyb2wucmVwb3J0VGVtcGxhdGVOYW1lXSA9XG4gICAgICAgICAgICB0aGlzLmdldFZhbHVlQnlQYXRoKFtncm91cC5uYW1lLCBjb250cm9sLm5hbWVdKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICByZXR1cm4gZmllbGRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFdpbGwgcmV0dXJuIGFuIG9iamVjdCB3aG9zZSBrZXlzIGFyZSB0aGUgbmFtZXMgb2YgYWxsIGZpZWxkcyBpbiB0aGUgam9iLlxuICAgKiBUaGlzIG1ldGhvZCBpcyBzaW1pbGFyIHRvIGBnZXRGaWVsZHNgIGV4Y2VwdCB0aGF0IHRoaXMgbWV0aG9kIHdpbGwgb25seVxuICAgKiByZXR1cm4gdmFsdWVzIHdoZXJlIGEgdmFsdWUgd2FzIHNldCwgYXMgb3Bwb3NlZCB0byBgZ2V0RmllbGRzYCB3aGljaFxuICAgKiByZXR1cm4gYSBwcm9wZXJ0eSByZWdhcmRsZXNzIChiZWNhdXNlIGl0IHVzZXMgdGhlIGZvcm0gdG8gZHJpdmUgdGhlIGxvZ2ljKVxuICAgKiBAcmV0dXJuIHtSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPn1cbiAgICovXG4gIGdldEZpZWxkczIoKTogUmVjb3JkPHN0cmluZywgVmFzRmllbGREdG9WYWx1ZT4ge1xuICAgIGxldCBmaWVsZHM6IHsgW2tleTogc3RyaW5nXTogVmFzRmllbGREdG9WYWx1ZSB9ID0ge307XG4gICAgdGhpcy5keW5hbWljUHJvcGVydGllc1xuICAgICAgLmZvckVhY2goKGdyb3VwTmFtZSkgPT4ge1xuICAgICAgICBPYmplY3RcbiAgICAgICAgICAua2V5cyh0aGlzLiR0aGlzW2dyb3VwTmFtZV0pXG4gICAgICAgICAgLmZvckVhY2goY29udHJvbE5hbWUgPT4ge1xuICAgICAgICAgICAgZmllbGRzW2NvbnRyb2xOYW1lXSA9IHRoaXMuZ2V0VmFsdWVCeVBhdGgoW2dyb3VwTmFtZSwgY29udHJvbE5hbWVdKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0sIHt9KTtcbiAgICByZXR1cm4gZmllbGRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JqZWN0IGRlc2NyaWJpbmcgaG93IG1hbnkgYXR0YWNobWVudHMgd2VyZSBhZGRlZCB0byB0aGlzIGpvYlxuICAgKiAoY2FtZXJhIGNvbnRyb2xzIGFuZCBmaWxlcyksIGFuZCBob3cgbWFueSBoYXZlIG5vdCBiZWVuIHVwbG9hZGVkIHlldC5cbiAgICpcbiAgICogQHBhcmFtIGZvcm1Nb2RlbCBpbnN0YW5jZSBvZiB7QGxpbmsgVmFzRm9ybU1vZGVsfSB0aGF0IHdhcyB1c2VkIHdoZW4gdGhlXG4gICAqIGpvYiB3YXMgY3JlYXRlZFxuICAgKi9cbiAgZ2V0RmlsZXNVcGxvYWRTdGF0dXMoXG4gICAgZm9ybU1vZGVsOiBWYXNGb3JtTW9kZWxcbiAgKTogeyBwZW5kaW5nOiBudW1iZXI7IHRvdGFsOiBudW1iZXIgfSB7XG5cbiAgICBjb25zdCBwYXRoc1dpdGhWYWx1ZTogQXJyYXk8QXJyYXk8c3RyaW5nPj4gPSBmb3JtTW9kZWxcbiAgICAgIC5nZXRDYW1lcmFDb250cm9sUGF0aHMoKVxuICAgICAgLm1hcChwYXRoID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWU6IFZhc0ZpbGVEdG8gfCBWYXNDYW1lcmFDb250cm9sVmFsdWVNb2RlbCA9XG4gICAgICAgICAgdGhpcy5nZXRWYWx1ZUJ5UGF0aChwYXRoKSBhcyBhbnk7XG4gICAgICAgIGlmICh2YWx1ZSAmJiAhIXZhbHVlLmlkKSB7XG4gICAgICAgICAgcmV0dXJuIHBhdGg7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihwYXRoID0+IHBhdGggIT09IG51bGwgPyBwYXRoIDogbnVsbClcbiAgICAgIC5maWx0ZXIoaXNBcnJheVN0cmluZyk7XG5cbiAgICBsZXQgdG90YWwgPSBwYXRoc1dpdGhWYWx1ZS5sZW5ndGg7XG5cbiAgICB0b3RhbCArPSB0aGlzLmZpbGVzLmxlbmd0aDtcblxuICAgIC8vIGNhbGN1bGF0ZSB0aGUgbnVtYmVyIG9mIGNhbWVyYSBpbWFnZXMgc3RpbGwgdG8gdXBsb2FkXG4gICAgbGV0IHBlbmRpbmcgPSBwYXRoc1dpdGhWYWx1ZVxuICAgICAgLm1hcChwYXRoID0+IHRoaXMuZ2V0VmFsdWVCeVBhdGgocGF0aCkgYXMgYW55KVxuICAgICAgLm1hcCgodmFsdWU6IFZhc0ZpbGVEdG8gfCBWYXNDYW1lcmFDb250cm9sVmFsdWVNb2RlbCkgPT4ge1xuICAgICAgICBpZiAoaXNGaWxlRHRvKHZhbHVlKSkge1xuICAgICAgICAgIHJldHVybiB2YWx1ZS5pZCAmJiB2YWx1ZS5zdGF0dXMgIT09ICdDT01QTEVURSc7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNDYW1lcmFDb250cm9sVmFsdWVWMSh2YWx1ZSkpIHtcbiAgICAgICAgICAvLyBpZiB1cmwgaXMgbm90IHNldCwgaXQgaGFzbid0IGJlZW4gdXBsb2FkZWRcbiAgICAgICAgICByZXR1cm4gdmFsdWUuaWQgJiYgIXZhbHVlLnVybDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihoYXNVcGxvYWRlZCA9PiBoYXNVcGxvYWRlZClcbiAgICAgIC5sZW5ndGg7XG5cbiAgICAvLyBhZGQgdG90YWwgZnJvbSBmaWxlcyB0aGF0IGFyZSBwZW5kaW5nXG4gICAgcGVuZGluZyArPSB0aGlzLmZpbGVzXG4gICAgICAuZmlsdGVyKHZhbHVlID0+IHZhbHVlLnN0YXR1cyAhPT0gJ0NPTVBMRVRFRCcpXG4gICAgICAubGVuZ3RoO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBlbmRpbmcsXG4gICAgICB0b3RhbFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBtZXRob2Qgd2lsbCBoeWRyYXRlIHRoZSBgZmllbGRzYCBwcm9wZXJ0eSBvZiB0aGUgbW9kZWwuIFRoZSByZWFzb24gZm9yXG4gICAqIHRoaXMgaXMgdGhhdCB3ZSBoYXZlIGRpZmZlcmVudCB3YXlzIHRvIHN0b3JlIHRoZSBmaWVsZCBkYXRhLiBPbmUgd2F5LCBpc1xuICAgKiB3ZSBzdG9yZSB0aGVtIGFzIGR5bmFtaWMgcHJvcGVydGllcyBvZiB0aGUgam9iLiBGb3IgZXhhbXBsZSBqb2IuZm9vLmJhcixcbiAgICogd2hlcmUgYGZvb2AgaXMgdGhlIG5hbWUgb2YgYSBHcm91cCwgYW5kIGBiYXJgIGlzIHRoZSBuYW1lIG9mIGEgY29udHJvbC5cbiAgICogVGh1cywgd2hlbiB3ZSBjcmVhdGUgYSBqb2IgdXNpbmcgYSBmb3JtIGluIHRoZSBjbGllbnQsIHRoZSBqb2Igb2JqZWN0IHdpbGxcbiAgICogaGF2ZSBpdHMgc3RhdGljIHByb3BlcnRpZXMgKGlkLCBhY2NvdW50LCByZWZlcmVuY2UgZXRjKSwgYW5kIGFsc28gYSBudW1iZXJcbiAgICogb2YgZHluYW1pYyBwcm9wZXJ0aWVzIGRldGVybWluZWQgYnkgdGhlIEdyb3VwcyBhbmQgQ29udHJvbHMuIFRoaXMga2luZCBvZlxuICAgKiBvYmplY3QgaXMgbmljZSB0byB3b3JrIHdpdGggaW4gY2VydGFpbiBjaXJjdW1zdGFuY2VzLiBIb3dldmVyLCB0aGUgYXBpXG4gICAqIHdvcmtzIGRpZmZlcmVudGx5LiBJbiB0aGUgQVBJIGEgSm9iIGlzIGEgcmVjb3JkLCBhbmQgcmVmZXJlbmNlcyBhIG51bWJlciBvZlxuICAgKiBGaWVsZCByZWNvcmRzLiBFYWNoIEZpZWxkIHN0b3JlcyB0aGUgdmFsdWUuIENvbXBhcmluZyB0aGVzZSB0d28gbW9kZWxzIHdlXG4gICAqIGhhdmU6XG4gICAqIEEpIGpvYiB3aXRoIGR5bmFtaWMgcHJvcGVydGllcywgZS5nLlxuICAgKiB7XG4gICAqICAgaWQ6IDxndWlkPixcbiAgICogICByZWZlcmVuY2U6IFwic29tZXRoaW5nXCJcbiAgICogICA8b3RoZXIgc3RhdGljIGpvYiBwcm9wZXJ0aWVzPi4uLlxuICAgKiAgIGZvbzoge1xuICAgKiAgICAgYmFyOiBcInZhbHVlXCJcbiAgICogICB9XG4gICAqIH1cbiAgICpcbiAgICogQikgam9iIHdpdGggZmllbGRzXG4gICAqIHtcbiAgICogICBpZDogPGd1aWQ+LFxuICAgKiAgIHJlZmVyZW5jZTogXCJzb21ldGhpbmdcIlxuICAgKiAgIDxvdGhlciBzdGF0aWMgam9iIHByb3BlcnRpZXM+Li4uXG4gICAqICAgPHdpbGwgbm90IGhhdmUgZHluYW1pYyBwcm9wZXJ0aWVzPi4uLlxuICAgKiAgIGZpZWxkczogW1xuICAgKiAgICAge1xuICAgKiAgICAgICBpZDogPGd1aWQ+LFxuICAgKiAgICAgICA8b3RoZXIgZmllbGQgcHJvcGVydGllcz4sXG4gICAqICAgICAgIHZhbHVlOiBcInZhbHVlXCJcbiAgICogICAgIH1cbiAgICogICBdXG4gICAqIH1cbiAgICpcbiAgICogU28sIHdoYXQgdGhpcyBtZXRob2QgZG9lcyBpcyBnaXZlbiBhIEpvYk1vZGVsIGluIHRoZSBmb3JtIG9mIEEsIHJlYWQgYWxsXG4gICAqIG9mIHRob3NlIGR5bmFtaWMgcHJvcGVydGllcyBhbmQgc2V0IHRoZW0gaW50byBgZmllbGRzYC4gRG9pbmcgdGhpcyByZXF1aXJlc1xuICAgKiBrbm93bGVkZ2Ugb2YgdGhlIEZvcm0gdGhhdCB3YXMgdXNlZCB0byBjcmVhdGUgdGhlIGpvYi4gTW9yZW92ZXIsIHNpbmNlIHRoZVxuICAgKiBkeW5hbWljIHByb3BlcnRpZXMgZG8gbm90IGNvbnRhaW4gdGhlIGlkcyBvZiB0aGUgZmllbGRzLCB3ZSBhbHNvIGFsbG93IHRvXG4gICAqIHBhc3MgaW4gYSBgY29udHJvbEZpZWxkSWRNYXBgLiBUaGlzIG1hcCBzdG9yZXMgdGhlIG1hcHBpbmcgYmV0d2VlbiBDb250cm9sXG4gICAqIGFuZCB0aGUgRmllbGQgdGhhdCB3YXMgY3JlYXRlZCBpbiB0aGUgSm9iIHRvIHN0b3JlIHRoZSB2YWx1ZSBmb3IgdGhhdFxuICAgKiBDb250cm9sLiBUaGlzIGlzIHVzZWZ1bCwgaWYgZm9yIGV4YW1wbGUgeW91IHdhbnQgdG8gY29tcGFyZSBhIEpvYiBpbiBmb3JtIEFcbiAgICogd2l0aCBhIEpvYiBpbiBmb3JtIEIsIGZvciBleGFtcGxlIGlmIHlvdSB3YW50IHRvIHVwZGF0ZSB0aGUgSm9iIG9uIHRoZSBBUElcbiAgICogd2l0aCBhIEpvYiB0aGF0IHdhcyBzYXZlZCBieSBhIGNsaWVudCBpbiBmb3JtIEEuXG4gICAqXG4gICAqIEUuZy5cbiAgICogQ2xpZW50IC0+IEFQSTogY2xpZW50IHJlcXVlc3RzIGZvcm1cbiAgICogVXNlciAtPiBDbGllbnQ6IHVzZXIgZmlsbHMgaW4gdGhlIGZvcm0gYW5kIHN1Ym1pdHNcbiAgICogQ2xpZW50IC0+IEZpcmVzdG9yZTogY2xpZW50IHNhdmVzIHRoZSBKb2IgaW4gZm9ybSBBIGkuZS4gZHluYW1pYyBwcm9wc1xuICAgKiBGaXJlc3RvcmUgLT4gRnVuY3Rpb246IEEgZnVuY3Rpb24gaXMgdHJpZ2dlcmVkIHRvIHN5bmMgdGhlIGpvYiB0byB0aGUgQVBJXG4gICAqIEZ1bmN0aW9uIC0+IEFQSTogRnVuY3Rpb24gY2hlY2tzIGlmIGpvYiBhbHJlYWR5IGV4aXN0cywgaXQgcmVjZWl2ZXMgNDA0XG4gICAqIEZ1bmN0aW9uIC0+IEZ1bmN0aW9uOiBUaGUgZnVuY3Rpb24gY2FsbHMgYGh5ZHJhdGVGaWVsZHMoLi4uKWBcbiAgICogRnVuY3Rpb24gLT4gQVBJOiBUaGUgZnVuY3Rpb24gUE9TVCB0aGUgSm9iIHRvIC9qb2JzXG4gICAqIEZ1bmN0aW9uIC0+IEFQSTogVGhlIGZ1bmN0aW9uIFBPU1QgZWFjaCBmaWVsZCB0byAvZmllbGRzXG4gICAqXG4gICAqIFNpbWlsYXJseSwgaWYgdGhlIHVzZXIgdXBkYXRlcyB0aGUgam9iXG4gICAqIENsaWVudCAtPiBBUEk6IGNsaWVudCByZXF1ZXN0cyBmb3JtXG4gICAqIFVzZXIgLT4gQ2xpZW50OiB1c2VyIGZpbGxzIGluIHRoZSBmb3JtIGFuZCBzdWJtaXRzIGFuIHVwZGF0ZVxuICAgKiBDbGllbnQgLT4gRmlyZXN0b3JlOiBjbGllbnQgc2F2ZXMgdGhlIEpvYiBpbiBmb3JtIEEgaS5lLiBkeW5hbWljIHByb3BzXG4gICAqIEZpcmVzdG9yZSAtPiBGdW5jdGlvbjogQSBmdW5jdGlvbiBpcyB0cmlnZ2VyZWQgdG8gc3luYyB0aGUgam9iIHRvIHRoZSBBUElcbiAgICogRnVuY3Rpb24gLT4gQVBJOiBGdW5jdGlvbiBjaGVja3MgaWYgam9iIGFscmVhZHkgZXhpc3RzLCBpdCByZWNlaXZlcyAyMDBcbiAgICogRnVuY3Rpb24gLT4gRnVuY3Rpb246IFRoZSBmdW5jdGlvbiBjYWxscyBgaHlkcmF0ZUZpZWxkcyguLi4pYCBwYXNzaW5nIGluXG4gICAqICAgICAgICAgICAgICAgICAgICAgICB0aGUgbWFwIGlzIG1hZGUgYnkgaXRlcmF0aW5nIG92ZXIgdGhlIGZpZWxkcyBpdFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgcmVjZWl2ZWQgZnJvbSB0aGUgQVBJIGFuZCBzdG9yaW5nIHRoZSBtYXBwaW5nc1xuICAgKiAgICAgICAgICAgICAgICAgICAgICAgYmV0d2VlbiBjb250cm9sSWQgYW5kIGZpZWxkSWQgZm9yIGVhY2ggZmllbGRcbiAgICogRnVuY3Rpb24gLT4gQVBJOiBUaGUgZnVuY3Rpb24gUEFUQ0ggdGhlIEpvYiB0byAvam9ic1xuICAgKiBGdW5jdGlvbiAtPiBBUEk6IFRoZSBmdW5jdGlvbiBQT1NUL1BBVENIIGVhY2ggZmllbGQgdG8gL2ZpZWxkc1xuICAgKiB0cmVhdGVkIGFzIG5ld1xuICAgKlxuICAgKiBAcGFyYW0ge1Zhc0Zvcm1Nb2RlbH0gZm9ybU1vZGVsIHRoZSBWYXNGb3JtTW9kZWwgdGhhdCB3YXMgdXNlZCB0byBjcmVhdGVcbiAgICogdGhlIGpvYlxuICAgKiBAcGFyYW0ge01hcDxzdHJpbmcsIHN0cmluZz59IGNvbnRyb2xGaWVsZElkTWFwIGEgbWFwcGluZyBvZiBjb250cm9sIHRvXG4gICAqIGZpZWxkIGlkcy4gVGhpcyBpcyB1c2VkIHRvIGRldGVybWluZSB3aGV0aGVyIGEgbmV3IGlkIGZvciB0aGUgZmllbGQgc2hvdWxkXG4gICAqIGJlIGdlbmVyYXRlZCwgb3IgdG8gcmV1c2UgYW4gZXhpc3Rpbmcgb25lIGZyb20gdGhlIG1hcC5cbiAgICogQHBhcmFtIHtBcnJheTxzdHJpbmc+fSBjb250cm9sTmFtZXMgaWYgYSB2YWx1ZSBpcyBwcm92aWRlZCwgaXQgd2lsbCBiZSB1c2VkXG4gICAqIHRvIGZpbHRlciB0aGUgZmllbGRzIHRoYXQgYXJlIHJldHVybmVkLlxuICAgKiBAcmV0dXJuIHtBcnJheTxWYXNGaWVsZER0bz59XG4gICAqL1xuICBoeWRyYXRlRmllbGRzKFxuICAgIGZvcm1Nb2RlbDogVmFzRm9ybU1vZGVsLFxuICAgIGNvbnRyb2xGaWVsZElkTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+ID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKSxcbiAgICBjb250cm9sTmFtZXM/OiBBcnJheTxzdHJpbmc+XG4gICk6IHZvaWQge1xuICAgIGNvbnN0IGZpZWxkczogQXJyYXk8VmFzRmllbGREdG8+ID0gW107XG4gICAgZm9ybU1vZGVsLmdyb3Vwc1xuICAgICAgLmZvckVhY2goZ3JvdXAgPT4ge1xuICAgICAgICBncm91cC5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuXG4gICAgICAgICAgaWYgKCFjb250cm9sLm5hbWUuc3RhcnRzV2l0aCgnZmllbGRzLicpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGNvbnRyb2xOYW1lcyAmJiAhY29udHJvbE5hbWVzLmluY2x1ZGVzKGNvbnRyb2wubmFtZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmaWVsZHMucHVzaChWYXNGaWVsZE1vZGVsLmZyb21EdG8oe1xuICAgICAgICAgICAgLy8gaWYgdGhlIGNvbnRyb2xJZCBleGlzdHMgaW4gdGhlIG1hcCwgdXNlIHRoZSBhc3NvY2lhdGVkIGZpZWxkSWQsXG4gICAgICAgICAgICAvLyBvdGhlcndpc2UgZ2VuZXJhdGUgYSBuZXcgaWQgZm9yIHRoZSBmaWVsZC5cbiAgICAgICAgICAgIGlkOiBjb250cm9sRmllbGRJZE1hcC5nZXQoY29udHJvbC5pZCkgfHwgVVVJRC5VVUlEKCksXG4gICAgICAgICAgICBhY2NvdW50OiB0aGlzLmFjY291bnQsXG4gICAgICAgICAgICBqb2I6IHRoaXMuaWQsXG4gICAgICAgICAgICBjcmVhdGVkQnk6IHRoaXMuY3JlYXRlZEJ5LFxuICAgICAgICAgICAgY3JlYXRlZDogdGhpcy5jcmVhdGVkLFxuICAgICAgICAgICAgbW9kaWZpZWRCeTogdGhpcy5tb2RpZmllZEJ5LFxuICAgICAgICAgICAgbW9kaWZpZWQ6IHRoaXMubW9kaWZpZWQsXG4gICAgICAgICAgICBjb250cm9sOiBjb250cm9sLmlkLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMuZ2V0VmFsdWVCeVBhdGgoXG4gICAgICAgICAgICAgIFtncm91cC5uYW1lLCBjb250cm9sLm5hbWVdXG4gICAgICAgICAgICApXG4gICAgICAgICAgfSkpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIHRoaXMuZmllbGRzID0gZmllbGRzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IHBhdGggcGF0aCBzZWdtZW50c1xuICAgKiBAcmV0dXJuIHt2b2lkfVxuICAgKi9cbiAgZ2V0VmFsdWVCeVBhdGg8VCBleHRlbmRzIFZhc0ZpZWxkRHRvVmFsdWU+KFxuICAgIHBhdGg6IHN0cmluZ1tdID0gW11cbiAgKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGdldFZhbHVlQnlQYXRoKHBhdGgsIHRoaXMuJHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmVyeSBub24gc29waGlzdGljYXRlZCB3YXkgdG8gc2V0IHZhbHVlcyBpbiB0aGUgam9iIHZpYSBwYXRoc1xuICAgKlxuICAgKiBGb3IgZXhhbXBsZTpcbiAgICpcbiAgICogc2V0VmFsdWVCeVBhdGgoJ3ZhbHVlJywgWydmb28nLCAnYmFyJ10pO1xuICAgKlxuICAgKiB3aWxsIG1ha2UgcmVzdWx0cyBpbiBqb2JcbiAgICoge1xuICAgKiAgIGZvbzoge1xuICAgKiAgICAgYmFyOiAndmFsdWUnXG4gICAqICAgfVxuICAgKiB9XG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWx1ZSB0aGUgdmFsdWUgdG8gc2V0XG4gICAqIEBwYXJhbSB7c3RyaW5nW119IHBhdGggcGF0aCBzZWdtZW50c1xuICAgKi9cbiAgc2V0VmFsdWVCeVBhdGgodmFsdWU6IFZhc0ZpZWxkRHRvVmFsdWUsIHBhdGg6IHN0cmluZ1tdID0gW10pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKHBhdGgubGVuZ3RoKSB7XG4gICAgICBjYXNlIDA6IHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAxOiB7XG4gICAgICAgICh0aGlzIGFzIGFueSlbcGF0aFswXV0gPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAyOiB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGVuXG4gICAgICAgICh0aGlzLiR0aGlzW3BhdGhbMF1dIGFzIFJlY29yZDxzdHJpbmcsIFZhc0ZpZWxkRHRvVmFsdWU+KVtwYXRoWzFdXSA9IHZhbHVlO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjYXNlIDM6IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgICAgKCh0aGlzLiR0aGlzW3BhdGhbMF1dIGFzIFJlY29yZDxzdHJpbmcsIFZhc0ZpZWxkRHRvVmFsdWU+KVtwYXRoWzFdXSBhcyBSZWNvcmQ8c3RyaW5nLCBWYXNGaWVsZER0b1ZhbHVlPilbcGF0aFsyXV0gPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICB0aHJvdyBFcnJvcigncGF0aCBoYXMgdG9vIG1hbnkgc2VnbWVudHMnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtib29sZWFufSBzdGF0aWNPbmx5IGlmIHRydWUsIHdpbGwgb25seSBvdXRwdXQgdmFsdWVzIGZvciB0aGUgc3RhdGljXG4gICAqIHByb3BlcnRpZXMgaW4gdGhlIGR0b1xuICAgKiBAcmV0dXJuIHtWYXNKb2JEdG99XG4gICAqL1xuICBwdWJsaWMgdG9EdG8oc3RhdGljT25seSA9IGZhbHNlKTogVmFzSm9iRHRvIHtcblxuICAgIGlmIChzdGF0aWNPbmx5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgY3JlYXRlZDogdGhpcy5jcmVhdGVkLFxuICAgICAgICBjcmVhdGVkQnk6IHRoaXMuY3JlYXRlZEJ5LFxuICAgICAgICBtb2RpZmllZDogdGhpcy5tb2RpZmllZCxcbiAgICAgICAgbW9kaWZpZWRCeTogdGhpcy5tb2RpZmllZEJ5LFxuICAgICAgICBzZXJ2ZXJDcmVhdGVkOiB0aGlzLnNlcnZlckNyZWF0ZWQsXG4gICAgICAgIHNlcnZlck1vZGlmaWVkOiB0aGlzLnNlcnZlck1vZGlmaWVkLFxuICAgICAgICBjcmVhdGVkQnlOYW1lOiB0aGlzLmNyZWF0ZWRCeU5hbWUsXG4gICAgICAgIG1vZGlmaWVkQnlOYW1lOiB0aGlzLm1vZGlmaWVkQnlOYW1lLFxuICAgICAgICBhY2NvdW50OiB0aGlzLmFjY291bnQsXG4gICAgICAgIGFjY2Vzc0dyb3VwOiB0aGlzLmFjY2Vzc0dyb3VwLFxuICAgICAgICByZWZlcmVuY2U6IHRoaXMucmVmZXJlbmNlLFxuICAgICAgICBqb2JEYXRlOiB0aGlzLmpvYkRhdGUsXG4gICAgICAgIGpvYlN0YXR1czogdGhpcy5qb2JTdGF0dXMsXG4gICAgICAgIGpvYlR5cGU6IHRoaXMuam9iVHlwZSxcbiAgICAgICAgYXNzaWduZWVJZDogdGhpcy5hc3NpZ25lZUlkLFxuICAgICAgICBmb3JtSWQ6IHRoaXMuZm9ybUlkLFxuICAgICAgICB0aW1lWm9uZU9mZnNldDogdGhpcy50aW1lWm9uZU9mZnNldCxcbiAgICAgICAgcGVuZGluZ0ZpZWxkczogdGhpcy5wZW5kaW5nRmllbGRzLFxuICAgICAgICBjaGlsZE1vZGlmaWVkOiB0aGlzLmNoaWxkTW9kaWZpZWQsXG4gICAgICAgIHZlcnNpb246IHRoaXMudmVyc2lvbixcbiAgICAgICAgZmllbGRzOiB0aGlzLmZpZWxkcyxcbiAgICAgICAgZmlsZXM6IHRoaXMuZmlsZXMsXG4gICAgICAgIGNyZWF0ZWRCeURpc3BsYXlOYW1lOiB0aGlzLmNyZWF0ZWRCeURpc3BsYXlOYW1lLFxuICAgICAgICBtb2RpZmllZEJ5RGlzcGxheU5hbWU6IHRoaXMubW9kaWZpZWRCeURpc3BsYXlOYW1lLFxuICAgICAgICBnZW9Mb2NhdGlvbjogdGhpcy5nZW9Mb2NhdGlvblxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBkdG8gPSB7fSBhcyBWYXNKb2JNb2RlbER5bmFtaWNJbnRlcmZhY2U7XG4gICAgWy4uLnRoaXMuc3RhdGljUHJvcGVydGllcywgLi4udGhpcy5keW5hbWljUHJvcGVydGllc11cbiAgICAgIC5mb3JFYWNoKHByb3AgPT5cbiAgICAgICAgKGR0bylbcHJvcF0gPSB0aGlzLiR0aGlzW3Byb3BdKTtcblxuICAgIHJldHVybiBkdG8gYXMgYW55O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHdpbGwgcGFyc2UgYSBzeW50YXggdGhhdCBhbGxvd3MgdXMgdG8gYnVpbGQgc3RyaW5ncyBmcm9tIHRoZVxuICAgKiB2YWx1ZXMgb2YgZnJvbSB0aGUgam9iIG1vZGVsLiBGb3IgZXhhbXBsZSBpZiB0aGUgam9iIG1vZGVsIHdhczpcbiAgICpcbiAgICoge1xuICAgKiAgIGZvbzogJ2JhcidcbiAgICogfVxuICAgKlxuICAgKiBhbmQgd2UgcGFzcyBcImkgYW0gZm9vIHtmb299XCIsIHRoZSByZXN1bHQgd291bGQgYmU6XG4gICAqXG4gICAqIFwiaSBhbSBmb28gYmFyXCJcbiAgICpcbiAgICogd2UgY2FuIGFsc28gdXNlIG1vbWVudCB0byBwYXJzZSBkYXRlcywgZm9yIGV4YW1wbGUgaWYgdGhlIGpvYiBtb2RlbCB3YXM6XG4gICAqXG4gICAqIHtcbiAgICogICBjcmVhdGVkOiBcIjIwMjItMDEtMDFUMDA6MDA6MDArMDAwMFwiXG4gICAqIH1cbiAgICpcbiAgICogYW5kIHdlIHBhc3MgXCJ7Y3JlYXRlZHxkYXRlOllZLU1NLUREfVwiLCB0aGUgcmVzdWx0IHdvdWxkIGJlOlxuICAgKlxuICAgKiBcIjIwMjItMDEtMDFcIlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgYSBzdHJpbmcgd2l0aCB0aGUgc3ludGF4XG4gICAqIEBwYXJhbSB7UGFyc2VTeW50YXhPcHRpb25zfSBvcHRpb25zXG4gICAqIEByZXR1cm4ge3N0cmluZ30gdGhlIHJlc3VsdHMgb2YgcGFyc2luZyB0aGUgc3ludGF4IG9uIHRoaXMgam9iXG4gICAqL1xuICBwYXJzZVN5bnRheChcbiAgICB2YWx1ZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFBhcnNlU3ludGF4T3B0aW9ucyA9IHtcbiAgICAgIHRpbWVab25lT2Zmc2V0OiAwXG4gICAgfVxuICApOiBzdHJpbmcge1xuXG4gICAgaWYgKCF2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKC8oe1tefV0qfSkvZywgKG1hdGNoOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHN5bnRheCA9IHRva2VuLnN1YnN0cmluZygxLCB0b2tlbi5sZW5ndGggLSAxKTtcblxuICAgICAgbGV0IFtrZXksIGZpbHRlcl0gPSBzeW50YXguc3BsaXQoJ3wnKTtcbiAgICAgIGtleSA9IChrZXkgfHwgJycpLnRyaW0oKTtcbiAgICAgIGZpbHRlciA9IChmaWx0ZXIgfHwgJycpLnRyaW0oKTtcblxuICAgICAgbGV0IGZpbHRlck5hbWUsIGZpbHRlckFyZzogc3RyaW5nID0gJyc7XG4gICAgICBpZiAoZmlsdGVyKSB7XG4gICAgICAgIGNvbnN0IHNwbGl0SW5kZXggPSBmaWx0ZXIuaW5kZXhPZignOicpO1xuICAgICAgICBpZiAoc3BsaXRJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBmaWx0ZXJOYW1lID0gZmlsdGVyLnN1YnN0cmluZygwLCBzcGxpdEluZGV4KTtcbiAgICAgICAgICBmaWx0ZXJBcmcgPSBmaWx0ZXIuc3Vic3RyaW5nKHNwbGl0SW5kZXggKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmaWx0ZXJOYW1lID0gZmlsdGVyO1xuICAgICAgICAgIGZpbHRlckFyZyA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGZpbHRlck5hbWUgPSAoZmlsdGVyTmFtZSB8fCAnJykudHJpbSgpO1xuICAgICAgICBmaWx0ZXJBcmcgPSAoZmlsdGVyQXJnIHx8ICcnKS50cmltKCk7XG4gICAgICB9XG4gICAgICBjb25zdCBwYXRoID0ga2V5LnNwbGl0KCcuJyk7XG4gICAgICBjb25zdCBvYmplY3RLZXkgPSBwYXRoLnNoaWZ0KCkgfHwgJyc7XG4gICAgICBsZXQgcmVzdWx0ID0gJyc7XG4gICAgICBpZiAob2JqZWN0S2V5ID09PSAnam9iJykge1xuICAgICAgICByZXN1bHQgPSAodGhpcy5nZXRWYWx1ZUJ5UGF0aChwYXRoKSB8fCAnJykudG9TdHJpbmcoKTtcbiAgICAgIH0gZWxzZSBpZiAob2JqZWN0S2V5ID09PSAnZmllbGRzJykge1xuICAgICAgICByZXN1bHQgPSAoZ2V0VmFsdWVCeVBhdGgocGF0aCwgdGhpcy5nZXRGaWVsZHMyKCkpIHx8ICcnKS50b1N0cmluZygpO1xuICAgICAgfSBlbHNlIGlmIChvYmplY3RLZXkubGVuZ3RoKSB7XG4gICAgICAgIGlmIChvcHRpb25zLm9iamVjdHMpIHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5vYmplY3RzW29iamVjdEtleV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc29sZS5kZWJ1ZyhcbiAgICAgICAgICAgICAgYG9iamVjdEtleSAke29iamVjdEtleX0gaXMgbm90IHByZXNlbnQgaW4gb3B0aW9ucy5vYmplY3RgXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcmVzdWx0ID0gJyc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IChnZXRWYWx1ZUJ5UGF0aChwYXRoLCBvcHRpb25zLm9iamVjdHNbb2JqZWN0S2V5XSkgfHwgJycpXG4gICAgICAgICAgICAgIC50b1N0cmluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgICAgICAgYG9iamVjdEtleSAke29iamVjdEtleX0gd2FzIHVzZWQgYnV0IG9wdGlvbnMub2JqZWN0IGlzIG5vdCBzZXRgXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH1cblxuXG4gICAgICBpZiAoZmlsdGVyTmFtZSAmJiByZXN1bHQpIHtcbiAgICAgICAgc3dpdGNoIChmaWx0ZXJOYW1lKSB7XG4gICAgICAgICAgY2FzZSAnZGF0ZSc6IHtcbiAgICAgICAgICAgIHJldHVybiBtb21lbnQocmVzdWx0KVxuICAgICAgICAgICAgICAudXRjT2Zmc2V0KG9wdGlvbnMudGltZVpvbmVPZmZzZXQpXG4gICAgICAgICAgICAgIC5mb3JtYXQoZmlsdGVyQXJnIHx8ICcnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCd1bmtub3duIGZpbHRlciAlcycsIGZpbHRlck5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0pLnRyaW0oKTtcbiAgfTtcblxuICAvKipcbiAgICogQHJldHVybiB7b2JqZWN0fVxuICAgKi9cbiAgb3ZlcnJpZGUgdG9BcGlEdG8oKTogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zdXBlci50b0FwaUR0bygpLFxuICAgICAgcmVmZXJlbmNlOiB0aGlzLnJlZmVyZW5jZSB8fCAnficsXG4gICAgICBqb2JEYXRlOiB0aGlzLmpvYkRhdGUgfHwgJ34nLFxuICAgICAgam9iVHlwZTogdGhpcy5qb2JUeXBlIHx8ICd+JyxcbiAgICAgIGFjY2Vzc0dyb3VwOiB0aGlzLmFjY2Vzc0dyb3VwIHx8ICd+JyxcbiAgICAgIGpvYlN0YXR1czogdGhpcy5qb2JTdGF0dXMgfHwgJ34nLFxuICAgICAgYXNzaWduZWVJZDogdGhpcy5hc3NpZ25lZUlkIHx8ICd+JyxcbiAgICAgIHRpbWVab25lT2Zmc2V0OiB0aGlzLnRpbWVab25lT2Zmc2V0IHx8IDAsXG4gICAgICBwZW5kaW5nRmllbGRzOiB0aGlzLnBlbmRpbmdGaWVsZHMgfHwgMCxcbiAgICAgIGxhc3RGb3JtOiB0aGlzLmZvcm1JZCB8fCAnfidcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -4,8 +4,8 @@ import { VasAccountObjectModel } from './vas-account-object.model';
|
|
|
4
4
|
* VasMembershipModel
|
|
5
5
|
*/
|
|
6
6
|
export class VasMembershipModel extends VasAccountObjectModel {
|
|
7
|
-
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account, user, admin, lookupTypes, contactTypes, accessGroups, jobStatuses, jobTypes, taskTypes) {
|
|
8
|
-
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, account);
|
|
7
|
+
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, user, admin, lookupTypes, contactTypes, accessGroups, jobStatuses, jobTypes, taskTypes) {
|
|
8
|
+
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
|
|
9
9
|
this.id = id;
|
|
10
10
|
this.created = created;
|
|
11
11
|
this.serverCreated = serverCreated;
|
|
@@ -13,6 +13,8 @@ export class VasMembershipModel extends VasAccountObjectModel {
|
|
|
13
13
|
this.modified = modified;
|
|
14
14
|
this.serverModified = serverModified;
|
|
15
15
|
this.modifiedBy = modifiedBy;
|
|
16
|
+
this.createdByName = createdByName;
|
|
17
|
+
this.modifiedByName = modifiedByName;
|
|
16
18
|
this.account = account;
|
|
17
19
|
this.user = user;
|
|
18
20
|
this.admin = admin;
|
|
@@ -32,7 +34,7 @@ export class VasMembershipModel extends VasAccountObjectModel {
|
|
|
32
34
|
static fromDto(dto) {
|
|
33
35
|
return new VasMembershipModel(
|
|
34
36
|
// eslint-disable-next-line new-cap
|
|
35
|
-
dto.id || UUID.UUID(), dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.account || '', dto.user || '', dto.admin || false, dto.lookupTypes || [], dto.contactTypes || [], dto.accessGroups || [], dto.jobStatuses || [], dto.jobTypes || [], dto.taskTypes || []);
|
|
37
|
+
dto.id || UUID.UUID(), dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.user || '', dto.admin || false, dto.lookupTypes || [], dto.contactTypes || [], dto.accessGroups || [], dto.jobStatuses || [], dto.jobTypes || [], dto.taskTypes || []);
|
|
36
38
|
}
|
|
37
39
|
toDto() {
|
|
38
40
|
return {
|
|
@@ -43,6 +45,8 @@ export class VasMembershipModel extends VasAccountObjectModel {
|
|
|
43
45
|
modified: this.modified,
|
|
44
46
|
serverModified: this.serverModified,
|
|
45
47
|
modifiedBy: this.modifiedBy,
|
|
48
|
+
createdByName: this.createdByName,
|
|
49
|
+
modifiedByName: this.modifiedByName,
|
|
46
50
|
account: this.account,
|
|
47
51
|
user: this.user,
|
|
48
52
|
admin: this.admin,
|
|
@@ -55,4 +59,4 @@ export class VasMembershipModel extends VasAccountObjectModel {
|
|
|
55
59
|
};
|
|
56
60
|
}
|
|
57
61
|
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLW1lbWJlcnNoaXAubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YXMtbGliL3NyYy9saWIvZW50aXR5L3Zhcy1tZW1iZXJzaGlwLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckMsT0FBTyxFQUFFLHFCQUFxQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFbEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEscUJBQXFCO0lBQzNELFlBQ2tCLEVBQVUsRUFDVixPQUFlLEVBQ2YsYUFBcUIsRUFDckIsU0FBaUIsRUFDakIsUUFBZ0IsRUFDaEIsY0FBc0IsRUFDdEIsVUFBa0IsRUFDbEIsYUFBcUIsRUFDckIsY0FBc0IsRUFDdEIsT0FBZSxFQUN4QixJQUFZLEVBQ1osS0FBYyxFQUNkLFdBQTBCLEVBQzFCLFlBQTJCLEVBQzNCLFlBQTJCLEVBQzNCLFdBQTBCLEVBQzFCLFFBQXVCLEVBQ3ZCLFNBQXdCO1FBRS9CLEtBQUssQ0FDSCxFQUFFLEVBQ0YsT0FBTyxFQUNQLGFBQWEsRUFDYixTQUFTLEVBQ1QsUUFBUSxFQUNSLGNBQWMsRUFDZCxVQUFVLEVBQ1YsYUFBYSxFQUNiLGNBQWMsRUFDZCxPQUFPLENBQ1IsQ0FBQztRQTlCYyxPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ1YsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFVBQUssR0FBTCxLQUFLLENBQVM7UUFDZCxnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFlO1FBQ3ZCLGNBQVMsR0FBVCxTQUFTLENBQWU7SUFjakMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLO1FBQ2pCLE9BQU8sa0JBQWtCLENBQUMsT0FBTyxDQUFDO1lBQ2hDLG1DQUFtQztZQUNuQyxFQUFFLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRTtTQUNoQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FDbkIsR0FBOEI7UUFFOUIsT0FBTyxJQUFJLGtCQUFrQjtRQUMzQixtQ0FBbUM7UUFDbkMsR0FBRyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQ3JCLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxFQUNqQixHQUFHLENBQUMsYUFBYSxJQUFJLEVBQUUsRUFDdkIsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLEVBQ25CLEdBQUcsQ0FBQyxRQUFRLElBQUksRUFBRSxFQUNsQixHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUUsRUFDeEIsR0FBRyxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQ3BCLEdBQUcsQ0FBQyxhQUFhLElBQUksRUFBRSxFQUN2QixHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUUsRUFDeEIsR0FBRyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQ2pCLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUNkLEdBQUcsQ0FBQyxLQUFLLElBQUksS0FBSyxFQUNsQixHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFDckIsR0FBRyxDQUFDLFlBQVksSUFBSSxFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxZQUFZLElBQUksRUFBRSxFQUN0QixHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFDckIsR0FBRyxDQUFDLFFBQVEsSUFBSSxFQUFFLEVBQ2xCLEdBQUcsQ0FBQyxTQUFTLElBQUksRUFBRSxDQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUs7UUFDSCxPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1NBQzFCLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXNNZW1iZXJzaGlwRHRvIH0gZnJvbSAnLi92YXMtbWVtYmVyc2hpcC5kdG8nO1xuaW1wb3J0IHsgVVVJRCB9IGZyb20gJ2FuZ3VsYXIyLXV1aWQnO1xuaW1wb3J0IHsgVmFzQWNjb3VudE9iamVjdE1vZGVsfSBmcm9tICcuL3Zhcy1hY2NvdW50LW9iamVjdC5tb2RlbCc7XG5cbi8qKlxuICogVmFzTWVtYmVyc2hpcE1vZGVsXG4gKi9cbmV4cG9ydCBjbGFzcyBWYXNNZW1iZXJzaGlwTW9kZWwgZXh0ZW5kcyBWYXNBY2NvdW50T2JqZWN0TW9kZWwge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgb3ZlcnJpZGUgaWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBzZXJ2ZXJDcmVhdGVkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWRCeTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBzZXJ2ZXJNb2RpZmllZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBtb2RpZmllZEJ5OiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWRCeU5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWRCeU5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgYWNjb3VudDogc3RyaW5nLFxuICAgIHB1YmxpYyB1c2VyOiBzdHJpbmcsXG4gICAgcHVibGljIGFkbWluOiBib29sZWFuLFxuICAgIHB1YmxpYyBsb29rdXBUeXBlczogQXJyYXk8c3RyaW5nPixcbiAgICBwdWJsaWMgY29udGFjdFR5cGVzOiBBcnJheTxzdHJpbmc+LFxuICAgIHB1YmxpYyBhY2Nlc3NHcm91cHM6IEFycmF5PHN0cmluZz4sXG4gICAgcHVibGljIGpvYlN0YXR1c2VzOiBBcnJheTxzdHJpbmc+LFxuICAgIHB1YmxpYyBqb2JUeXBlczogQXJyYXk8c3RyaW5nPixcbiAgICBwdWJsaWMgdGFza1R5cGVzOiBBcnJheTxzdHJpbmc+LFxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGlkLFxuICAgICAgY3JlYXRlZCxcbiAgICAgIHNlcnZlckNyZWF0ZWQsXG4gICAgICBjcmVhdGVkQnksXG4gICAgICBtb2RpZmllZCxcbiAgICAgIHNlcnZlck1vZGlmaWVkLFxuICAgICAgbW9kaWZpZWRCeSxcbiAgICAgIGNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnRcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBlbXB0eSgpOiBWYXNNZW1iZXJzaGlwTW9kZWwge1xuICAgIHJldHVybiBWYXNNZW1iZXJzaGlwTW9kZWwuZnJvbUR0byh7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbmV3LWNhcFxuICAgICAgaWQ6IFVVSUQuVVVJRCgpXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21EdG8oXG4gICAgZHRvOiBQYXJ0aWFsPFZhc01lbWJlcnNoaXBEdG8+XG4gICk6IFZhc01lbWJlcnNoaXBNb2RlbCB7XG4gICAgcmV0dXJuIG5ldyBWYXNNZW1iZXJzaGlwTW9kZWwoXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbmV3LWNhcFxuICAgICAgZHRvLmlkIHx8IFVVSUQuVVVJRCgpLFxuICAgICAgZHRvLmNyZWF0ZWQgfHwgJycsXG4gICAgICBkdG8uc2VydmVyQ3JlYXRlZCB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkQnkgfHwgJycsXG4gICAgICBkdG8ubW9kaWZpZWQgfHwgJycsXG4gICAgICBkdG8uc2VydmVyTW9kaWZpZWQgfHwgJycsXG4gICAgICBkdG8ubW9kaWZpZWRCeSB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkQnlOYW1lIHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkQnlOYW1lIHx8ICcnLFxuICAgICAgZHRvLmFjY291bnQgfHwgJycsXG4gICAgICBkdG8udXNlciB8fCAnJyxcbiAgICAgIGR0by5hZG1pbiB8fCBmYWxzZSxcbiAgICAgIGR0by5sb29rdXBUeXBlcyB8fCBbXSxcbiAgICAgIGR0by5jb250YWN0VHlwZXMgfHwgW10sXG4gICAgICBkdG8uYWNjZXNzR3JvdXBzIHx8IFtdLFxuICAgICAgZHRvLmpvYlN0YXR1c2VzIHx8IFtdLFxuICAgICAgZHRvLmpvYlR5cGVzIHx8IFtdLFxuICAgICAgZHRvLnRhc2tUeXBlcyB8fCBbXVxuICAgICk7XG4gIH1cblxuICB0b0R0bygpOiBWYXNNZW1iZXJzaGlwRHRvIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBjcmVhdGVkOiB0aGlzLmNyZWF0ZWQsXG4gICAgICBzZXJ2ZXJDcmVhdGVkOiB0aGlzLnNlcnZlckNyZWF0ZWQsXG4gICAgICBjcmVhdGVkQnk6IHRoaXMuY3JlYXRlZEJ5LFxuICAgICAgbW9kaWZpZWQ6IHRoaXMubW9kaWZpZWQsXG4gICAgICBzZXJ2ZXJNb2RpZmllZDogdGhpcy5zZXJ2ZXJNb2RpZmllZCxcbiAgICAgIG1vZGlmaWVkQnk6IHRoaXMubW9kaWZpZWRCeSxcbiAgICAgIGNyZWF0ZWRCeU5hbWU6IHRoaXMuY3JlYXRlZEJ5TmFtZSxcbiAgICAgIG1vZGlmaWVkQnlOYW1lOiB0aGlzLm1vZGlmaWVkQnlOYW1lLFxuICAgICAgYWNjb3VudDogdGhpcy5hY2NvdW50LFxuICAgICAgdXNlcjogdGhpcy51c2VyLFxuICAgICAgYWRtaW46IHRoaXMuYWRtaW4sXG4gICAgICBsb29rdXBUeXBlczogdGhpcy5sb29rdXBUeXBlcyxcbiAgICAgIGNvbnRhY3RUeXBlczogdGhpcy5jb250YWN0VHlwZXMsXG4gICAgICBhY2Nlc3NHcm91cHM6IHRoaXMuYWNjZXNzR3JvdXBzLFxuICAgICAgam9iU3RhdHVzZXM6IHRoaXMuam9iU3RhdHVzZXMsXG4gICAgICBqb2JUeXBlczogdGhpcy5qb2JUeXBlcyxcbiAgICAgIHRhc2tUeXBlczogdGhpcy50YXNrVHlwZXNcbiAgICB9O1xuICB9XG59XG5cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLW5vdGUuZHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFzLWxpYi9zcmMvbGliL2VudGl0eS92YXMtbm90ZS5kdG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhc0FjY291bnRPYmplY3REdG8gfSBmcm9tICcuL3Zhcy1hY2NvdW50LW9iamVjdC5kdG8nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZhc05vdGVEdG8gZXh0ZW5kcyBWYXNBY2NvdW50T2JqZWN0RHRvIHtcbiAgam9iOiBzdHJpbmc7XG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgc2Vuc2l0aXZlOiBib29sZWFuO1xufVxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { VasJobDataModel } from './vas-job-data.model';
|
|
2
|
+
/**
|
|
3
|
+
* VasNoteModel
|
|
4
|
+
*/
|
|
5
|
+
export class VasNoteModel extends VasJobDataModel {
|
|
6
|
+
constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, content, sensitive) {
|
|
7
|
+
super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
|
|
8
|
+
this.id = id;
|
|
9
|
+
this.created = created;
|
|
10
|
+
this.serverCreated = serverCreated;
|
|
11
|
+
this.createdBy = createdBy;
|
|
12
|
+
this.modified = modified;
|
|
13
|
+
this.serverModified = serverModified;
|
|
14
|
+
this.modifiedBy = modifiedBy;
|
|
15
|
+
this.createdByName = createdByName;
|
|
16
|
+
this.modifiedByName = modifiedByName;
|
|
17
|
+
this.account = account;
|
|
18
|
+
this.job = job;
|
|
19
|
+
this.content = content;
|
|
20
|
+
this.sensitive = sensitive;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @param dto VasNoteDto
|
|
24
|
+
* @return VasNoteModel
|
|
25
|
+
*/
|
|
26
|
+
static fromDto(dto) {
|
|
27
|
+
return new VasNoteModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.job || '', dto.content || '', dto.sensitive || false);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @returns VasNoteDto
|
|
31
|
+
*/
|
|
32
|
+
toDto() {
|
|
33
|
+
return {
|
|
34
|
+
id: this.id,
|
|
35
|
+
created: this.created,
|
|
36
|
+
serverCreated: this.serverCreated,
|
|
37
|
+
createdBy: this.createdBy,
|
|
38
|
+
modified: this.modified,
|
|
39
|
+
serverModified: this.serverModified,
|
|
40
|
+
modifiedBy: this.modifiedBy,
|
|
41
|
+
createdByName: this.createdByName,
|
|
42
|
+
modifiedByName: this.modifiedByName,
|
|
43
|
+
account: this.account,
|
|
44
|
+
job: this.job,
|
|
45
|
+
content: this.content,
|
|
46
|
+
sensitive: this.sensitive,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFzLW5vdGUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YXMtbGliL3NyYy9saWIvZW50aXR5L3Zhcy1ub3RlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUd2RDs7R0FFRztBQUNILE1BQU0sT0FBTyxZQUFhLFNBQVEsZUFBZTtJQUUvQyxZQUNrQixFQUFVLEVBQ1YsT0FBZSxFQUNmLGFBQXFCLEVBQ3JCLFNBQWlCLEVBQ2pCLFFBQWdCLEVBQ2hCLGNBQXNCLEVBQ3RCLFVBQWtCLEVBQ2xCLGFBQXFCLEVBQ3JCLGNBQXNCLEVBQ3RCLE9BQWUsRUFDZixHQUFXLEVBQ3BCLE9BQWUsRUFDZixTQUFrQjtRQUV6QixLQUFLLENBQ0gsRUFBRSxFQUNGLE9BQU8sRUFDUCxhQUFhLEVBQ2IsU0FBUyxFQUNULFFBQVEsRUFDUixjQUFjLEVBQ2QsVUFBVSxFQUNWLGFBQWEsRUFDYixjQUFjLEVBQ2QsT0FBTyxFQUNQLEdBQUcsQ0FDSixDQUFDO1FBMUJjLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2Ysa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFDdEIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDcEIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGNBQVMsR0FBVCxTQUFTLENBQVM7SUFlM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBd0I7UUFDckMsT0FBTyxJQUFJLFlBQVksQ0FDckIsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQ1osR0FBRyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQ2pCLEdBQUcsQ0FBQyxhQUFhLElBQUksRUFBRSxFQUN2QixHQUFHLENBQUMsU0FBUyxJQUFJLEVBQUUsRUFDbkIsR0FBRyxDQUFDLFFBQVEsSUFBSSxFQUFFLEVBQ2xCLEdBQUcsQ0FBQyxjQUFjLElBQUksRUFBRSxFQUN4QixHQUFHLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFDcEIsR0FBRyxDQUFDLGFBQWEsSUFBSSxFQUFFLEVBQ3ZCLEdBQUcsQ0FBQyxjQUFjLElBQUksRUFBRSxFQUN4QixHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFDakIsR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQ2IsR0FBRyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQ2pCLEdBQUcsQ0FBQyxTQUFTLElBQUksS0FBSyxDQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSztRQUNILE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ25DLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ25DLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1NBQzFCLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXNKb2JEYXRhTW9kZWwgfSBmcm9tICcuL3Zhcy1qb2ItZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBWYXNOb3RlRHRvIH0gZnJvbSAnLi92YXMtbm90ZS5kdG8nO1xuXG4vKipcbiAqIFZhc05vdGVNb2RlbFxuICovXG5leHBvcnQgY2xhc3MgVmFzTm90ZU1vZGVsIGV4dGVuZHMgVmFzSm9iRGF0YU1vZGVsIGltcGxlbWVudHMgVmFzTm90ZUR0byB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJyaWRlIGlkOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGNyZWF0ZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyQ3JlYXRlZDogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkQnk6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgc2VydmVyTW9kaWZpZWQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbW9kaWZpZWRCeTogc3RyaW5nLFxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVkQnlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIG1vZGlmaWVkQnlOYW1lOiBzdHJpbmcsXG4gICAgcHVibGljIG92ZXJyaWRlIGFjY291bnQ6IHN0cmluZyxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgam9iOiBzdHJpbmcsXG4gICAgcHVibGljIGNvbnRlbnQ6IHN0cmluZyxcbiAgICBwdWJsaWMgc2Vuc2l0aXZlOiBib29sZWFuLFxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGlkLFxuICAgICAgY3JlYXRlZCxcbiAgICAgIHNlcnZlckNyZWF0ZWQsXG4gICAgICBjcmVhdGVkQnksXG4gICAgICBtb2RpZmllZCxcbiAgICAgIHNlcnZlck1vZGlmaWVkLFxuICAgICAgbW9kaWZpZWRCeSxcbiAgICAgIGNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnQsXG4gICAgICBqb2JcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBkdG8gVmFzTm90ZUR0b1xuICAgKiBAcmV0dXJuIFZhc05vdGVNb2RlbFxuICAgKi9cbiAgc3RhdGljIGZyb21EdG8oZHRvOiBQYXJ0aWFsPFZhc05vdGVEdG8+KTogVmFzTm90ZU1vZGVsIHtcbiAgICByZXR1cm4gbmV3IFZhc05vdGVNb2RlbChcbiAgICAgIGR0by5pZCB8fCAnJyxcbiAgICAgIGR0by5jcmVhdGVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlckNyZWF0ZWQgfHwgJycsXG4gICAgICBkdG8uY3JlYXRlZEJ5IHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLnNlcnZlck1vZGlmaWVkIHx8ICcnLFxuICAgICAgZHRvLm1vZGlmaWVkQnkgfHwgJycsXG4gICAgICBkdG8uY3JlYXRlZEJ5TmFtZSB8fCAnJyxcbiAgICAgIGR0by5tb2RpZmllZEJ5TmFtZSB8fCAnJyxcbiAgICAgIGR0by5hY2NvdW50IHx8ICcnLFxuICAgICAgZHRvLmpvYiB8fCAnJyxcbiAgICAgIGR0by5jb250ZW50IHx8ICcnLFxuICAgICAgZHRvLnNlbnNpdGl2ZSB8fCBmYWxzZVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMgVmFzTm90ZUR0b1xuICAgKi9cbiAgdG9EdG8oKTogVmFzTm90ZUR0byB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgY3JlYXRlZDogdGhpcy5jcmVhdGVkLFxuICAgICAgc2VydmVyQ3JlYXRlZDogdGhpcy5zZXJ2ZXJDcmVhdGVkLFxuICAgICAgY3JlYXRlZEJ5OiB0aGlzLmNyZWF0ZWRCeSxcbiAgICAgIG1vZGlmaWVkOiB0aGlzLm1vZGlmaWVkLFxuICAgICAgc2VydmVyTW9kaWZpZWQ6IHRoaXMuc2VydmVyTW9kaWZpZWQsXG4gICAgICBtb2RpZmllZEJ5OiB0aGlzLm1vZGlmaWVkQnksXG4gICAgICBjcmVhdGVkQnlOYW1lOiB0aGlzLmNyZWF0ZWRCeU5hbWUsXG4gICAgICBtb2RpZmllZEJ5TmFtZTogdGhpcy5tb2RpZmllZEJ5TmFtZSxcbiAgICAgIGFjY291bnQ6IHRoaXMuYWNjb3VudCxcbiAgICAgIGpvYjogdGhpcy5qb2IsXG4gICAgICBjb250ZW50OiB0aGlzLmNvbnRlbnQsXG4gICAgICBzZW5zaXRpdmU6IHRoaXMuc2Vuc2l0aXZlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|