@vendasta/conversation 0.80.0 → 0.81.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/esm2022/lib/_internal/conversation.api.service.mjs +6 -2
  2. package/esm2022/lib/_internal/enums/event.enum.mjs +15 -0
  3. package/esm2022/lib/_internal/enums/index.mjs +2 -1
  4. package/esm2022/lib/_internal/interfaces/api.interface.mjs +1 -1
  5. package/esm2022/lib/_internal/interfaces/common.interface.mjs +1 -1
  6. package/esm2022/lib/_internal/interfaces/configuration.interface.mjs +1 -1
  7. package/esm2022/lib/_internal/interfaces/conversation.interface.mjs +1 -1
  8. package/esm2022/lib/_internal/interfaces/event.interface.mjs +1 -7
  9. package/esm2022/lib/_internal/interfaces/index.mjs +1 -1
  10. package/esm2022/lib/_internal/interfaces/message.interface.mjs +1 -7
  11. package/esm2022/lib/_internal/interfaces/widget.interface.mjs +1 -1
  12. package/esm2022/lib/_internal/objects/api.mjs +108 -1
  13. package/esm2022/lib/_internal/objects/common.mjs +26 -1
  14. package/esm2022/lib/_internal/objects/configuration.mjs +1 -1
  15. package/esm2022/lib/_internal/objects/conversation.mjs +1 -1
  16. package/esm2022/lib/_internal/objects/event.mjs +31 -1
  17. package/esm2022/lib/_internal/objects/index.mjs +4 -4
  18. package/esm2022/lib/_internal/objects/message.mjs +2 -26
  19. package/esm2022/lib/_internal/objects/widget.mjs +5 -1
  20. package/fesm2022/vendasta-conversation.mjs +184 -26
  21. package/fesm2022/vendasta-conversation.mjs.map +1 -1
  22. package/lib/_internal/conversation.api.service.d.ts +3 -2
  23. package/lib/_internal/enums/event.enum.d.ts +7 -0
  24. package/lib/_internal/enums/index.d.ts +1 -0
  25. package/lib/_internal/interfaces/api.interface.d.ts +19 -0
  26. package/lib/_internal/interfaces/common.interface.d.ts +4 -0
  27. package/lib/_internal/interfaces/event.interface.d.ts +6 -0
  28. package/lib/_internal/interfaces/index.d.ts +3 -3
  29. package/lib/_internal/interfaces/message.interface.d.ts +1 -4
  30. package/lib/_internal/interfaces/widget.interface.d.ts +1 -0
  31. package/lib/_internal/objects/api.d.ts +25 -0
  32. package/lib/_internal/objects/common.d.ts +7 -0
  33. package/lib/_internal/objects/event.d.ts +6 -0
  34. package/lib/_internal/objects/index.d.ts +3 -3
  35. package/lib/_internal/objects/message.d.ts +1 -7
  36. package/lib/_internal/objects/widget.d.ts +1 -0
  37. package/package.json +1 -1
@@ -5,6 +5,31 @@ export function enumStringToValue(enumRef, value) {
5
5
  }
6
6
  return enumRef[value];
7
7
  }
8
+ export class KeyValuePair {
9
+ key;
10
+ value;
11
+ static fromProto(proto) {
12
+ let m = new KeyValuePair();
13
+ m = Object.assign(m, proto);
14
+ return m;
15
+ }
16
+ constructor(kwargs) {
17
+ if (!kwargs) {
18
+ return;
19
+ }
20
+ Object.assign(this, kwargs);
21
+ }
22
+ toApiJson() {
23
+ const toReturn = {};
24
+ if (typeof this.key !== 'undefined') {
25
+ toReturn['key'] = this.key;
26
+ }
27
+ if (typeof this.value !== 'undefined') {
28
+ toReturn['value'] = this.value;
29
+ }
30
+ return toReturn;
31
+ }
32
+ }
8
33
  export class NamespaceDetail {
9
34
  participantType;
10
35
  internalParticipantId;
@@ -61,4 +86,4 @@ export class SubjectParticipant {
61
86
  return toReturn;
62
87
  }
63
88
  }
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29udmVyc2F0aW9uX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLGVBQWU7SUFDeEIsZUFBZSxDQUEwQjtJQUN6QyxxQkFBcUIsQ0FBUztJQUU5QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUM5QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFBQSxDQUFDLENBQUMsZUFBZSxHQUFHLGlCQUFpQixDQUEwQixDQUFDLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUM1SSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQW1DO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFBQSxDQUFDO1FBQ3RHLElBQUksT0FBTyxJQUFJLENBQUMscUJBQXFCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsdUJBQXVCLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFBQSxDQUFDO1FBQ3hILE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsZUFBZSxDQUEwQjtJQUN6QyxxQkFBcUIsQ0FBUztJQUU5QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ2pDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUFBLENBQUMsQ0FBQyxlQUFlLEdBQUcsaUJBQWlCLENBQTBCLENBQUMsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQzVJLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBc0M7UUFDOUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1YsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsZUFBZSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUFBLENBQUM7UUFDdEcsSUFBSSxPQUFPLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUFBLENBQUM7UUFDeEgsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBOYW1lc3BhY2VEZXRhaWwgaW1wbGVtZW50cyBpLk5hbWVzcGFjZURldGFpbEludGVyZmFjZSB7XG4gICAgcGFydGljaXBhbnRUeXBlOiBlLkdsb2JhbFBhcnRpY2lwYW50VHlwZTtcbiAgICBpbnRlcm5hbFBhcnRpY2lwYW50SWQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IE5hbWVzcGFjZURldGFpbCB7XG4gICAgICAgIGxldCBtID0gbmV3IE5hbWVzcGFjZURldGFpbCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5wYXJ0aWNpcGFudFR5cGUpIHttLnBhcnRpY2lwYW50VHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuR2xvYmFsUGFydGljaXBhbnRUeXBlPihlLkdsb2JhbFBhcnRpY2lwYW50VHlwZSwgcHJvdG8ucGFydGljaXBhbnRUeXBlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTmFtZXNwYWNlRGV0YWlsSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFydGljaXBhbnRUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwYXJ0aWNpcGFudFR5cGUnXSA9IHRoaXMucGFydGljaXBhbnRUeXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmludGVybmFsUGFydGljaXBhbnRJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW50ZXJuYWxQYXJ0aWNpcGFudElkJ10gPSB0aGlzLmludGVybmFsUGFydGljaXBhbnRJZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdWJqZWN0UGFydGljaXBhbnQgaW1wbGVtZW50cyBpLlN1YmplY3RQYXJ0aWNpcGFudEludGVyZmFjZSB7XG4gICAgcGFydGljaXBhbnRUeXBlOiBlLkdsb2JhbFBhcnRpY2lwYW50VHlwZTtcbiAgICBpbnRlcm5hbFBhcnRpY2lwYW50SWQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFN1YmplY3RQYXJ0aWNpcGFudCB7XG4gICAgICAgIGxldCBtID0gbmV3IFN1YmplY3RQYXJ0aWNpcGFudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5wYXJ0aWNpcGFudFR5cGUpIHttLnBhcnRpY2lwYW50VHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuR2xvYmFsUGFydGljaXBhbnRUeXBlPihlLkdsb2JhbFBhcnRpY2lwYW50VHlwZSwgcHJvdG8ucGFydGljaXBhbnRUeXBlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuU3ViamVjdFBhcnRpY2lwYW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFydGljaXBhbnRUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwYXJ0aWNpcGFudFR5cGUnXSA9IHRoaXMucGFydGljaXBhbnRUeXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmludGVybmFsUGFydGljaXBhbnRJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW50ZXJuYWxQYXJ0aWNpcGFudElkJ10gPSB0aGlzLmludGVybmFsUGFydGljaXBhbnRJZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbiJdfQ==
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29udmVyc2F0aW9uX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLFlBQVk7SUFDckIsR0FBRyxDQUFTO0lBQ1osS0FBSyxDQUFTO0lBRWQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBZ0M7UUFDeEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1YsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBQSxDQUFDO1FBQ2xFLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFBQSxDQUFDO1FBQ3hFLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxlQUFlO0lBQ3hCLGVBQWUsQ0FBMEI7SUFDekMscUJBQXFCLENBQVM7SUFFOUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLGVBQWUsR0FBRyxpQkFBaUIsQ0FBMEIsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUFBLENBQUM7UUFDNUksT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFtQztRQUMzQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDVixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxlQUFlLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQUEsQ0FBQztRQUN0RyxJQUFJLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQUEsQ0FBQztRQUN4SCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLGVBQWUsQ0FBMEI7SUFDekMscUJBQXFCLENBQVM7SUFFOUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUNqQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFBQSxDQUFDLENBQUMsZUFBZSxHQUFHLGlCQUFpQixDQUEwQixDQUFDLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUM1SSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQXNDO1FBQzlDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFBQSxDQUFDO1FBQ3RHLElBQUksT0FBTyxJQUFJLENBQUMscUJBQXFCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsdUJBQXVCLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFBQSxDQUFDO1FBQ3hILE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtU3RyaW5nVG9WYWx1ZTxFPihlbnVtUmVmOiBhbnksIHZhbHVlOiBzdHJpbmcpOiBFIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgcmV0dXJuIGVudW1SZWZbdmFsdWVdO1xufVxuXG5leHBvcnQgY2xhc3MgS2V5VmFsdWVQYWlyIGltcGxlbWVudHMgaS5LZXlWYWx1ZVBhaXJJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBLZXlWYWx1ZVBhaXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBLZXlWYWx1ZVBhaXIoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLktleVZhbHVlUGFpckludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndmFsdWUnXSA9IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTmFtZXNwYWNlRGV0YWlsIGltcGxlbWVudHMgaS5OYW1lc3BhY2VEZXRhaWxJbnRlcmZhY2Uge1xuICAgIHBhcnRpY2lwYW50VHlwZTogZS5HbG9iYWxQYXJ0aWNpcGFudFR5cGU7XG4gICAgaW50ZXJuYWxQYXJ0aWNpcGFudElkOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBOYW1lc3BhY2VEZXRhaWwge1xuICAgICAgICBsZXQgbSA9IG5ldyBOYW1lc3BhY2VEZXRhaWwoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucGFydGljaXBhbnRUeXBlKSB7bS5wYXJ0aWNpcGFudFR5cGUgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLkdsb2JhbFBhcnRpY2lwYW50VHlwZT4oZS5HbG9iYWxQYXJ0aWNpcGFudFR5cGUsIHByb3RvLnBhcnRpY2lwYW50VHlwZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLk5hbWVzcGFjZURldGFpbEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhcnRpY2lwYW50VHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGFydGljaXBhbnRUeXBlJ10gPSB0aGlzLnBhcnRpY2lwYW50VHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnRlcm5hbFBhcnRpY2lwYW50SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ludGVybmFsUGFydGljaXBhbnRJZCddID0gdGhpcy5pbnRlcm5hbFBhcnRpY2lwYW50SWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgU3ViamVjdFBhcnRpY2lwYW50IGltcGxlbWVudHMgaS5TdWJqZWN0UGFydGljaXBhbnRJbnRlcmZhY2Uge1xuICAgIHBhcnRpY2lwYW50VHlwZTogZS5HbG9iYWxQYXJ0aWNpcGFudFR5cGU7XG4gICAgaW50ZXJuYWxQYXJ0aWNpcGFudElkOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBTdWJqZWN0UGFydGljaXBhbnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBTdWJqZWN0UGFydGljaXBhbnQoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucGFydGljaXBhbnRUeXBlKSB7bS5wYXJ0aWNpcGFudFR5cGUgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLkdsb2JhbFBhcnRpY2lwYW50VHlwZT4oZS5HbG9iYWxQYXJ0aWNpcGFudFR5cGUsIHByb3RvLnBhcnRpY2lwYW50VHlwZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlN1YmplY3RQYXJ0aWNpcGFudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhcnRpY2lwYW50VHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGFydGljaXBhbnRUeXBlJ10gPSB0aGlzLnBhcnRpY2lwYW50VHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnRlcm5hbFBhcnRpY2lwYW50SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ludGVybmFsUGFydGljaXBhbnRJZCddID0gdGhpcy5pbnRlcm5hbFBhcnRpY2lwYW50SWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
@@ -152,4 +152,4 @@ export class ProductFeature {
152
152
  return toReturn;
153
153
  }
154
154
  }
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2NvbnZlcnNhdGlvbl9zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUU1QyxNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxtQkFBbUIsQ0FBVTtJQUU3QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1FBQzNDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWdEO1FBQ3hELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQUEsQ0FBQztRQUNsSCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7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QUFDLDZCQUE2QixDQUFDO1FBQUEsQ0FBQztRQUNoSixJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQUEsQ0FBQztRQUN2RixJQUFJLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBQUEsQ0FBQztRQUNySCxJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFBQSxDQUFDO1FBQ25HLElBQUksT0FBTyxJQUFJLENBQUMsd0JBQXdCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsMEJBQTBCLENBQUMsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUM7UUFBQSxDQUFDO1FBQ2pJLElBQUksT0FBTyxJQUFJLENBQUMseUJBQXlCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUM7UUFBQSxDQUFDO1FBQ3BJLElBQUksT0FBTyxJQUFJLENBQUMscUJBQXFCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsdUJBQXVCLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFBQSxDQUFDO1FBQ3hILE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7U3ViamVjdFBhcnRpY2lwYW50fSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtU3RyaW5nVG9WYWx1ZTxFPihlbnVtUmVmOiBhbnksIHZhbHVlOiBzdHJpbmcpOiBFIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgcmV0dXJuIGVudW1SZWZbdmFsdWVdO1xufVxuXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIGkuQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbkludGVyZmFjZSB7XG4gICAgc21zUmVzcG9uZGVyRW5hYmxlZDogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IENvbmZpZ3VyYXRpb25BSUNvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBDb25maWd1cmF0aW9uQUlDb25maWd1cmF0aW9uKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Db25maWd1cmF0aW9uQUlDb25maWd1cmF0aW9uSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc21zUmVzcG9uZGVyRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc21zUmVzcG9uZGVyRW5hYmxlZCddID0gdGhpcy5zbXNSZXNwb25kZXJFbmFibGVkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb24gaW1wbGVtZW50cyBpLkNvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudDogU3ViamVjdFBhcnRpY2lwYW50O1xuICAgIGNyZWF0ZWRBdDogRGF0ZTtcbiAgICB1cGRhdGVkQXQ6IERhdGU7XG4gICAgYXZhaWxhYmlsaXR5TWVzc2FnZTogc3RyaW5nO1xuICAgIHNob3dBdmFpbGFiaWxpdHlNZXNzYWdlOiBib29sZWFuO1xuICAgIGdvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkOiBib29sZWFuO1xuICAgIHNtc0VuYWJsZWQ6IGJvb2xlYW47XG4gICAgaW5ib3hQcm9FbmFibGVkOiBib29sZWFuO1xuICAgIHdlYkNoYXRFbmFibGVkOiBib29sZWFuO1xuICAgIGZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZDogYm9vbGVhbjtcbiAgICBtdWx0aUxvY2F0aW9uRW5hYmxlZDogYm9vbGVhbjtcbiAgICBpbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkOiBib29sZWFuO1xuICAgIGFpQ29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IENvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBDb25maWd1cmF0aW9uKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudCkge20uc3ViamVjdFBhcnRpY2lwYW50ID0gU3ViamVjdFBhcnRpY2lwYW50LmZyb21Qcm90byhwcm90by5zdWJqZWN0UGFydGljaXBhbnQpO31cbiAgICAgICAgaWYgKHByb3RvLmNyZWF0ZWRBdCkge20uY3JlYXRlZEF0ID0gbmV3IERhdGUocHJvdG8uY3JlYXRlZEF0KTt9XG4gICAgICAgIGlmIChwcm90by51cGRhdGVkQXQpIHttLnVwZGF0ZWRBdCA9IG5ldyBEYXRlKHByb3RvLnVwZGF0ZWRBdCk7fVxuICAgICAgICBpZiAocHJvdG8uYWlDb25maWd1cmF0aW9uKSB7bS5haUNvbmZpZ3VyYXRpb24gPSBDb25maWd1cmF0aW9uQUlDb25maWd1cmF0aW9uLmZyb21Qcm90byhwcm90by5haUNvbmZpZ3VyYXRpb24pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Db25maWd1cmF0aW9uSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCAhPT0gbnVsbCkge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50ID8gKHRoaXMuc3ViamVjdFBhcnRpY2lwYW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jcmVhdGVkQXQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY3JlYXRlZEF0ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2NyZWF0ZWRBdCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5jcmVhdGVkQXQgPyAodGhpcy5jcmVhdGVkQXQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuY3JlYXRlZEF0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVwZGF0ZWRBdCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy51cGRhdGVkQXQgIT09IG51bGwpIHt0b1JldHVyblsndXBkYXRlZEF0J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnVwZGF0ZWRBdCA/ICh0aGlzLnVwZGF0ZWRBdCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy51cGRhdGVkQXQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXZhaWxhYmlsaXR5TWVzc2FnZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXZhaWxhYmlsaXR5TWVzc2FnZSddID0gdGhpcy5hdmFpbGFiaWxpdHlNZXNzYWdlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNob3dBdmFpbGFiaWxpdHlNZXNzYWdlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzaG93QXZhaWxhYmlsaXR5TWVzc2FnZSddID0gdGhpcy5zaG93QXZhaWxhYmlsaXR5TWVzc2FnZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5nb29nbGVCdXNpbmVzc01lc3NhZ2VzRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQnXSA9IHRoaXMuZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc21zRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc21zRW5hYmxlZCddID0gdGhpcy5zbXNFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmluYm94UHJvRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW5ib3hQcm9FbmFibGVkJ10gPSB0aGlzLmluYm94UHJvRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy53ZWJDaGF0RW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnd2ViQ2hhdEVuYWJsZWQnXSA9IHRoaXMud2ViQ2hhdEVuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmYWNlYm9va01lc3NlbmdlckVuYWJsZWQnXSA9IHRoaXMuZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm11bHRpTG9jYXRpb25FbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtdWx0aUxvY2F0aW9uRW5hYmxlZCddID0gdGhpcy5tdWx0aUxvY2F0aW9uRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkJ10gPSB0aGlzLmluc3RhZ3JhbU1lc3NhZ2luZ0VuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYWlDb25maWd1cmF0aW9uICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmFpQ29uZmlndXJhdGlvbiAhPT0gbnVsbCkge3RvUmV0dXJuWydhaUNvbmZpZ3VyYXRpb24nXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuYWlDb25maWd1cmF0aW9uID8gKHRoaXMuYWlDb25maWd1cmF0aW9uIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmFpQ29uZmlndXJhdGlvbjt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9kdWN0RmVhdHVyZSBpbXBsZW1lbnRzIGkuUHJvZHVjdEZlYXR1cmVJbnRlcmZhY2Uge1xuICAgIGdvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkOiBib29sZWFuO1xuICAgIHNtc0VuYWJsZWQ6IGJvb2xlYW47XG4gICAgbXVsdGlMb2NhdGlvbkVuYWJsZWQ6IGJvb2xlYW47XG4gICAgd2ViQ2hhdEVuYWJsZWQ6IGJvb2xlYW47XG4gICAgZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkOiBib29sZWFuO1xuICAgIGluc3RhZ3JhbU1lc3NhZ2luZ0VuYWJsZWQ6IGJvb2xlYW47XG4gICAgYWlTbXNSZXNwb25kZXJFbmFibGVkOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogUHJvZHVjdEZlYXR1cmUge1xuICAgICAgICBsZXQgbSA9IG5ldyBQcm9kdWN0RmVhdHVyZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUHJvZHVjdEZlYXR1cmVJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5nb29nbGVCdXNpbmVzc01lc3NhZ2VzRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQnXSA9IHRoaXMuZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc21zRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc21zRW5hYmxlZCddID0gdGhpcy5zbXNFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm11bHRpTG9jYXRpb25FbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtdWx0aUxvY2F0aW9uRW5hYmxlZCddID0gdGhpcy5tdWx0aUxvY2F0aW9uRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy53ZWJDaGF0RW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnd2ViQ2hhdEVuYWJsZWQnXSA9IHRoaXMud2ViQ2hhdEVuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmYWNlYm9va01lc3NlbmdlckVuYWJsZWQnXSA9IHRoaXMuZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmluc3RhZ3JhbU1lc3NhZ2luZ0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2luc3RhZ3JhbU1lc3NhZ2luZ0VuYWJsZWQnXSA9IHRoaXMuaW5zdGFncmFtTWVzc2FnaW5nRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5haVNtc1Jlc3BvbmRlckVuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FpU21zUmVzcG9uZGVyRW5hYmxlZCddID0gdGhpcy5haVNtc1Jlc3BvbmRlckVuYWJsZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2NvbnZlcnNhdGlvbl9zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUc5QyxNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxtQkFBbUIsQ0FBVTtJQUU3QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1FBQzNDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWdEO1FBQ3hELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQUEsQ0FBQztRQUNsSCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7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QUFDLDZCQUE2QixDQUFDO1FBQUEsQ0FBQztRQUNoSixJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQUEsQ0FBQztRQUN2RixJQUFJLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBQUEsQ0FBQztRQUNySCxJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFBQSxDQUFDO1FBQ25HLElBQUksT0FBTyxJQUFJLENBQUMsd0JBQXdCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsMEJBQTBCLENBQUMsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUM7UUFBQSxDQUFDO1FBQ2pJLElBQUksT0FBTyxJQUFJLENBQUMseUJBQXlCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUM7UUFBQSxDQUFDO1FBQ3BJLElBQUksT0FBTyxJQUFJLENBQUMscUJBQXFCLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsdUJBQXVCLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFBQSxDQUFDO1FBQ3hILE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFN1YmplY3RQYXJ0aWNpcGFudCB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW51bVN0cmluZ1RvVmFsdWU8RT4oZW51bVJlZjogYW55LCB2YWx1ZTogc3RyaW5nKTogRSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIHJldHVybiBlbnVtUmVmW3ZhbHVlXTtcbn1cblxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25BSUNvbmZpZ3VyYXRpb24gaW1wbGVtZW50cyBpLkNvbmZpZ3VyYXRpb25BSUNvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHNtc1Jlc3BvbmRlckVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb25maWd1cmF0aW9uQUlDb25maWd1cmF0aW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbkludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNtc1Jlc3BvbmRlckVuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3Ntc1Jlc3BvbmRlckVuYWJsZWQnXSA9IHRoaXMuc21zUmVzcG9uZGVyRW5hYmxlZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uIGltcGxlbWVudHMgaS5Db25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICBzdWJqZWN0UGFydGljaXBhbnQ6IFN1YmplY3RQYXJ0aWNpcGFudDtcbiAgICBjcmVhdGVkQXQ6IERhdGU7XG4gICAgdXBkYXRlZEF0OiBEYXRlO1xuICAgIGF2YWlsYWJpbGl0eU1lc3NhZ2U6IHN0cmluZztcbiAgICBzaG93QXZhaWxhYmlsaXR5TWVzc2FnZTogYm9vbGVhbjtcbiAgICBnb29nbGVCdXNpbmVzc01lc3NhZ2VzRW5hYmxlZDogYm9vbGVhbjtcbiAgICBzbXNFbmFibGVkOiBib29sZWFuO1xuICAgIGluYm94UHJvRW5hYmxlZDogYm9vbGVhbjtcbiAgICB3ZWJDaGF0RW5hYmxlZDogYm9vbGVhbjtcbiAgICBmYWNlYm9va01lc3NlbmdlckVuYWJsZWQ6IGJvb2xlYW47XG4gICAgbXVsdGlMb2NhdGlvbkVuYWJsZWQ6IGJvb2xlYW47XG4gICAgaW5zdGFncmFtTWVzc2FnaW5nRW5hYmxlZDogYm9vbGVhbjtcbiAgICBhaUNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25BSUNvbmZpZ3VyYXRpb247XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb25maWd1cmF0aW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5zdWJqZWN0UGFydGljaXBhbnQpIHttLnN1YmplY3RQYXJ0aWNpcGFudCA9IFN1YmplY3RQYXJ0aWNpcGFudC5mcm9tUHJvdG8ocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50KTt9XG4gICAgICAgIGlmIChwcm90by5jcmVhdGVkQXQpIHttLmNyZWF0ZWRBdCA9IG5ldyBEYXRlKHByb3RvLmNyZWF0ZWRBdCk7fVxuICAgICAgICBpZiAocHJvdG8udXBkYXRlZEF0KSB7bS51cGRhdGVkQXQgPSBuZXcgRGF0ZShwcm90by51cGRhdGVkQXQpO31cbiAgICAgICAgaWYgKHByb3RvLmFpQ29uZmlndXJhdGlvbikge20uYWlDb25maWd1cmF0aW9uID0gQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbi5mcm9tUHJvdG8ocHJvdG8uYWlDb25maWd1cmF0aW9uKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ29uZmlndXJhdGlvbkludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnQgIT09IG51bGwpIHt0b1JldHVyblsnc3ViamVjdFBhcnRpY2lwYW50J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5zdWJqZWN0UGFydGljaXBhbnQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRlZEF0ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmNyZWF0ZWRBdCAhPT0gbnVsbCkge3RvUmV0dXJuWydjcmVhdGVkQXQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuY3JlYXRlZEF0ID8gKHRoaXMuY3JlYXRlZEF0IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNyZWF0ZWRBdDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51cGRhdGVkQXQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudXBkYXRlZEF0ICE9PSBudWxsKSB7dG9SZXR1cm5bJ3VwZGF0ZWRBdCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy51cGRhdGVkQXQgPyAodGhpcy51cGRhdGVkQXQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudXBkYXRlZEF0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmF2YWlsYWJpbGl0eU1lc3NhZ2UgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2F2YWlsYWJpbGl0eU1lc3NhZ2UnXSA9IHRoaXMuYXZhaWxhYmlsaXR5TWVzc2FnZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zaG93QXZhaWxhYmlsaXR5TWVzc2FnZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc2hvd0F2YWlsYWJpbGl0eU1lc3NhZ2UnXSA9IHRoaXMuc2hvd0F2YWlsYWJpbGl0eU1lc3NhZ2U7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2dvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkJ10gPSB0aGlzLmdvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNtc0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3Ntc0VuYWJsZWQnXSA9IHRoaXMuc21zRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbmJveFByb0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2luYm94UHJvRW5hYmxlZCddID0gdGhpcy5pbmJveFByb0VuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMud2ViQ2hhdEVuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3dlYkNoYXRFbmFibGVkJ10gPSB0aGlzLndlYkNoYXRFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkJ10gPSB0aGlzLmZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tdWx0aUxvY2F0aW9uRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbXVsdGlMb2NhdGlvbkVuYWJsZWQnXSA9IHRoaXMubXVsdGlMb2NhdGlvbkVuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaW5zdGFncmFtTWVzc2FnaW5nRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW5zdGFncmFtTWVzc2FnaW5nRW5hYmxlZCddID0gdGhpcy5pbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFpQ29uZmlndXJhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5haUNvbmZpZ3VyYXRpb24gIT09IG51bGwpIHt0b1JldHVyblsnYWlDb25maWd1cmF0aW9uJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmFpQ29uZmlndXJhdGlvbiA/ICh0aGlzLmFpQ29uZmlndXJhdGlvbiBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5haUNvbmZpZ3VyYXRpb247fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZlYXR1cmUgaW1wbGVtZW50cyBpLlByb2R1Y3RGZWF0dXJlSW50ZXJmYWNlIHtcbiAgICBnb29nbGVCdXNpbmVzc01lc3NhZ2VzRW5hYmxlZDogYm9vbGVhbjtcbiAgICBzbXNFbmFibGVkOiBib29sZWFuO1xuICAgIG11bHRpTG9jYXRpb25FbmFibGVkOiBib29sZWFuO1xuICAgIHdlYkNoYXRFbmFibGVkOiBib29sZWFuO1xuICAgIGZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZDogYm9vbGVhbjtcbiAgICBpbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkOiBib29sZWFuO1xuICAgIGFpU21zUmVzcG9uZGVyRW5hYmxlZDogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFByb2R1Y3RGZWF0dXJlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgUHJvZHVjdEZlYXR1cmUoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlByb2R1Y3RGZWF0dXJlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZ29vZ2xlQnVzaW5lc3NNZXNzYWdlc0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2dvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkJ10gPSB0aGlzLmdvb2dsZUJ1c2luZXNzTWVzc2FnZXNFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNtc0VuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3Ntc0VuYWJsZWQnXSA9IHRoaXMuc21zRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tdWx0aUxvY2F0aW9uRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbXVsdGlMb2NhdGlvbkVuYWJsZWQnXSA9IHRoaXMubXVsdGlMb2NhdGlvbkVuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMud2ViQ2hhdEVuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3dlYkNoYXRFbmFibGVkJ10gPSB0aGlzLndlYkNoYXRFbmFibGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmFjZWJvb2tNZXNzZW5nZXJFbmFibGVkJ10gPSB0aGlzLmZhY2Vib29rTWVzc2VuZ2VyRW5hYmxlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpbnN0YWdyYW1NZXNzYWdpbmdFbmFibGVkJ10gPSB0aGlzLmluc3RhZ3JhbU1lc3NhZ2luZ0VuYWJsZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYWlTbXNSZXNwb25kZXJFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydhaVNtc1Jlc3BvbmRlckVuYWJsZWQnXSA9IHRoaXMuYWlTbXNSZXNwb25kZXJFbmFibGVkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19
@@ -271,4 +271,4 @@ export class SubjectParticipantKey {
271
271
  return toReturn;
272
272
  }
273
273
  }
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29udmVyc2F0aW9uX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2NvbnZlcnNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7QUFFOUIsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxlQUFlO0lBQ3hCLGlCQUFpQixDQUFVO0lBRTNCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQzlCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQW1DO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQUEsQ0FBQztRQUM1RyxP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c0JBQXNCLENBQUM7UUFBQSxDQUFDO1FBQzNILElBQUksT0FBTyxJQUFJLENBQUMsbUJBQW1CLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxtQkFBMkIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQUEsQ0FBQztRQUNqUCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1N1YmplY3RQYXJ0aWNpcGFudH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtU3RyaW5nVG9WYWx1ZTxFPihlbnVtUmVmOiBhbnksIHZhbHVlOiBzdHJpbmcpOiBFIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgcmV0dXJuIGVudW1SZWZbdmFsdWVdO1xufVxuXG5leHBvcnQgY2xhc3MgQUlDb25maWd1cmF0aW9uIGltcGxlbWVudHMgaS5BSUNvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIGFpUmVzcG9uc2VFbmFibGVkOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQUlDb25maWd1cmF0aW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQUlDb25maWd1cmF0aW9uKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BSUNvbmZpZ3VyYXRpb25JbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5haVJlc3BvbnNlRW5hYmxlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYWlSZXNwb25zZUVuYWJsZWQnXSA9IHRoaXMuYWlSZXNwb25zZUVuYWJsZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29udmVyc2F0aW9uIGltcGxlbWVudHMgaS5Db252ZXJzYXRpb25JbnRlcmZhY2Uge1xuICAgIGNvbnZlcnNhdGlvbklkOiBzdHJpbmc7XG4gICAgY2hhbm5lbDogZS5Db252ZXJzYXRpb25DaGFubmVsO1xuICAgIGV4dGVybmFsQ29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICBjcmVhdGVkOiBEYXRlO1xuICAgIHVwZGF0ZWQ6IERhdGU7XG4gICAgZGVsZXRlZDogRGF0ZTtcbiAgICBwYXJ0aWNpcGFudElkczogc3RyaW5nW107XG4gICAgbGF0ZXN0TXNnU2VudFRpbWU6IERhdGU7XG4gICAgb3JpZ2luTG9jYXRpb246IGUuUGxhdGZvcm1Mb2NhdGlvbjtcbiAgICBvcmlnaW5Mb2NhdGlvbkV4dGVybmFsSWQ6IHN0cmluZztcbiAgICBsYXN0U2VlbkJ5UGFydGljaXBhbnQ6IExhc3RTZWVuQnlQYXJ0aWNpcGFudFtdO1xuICAgIGNvbnZlcnNhdGlvblZpZXdJZHM6IHN0cmluZ1tdO1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudHNLZXk6IHN0cmluZztcbiAgICBzdWJqZWN0UGFydGljaXBhbnRzOiBTdWJqZWN0UGFydGljaXBhbnRbXTtcbiAgICBpc09wZW46IGJvb2xlYW47XG4gICAgYWlDb25maWd1cmF0aW9uOiBBSUNvbmZpZ3VyYXRpb247XG4gICAgbGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudDogTGF0ZXN0TWVzc2FnZVNlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnRbXTtcbiAgICBzdWJqZWN0UGFydGljaXBhbnRLZXk6IFN1YmplY3RQYXJ0aWNpcGFudEtleTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IENvbnZlcnNhdGlvbiB7XG4gICAgICAgIGxldCBtID0gbmV3IENvbnZlcnNhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5jaGFubmVsKSB7bS5jaGFubmVsID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5Db252ZXJzYXRpb25DaGFubmVsPihlLkNvbnZlcnNhdGlvbkNoYW5uZWwsIHByb3RvLmNoYW5uZWwpO31cbiAgICAgICAgaWYgKHByb3RvLmNyZWF0ZWQpIHttLmNyZWF0ZWQgPSBuZXcgRGF0ZShwcm90by5jcmVhdGVkKTt9XG4gICAgICAgIGlmIChwcm90by51cGRhdGVkKSB7bS51cGRhdGVkID0gbmV3IERhdGUocHJvdG8udXBkYXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8uZGVsZXRlZCkge20uZGVsZXRlZCA9IG5ldyBEYXRlKHByb3RvLmRlbGV0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLmxhdGVzdE1zZ1NlbnRUaW1lKSB7bS5sYXRlc3RNc2dTZW50VGltZSA9IG5ldyBEYXRlKHByb3RvLmxhdGVzdE1zZ1NlbnRUaW1lKTt9XG4gICAgICAgIGlmIChwcm90by5vcmlnaW5Mb2NhdGlvbikge20ub3JpZ2luTG9jYXRpb24gPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLlBsYXRmb3JtTG9jYXRpb24+KGUuUGxhdGZvcm1Mb2NhdGlvbiwgcHJvdG8ub3JpZ2luTG9jYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLmxhc3RTZWVuQnlQYXJ0aWNpcGFudCkge20ubGFzdFNlZW5CeVBhcnRpY2lwYW50ID0gcHJvdG8ubGFzdFNlZW5CeVBhcnRpY2lwYW50Lm1hcChMYXN0U2VlbkJ5UGFydGljaXBhbnQuZnJvbVByb3RvKTt9XG4gICAgICAgIGlmIChwcm90by5zdWJqZWN0UGFydGljaXBhbnRzKSB7bS5zdWJqZWN0UGFydGljaXBhbnRzID0gcHJvdG8uc3ViamVjdFBhcnRpY2lwYW50cy5tYXAoU3ViamVjdFBhcnRpY2lwYW50LmZyb21Qcm90byk7fVxuICAgICAgICBpZiAocHJvdG8uYWlDb25maWd1cmF0aW9uKSB7bS5haUNvbmZpZ3VyYXRpb24gPSBBSUNvbmZpZ3VyYXRpb24uZnJvbVByb3RvKHByb3RvLmFpQ29uZmlndXJhdGlvbik7fVxuICAgICAgICBpZiAocHJvdG8ubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCkge20ubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCA9IHByb3RvLmxhdGVzdE1zZ1NlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQubWFwKExhdGVzdE1lc3NhZ2VTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50LmZyb21Qcm90byk7fVxuICAgICAgICBpZiAocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50S2V5KSB7bS5zdWJqZWN0UGFydGljaXBhbnRLZXkgPSBTdWJqZWN0UGFydGljaXBhbnRLZXkuZnJvbVByb3RvKHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudEtleSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNvbnZlcnNhdGlvbkludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbnZlcnNhdGlvbklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjb252ZXJzYXRpb25JZCddID0gdGhpcy5jb252ZXJzYXRpb25JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jaGFubmVsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjaGFubmVsJ10gPSB0aGlzLmNoYW5uZWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZXh0ZXJuYWxDb252ZXJzYXRpb25JZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZXh0ZXJuYWxDb252ZXJzYXRpb25JZCddID0gdGhpcy5leHRlcm5hbENvbnZlcnNhdGlvbklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNyZWF0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY3JlYXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydjcmVhdGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmNyZWF0ZWQgPyAodGhpcy5jcmVhdGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNyZWF0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXBkYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy51cGRhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ3VwZGF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudXBkYXRlZCA/ICh0aGlzLnVwZGF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudXBkYXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kZWxldGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmRlbGV0ZWQgIT09IG51bGwpIHt0b1JldHVyblsnZGVsZXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5kZWxldGVkID8gKHRoaXMuZGVsZXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5kZWxldGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhcnRpY2lwYW50SWRzICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwYXJ0aWNpcGFudElkcyddID0gdGhpcy5wYXJ0aWNpcGFudElkczt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXRlc3RNc2dTZW50VGltZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5sYXRlc3RNc2dTZW50VGltZSAhPT0gbnVsbCkge3RvUmV0dXJuWydsYXRlc3RNc2dTZW50VGltZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5sYXRlc3RNc2dTZW50VGltZSA/ICh0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9yaWdpbkxvY2F0aW9uICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydvcmlnaW5Mb2NhdGlvbiddID0gdGhpcy5vcmlnaW5Mb2NhdGlvbjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5vcmlnaW5Mb2NhdGlvbkV4dGVybmFsSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ29yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZCddID0gdGhpcy5vcmlnaW5Mb2NhdGlvbkV4dGVybmFsSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGFzdFNlZW5CeVBhcnRpY2lwYW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmxhc3RTZWVuQnlQYXJ0aWNpcGFudCAhPT0gbnVsbCkge3RvUmV0dXJuWydsYXN0U2VlbkJ5UGFydGljaXBhbnQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMubGFzdFNlZW5CeVBhcnRpY2lwYW50ID8gKHRoaXMubGFzdFNlZW5CeVBhcnRpY2lwYW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmxhc3RTZWVuQnlQYXJ0aWNpcGFudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb252ZXJzYXRpb25WaWV3SWRzICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjb252ZXJzYXRpb25WaWV3SWRzJ10gPSB0aGlzLmNvbnZlcnNhdGlvblZpZXdJZHM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50c0tleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc3ViamVjdFBhcnRpY2lwYW50c0tleSddID0gdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzS2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gbnVsbCkge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnRzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgPyAodGhpcy5zdWJqZWN0UGFydGljaXBhbnRzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaXNPcGVuICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpc09wZW4nXSA9IHRoaXMuaXNPcGVuO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFpQ29uZmlndXJhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5haUNvbmZpZ3VyYXRpb24gIT09IG51bGwpIHt0b1JldHVyblsnYWlDb25maWd1cmF0aW9uJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmFpQ29uZmlndXJhdGlvbiA/ICh0aGlzLmFpQ29uZmlndXJhdGlvbiBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5haUNvbmZpZ3VyYXRpb247fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2xhdGVzdE1zZ1NlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCA/ICh0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRLZXkgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50S2V5ICE9PSBudWxsKSB7dG9SZXR1cm5bJ3N1YmplY3RQYXJ0aWNpcGFudEtleSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5zdWJqZWN0UGFydGljaXBhbnRLZXkgPyAodGhpcy5zdWJqZWN0UGFydGljaXBhbnRLZXkgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc3ViamVjdFBhcnRpY2lwYW50S2V5O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbnZlcnNhdGlvbktleSBpbXBsZW1lbnRzIGkuQ29udmVyc2F0aW9uS2V5SW50ZXJmYWNlIHtcbiAgICBzdWJqZWN0UGFydGljaXBhbnRzOiBTdWJqZWN0UGFydGljaXBhbnRbXTtcbiAgICBjaGFubmVsOiBlLkNvbnZlcnNhdGlvbkNoYW5uZWw7XG4gICAgb3JpZ2luTG9jYXRpb25FeHRlcm5hbElkOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb252ZXJzYXRpb25LZXkge1xuICAgICAgICBsZXQgbSA9IG5ldyBDb252ZXJzYXRpb25LZXkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50cykge20uc3ViamVjdFBhcnRpY2lwYW50cyA9IHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudHMubWFwKFN1YmplY3RQYXJ0aWNpcGFudC5mcm9tUHJvdG8pO31cbiAgICAgICAgaWYgKHByb3RvLmNoYW5uZWwpIHttLmNoYW5uZWwgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLkNvbnZlcnNhdGlvbkNoYW5uZWw+KGUuQ29udmVyc2F0aW9uQ2hhbm5lbCwgcHJvdG8uY2hhbm5lbCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNvbnZlcnNhdGlvbktleUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gbnVsbCkge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnRzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgPyAodGhpcy5zdWJqZWN0UGFydGljaXBhbnRzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2hhbm5lbCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2hhbm5lbCddID0gdGhpcy5jaGFubmVsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnb3JpZ2luTG9jYXRpb25FeHRlcm5hbElkJ10gPSB0aGlzLm9yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMYXN0U2VlbkJ5UGFydGljaXBhbnQgaW1wbGVtZW50cyBpLkxhc3RTZWVuQnlQYXJ0aWNpcGFudEludGVyZmFjZSB7XG4gICAgcGFydGljaXBhbnRJZDogc3RyaW5nO1xuICAgIGxhc3RTZWVuVGltZTogRGF0ZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExhc3RTZWVuQnlQYXJ0aWNpcGFudCB7XG4gICAgICAgIGxldCBtID0gbmV3IExhc3RTZWVuQnlQYXJ0aWNpcGFudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5sYXN0U2VlblRpbWUpIHttLmxhc3RTZWVuVGltZSA9IG5ldyBEYXRlKHByb3RvLmxhc3RTZWVuVGltZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxhc3RTZWVuQnlQYXJ0aWNpcGFudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhcnRpY2lwYW50SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3BhcnRpY2lwYW50SWQnXSA9IHRoaXMucGFydGljaXBhbnRJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0U2VlblRpbWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMubGFzdFNlZW5UaW1lICE9PSBudWxsKSB7dG9SZXR1cm5bJ2xhc3RTZWVuVGltZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5sYXN0U2VlblRpbWUgPyAodGhpcy5sYXN0U2VlblRpbWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMubGFzdFNlZW5UaW1lO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExhdGVzdE1lc3NhZ2VTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50IGltcGxlbWVudHMgaS5MYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudEludGVyZmFjZSB7XG4gICAgc3ViamVjdFBhcnRpY2lwYW50OiBTdWJqZWN0UGFydGljaXBhbnQ7XG4gICAgdGltZTogRGF0ZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExhdGVzdE1lc3NhZ2VTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGF0ZXN0TWVzc2FnZVNlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50KSB7bS5zdWJqZWN0UGFydGljaXBhbnQgPSBTdWJqZWN0UGFydGljaXBhbnQuZnJvbVByb3RvKHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudCk7fVxuICAgICAgICBpZiAocHJvdG8udGltZSkge20udGltZSA9IG5ldyBEYXRlKHByb3RvLnRpbWUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5MYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnQgIT09IG51bGwpIHt0b1JldHVyblsnc3ViamVjdFBhcnRpY2lwYW50J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5zdWJqZWN0UGFydGljaXBhbnQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudGltZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy50aW1lICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RpbWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudGltZSA/ICh0aGlzLnRpbWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudGltZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdWJqZWN0UGFydGljaXBhbnRLZXkgaW1wbGVtZW50cyBpLlN1YmplY3RQYXJ0aWNpcGFudEtleUludGVyZmFjZSB7XG4gICAgc3ViamVjdFBhcnRpY2lwYW50c0tleTogc3RyaW5nO1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudHM6IFN1YmplY3RQYXJ0aWNpcGFudFtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogU3ViamVjdFBhcnRpY2lwYW50S2V5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgU3ViamVjdFBhcnRpY2lwYW50S2V5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudHMpIHttLnN1YmplY3RQYXJ0aWNpcGFudHMgPSBwcm90by5zdWJqZWN0UGFydGljaXBhbnRzLm1hcChTdWJqZWN0UGFydGljaXBhbnQuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuU3ViamVjdFBhcnRpY2lwYW50S2V5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50c0tleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc3ViamVjdFBhcnRpY2lwYW50c0tleSddID0gdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzS2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gbnVsbCkge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnRzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgPyAodGhpcy5zdWJqZWN0UGFydGljaXBhbnRzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29udmVyc2F0aW9uX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2NvbnZlcnNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7QUFFOUIsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxlQUFlO0lBQ3hCLGlCQUFpQixDQUFVO0lBRTNCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQzlCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQW1DO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQUEsQ0FBQztRQUM1RyxP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c0JBQXNCLENBQUM7UUFBQSxDQUFDO1FBQzNILElBQUksT0FBTyxJQUFJLENBQUMsbUJBQW1CLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxtQkFBMkIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQUEsQ0FBQztRQUNqUCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTdWJqZWN0UGFydGljaXBhbnQgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBBSUNvbmZpZ3VyYXRpb24gaW1wbGVtZW50cyBpLkFJQ29uZmlndXJhdGlvbkludGVyZmFjZSB7XG4gICAgYWlSZXNwb25zZUVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBSUNvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBBSUNvbmZpZ3VyYXRpb24oKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFJQ29uZmlndXJhdGlvbkludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFpUmVzcG9uc2VFbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydhaVJlc3BvbnNlRW5hYmxlZCddID0gdGhpcy5haVJlc3BvbnNlRW5hYmxlZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb252ZXJzYXRpb24gaW1wbGVtZW50cyBpLkNvbnZlcnNhdGlvbkludGVyZmFjZSB7XG4gICAgY29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICBjaGFubmVsOiBlLkNvbnZlcnNhdGlvbkNoYW5uZWw7XG4gICAgZXh0ZXJuYWxDb252ZXJzYXRpb25JZDogc3RyaW5nO1xuICAgIGNyZWF0ZWQ6IERhdGU7XG4gICAgdXBkYXRlZDogRGF0ZTtcbiAgICBkZWxldGVkOiBEYXRlO1xuICAgIHBhcnRpY2lwYW50SWRzOiBzdHJpbmdbXTtcbiAgICBsYXRlc3RNc2dTZW50VGltZTogRGF0ZTtcbiAgICBvcmlnaW5Mb2NhdGlvbjogZS5QbGF0Zm9ybUxvY2F0aW9uO1xuICAgIG9yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZDogc3RyaW5nO1xuICAgIGxhc3RTZWVuQnlQYXJ0aWNpcGFudDogTGFzdFNlZW5CeVBhcnRpY2lwYW50W107XG4gICAgY29udmVyc2F0aW9uVmlld0lkczogc3RyaW5nW107XG4gICAgc3ViamVjdFBhcnRpY2lwYW50c0tleTogc3RyaW5nO1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudHM6IFN1YmplY3RQYXJ0aWNpcGFudFtdO1xuICAgIGlzT3BlbjogYm9vbGVhbjtcbiAgICBhaUNvbmZpZ3VyYXRpb246IEFJQ29uZmlndXJhdGlvbjtcbiAgICBsYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50OiBMYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudFtdO1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudEtleTogU3ViamVjdFBhcnRpY2lwYW50S2V5O1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQ29udmVyc2F0aW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29udmVyc2F0aW9uKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmNoYW5uZWwpIHttLmNoYW5uZWwgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLkNvbnZlcnNhdGlvbkNoYW5uZWw+KGUuQ29udmVyc2F0aW9uQ2hhbm5lbCwgcHJvdG8uY2hhbm5lbCk7fVxuICAgICAgICBpZiAocHJvdG8uY3JlYXRlZCkge20uY3JlYXRlZCA9IG5ldyBEYXRlKHByb3RvLmNyZWF0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLnVwZGF0ZWQpIHttLnVwZGF0ZWQgPSBuZXcgRGF0ZShwcm90by51cGRhdGVkKTt9XG4gICAgICAgIGlmIChwcm90by5kZWxldGVkKSB7bS5kZWxldGVkID0gbmV3IERhdGUocHJvdG8uZGVsZXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8ubGF0ZXN0TXNnU2VudFRpbWUpIHttLmxhdGVzdE1zZ1NlbnRUaW1lID0gbmV3IERhdGUocHJvdG8ubGF0ZXN0TXNnU2VudFRpbWUpO31cbiAgICAgICAgaWYgKHByb3RvLm9yaWdpbkxvY2F0aW9uKSB7bS5vcmlnaW5Mb2NhdGlvbiA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuUGxhdGZvcm1Mb2NhdGlvbj4oZS5QbGF0Zm9ybUxvY2F0aW9uLCBwcm90by5vcmlnaW5Mb2NhdGlvbik7fVxuICAgICAgICBpZiAocHJvdG8ubGFzdFNlZW5CeVBhcnRpY2lwYW50KSB7bS5sYXN0U2VlbkJ5UGFydGljaXBhbnQgPSBwcm90by5sYXN0U2VlbkJ5UGFydGljaXBhbnQubWFwKExhc3RTZWVuQnlQYXJ0aWNpcGFudC5mcm9tUHJvdG8pO31cbiAgICAgICAgaWYgKHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudHMpIHttLnN1YmplY3RQYXJ0aWNpcGFudHMgPSBwcm90by5zdWJqZWN0UGFydGljaXBhbnRzLm1hcChTdWJqZWN0UGFydGljaXBhbnQuZnJvbVByb3RvKTt9XG4gICAgICAgIGlmIChwcm90by5haUNvbmZpZ3VyYXRpb24pIHttLmFpQ29uZmlndXJhdGlvbiA9IEFJQ29uZmlndXJhdGlvbi5mcm9tUHJvdG8ocHJvdG8uYWlDb25maWd1cmF0aW9uKTt9XG4gICAgICAgIGlmIChwcm90by5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50KSB7bS5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50ID0gcHJvdG8ubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudC5tYXAoTGF0ZXN0TWVzc2FnZVNlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQuZnJvbVByb3RvKTt9XG4gICAgICAgIGlmIChwcm90by5zdWJqZWN0UGFydGljaXBhbnRLZXkpIHttLnN1YmplY3RQYXJ0aWNpcGFudEtleSA9IFN1YmplY3RQYXJ0aWNpcGFudEtleS5mcm9tUHJvdG8ocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50S2V5KTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ29udmVyc2F0aW9uSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udmVyc2F0aW9uSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2NvbnZlcnNhdGlvbklkJ10gPSB0aGlzLmNvbnZlcnNhdGlvbklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNoYW5uZWwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2NoYW5uZWwnXSA9IHRoaXMuY2hhbm5lbDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5leHRlcm5hbENvbnZlcnNhdGlvbklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydleHRlcm5hbENvbnZlcnNhdGlvbklkJ10gPSB0aGlzLmV4dGVybmFsQ29udmVyc2F0aW9uSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5jcmVhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ2NyZWF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuY3JlYXRlZCA/ICh0aGlzLmNyZWF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuY3JlYXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51cGRhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnVwZGF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsndXBkYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy51cGRhdGVkID8gKHRoaXMudXBkYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy51cGRhdGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRlbGV0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZGVsZXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydkZWxldGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmRlbGV0ZWQgPyAodGhpcy5kZWxldGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmRlbGV0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFydGljaXBhbnRJZHMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3BhcnRpY2lwYW50SWRzJ10gPSB0aGlzLnBhcnRpY2lwYW50SWRzO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lICE9PSBudWxsKSB7dG9SZXR1cm5bJ2xhdGVzdE1zZ1NlbnRUaW1lJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lID8gKHRoaXMubGF0ZXN0TXNnU2VudFRpbWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMubGF0ZXN0TXNnU2VudFRpbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMub3JpZ2luTG9jYXRpb24gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ29yaWdpbkxvY2F0aW9uJ10gPSB0aGlzLm9yaWdpbkxvY2F0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnb3JpZ2luTG9jYXRpb25FeHRlcm5hbElkJ10gPSB0aGlzLm9yaWdpbkxvY2F0aW9uRXh0ZXJuYWxJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0U2VlbkJ5UGFydGljaXBhbnQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMubGFzdFNlZW5CeVBhcnRpY2lwYW50ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2xhc3RTZWVuQnlQYXJ0aWNpcGFudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5sYXN0U2VlbkJ5UGFydGljaXBhbnQgPyAodGhpcy5sYXN0U2VlbkJ5UGFydGljaXBhbnQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMubGFzdFNlZW5CeVBhcnRpY2lwYW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbnZlcnNhdGlvblZpZXdJZHMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2NvbnZlcnNhdGlvblZpZXdJZHMnXSA9IHRoaXMuY29udmVyc2F0aW9uVmlld0lkczt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzS2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnRzS2V5J10gPSB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHNLZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3N1YmplY3RQYXJ0aWNpcGFudHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc3ViamVjdFBhcnRpY2lwYW50czt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pc09wZW4gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2lzT3BlbiddID0gdGhpcy5pc09wZW47fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYWlDb25maWd1cmF0aW9uICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmFpQ29uZmlndXJhdGlvbiAhPT0gbnVsbCkge3RvUmV0dXJuWydhaUNvbmZpZ3VyYXRpb24nXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuYWlDb25maWd1cmF0aW9uID8gKHRoaXMuYWlDb25maWd1cmF0aW9uIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmFpQ29uZmlndXJhdGlvbjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmxhdGVzdE1zZ1NlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQgIT09IG51bGwpIHt0b1JldHVyblsnbGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50ID8gKHRoaXMubGF0ZXN0TXNnU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5sYXRlc3RNc2dTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudEtleSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRLZXkgIT09IG51bGwpIHt0b1JldHVyblsnc3ViamVjdFBhcnRpY2lwYW50S2V5J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudEtleSA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudEtleSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5zdWJqZWN0UGFydGljaXBhbnRLZXk7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29udmVyc2F0aW9uS2V5IGltcGxlbWVudHMgaS5Db252ZXJzYXRpb25LZXlJbnRlcmZhY2Uge1xuICAgIHN1YmplY3RQYXJ0aWNpcGFudHM6IFN1YmplY3RQYXJ0aWNpcGFudFtdO1xuICAgIGNoYW5uZWw6IGUuQ29udmVyc2F0aW9uQ2hhbm5lbDtcbiAgICBvcmlnaW5Mb2NhdGlvbkV4dGVybmFsSWQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IENvbnZlcnNhdGlvbktleSB7XG4gICAgICAgIGxldCBtID0gbmV3IENvbnZlcnNhdGlvbktleSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5zdWJqZWN0UGFydGljaXBhbnRzKSB7bS5zdWJqZWN0UGFydGljaXBhbnRzID0gcHJvdG8uc3ViamVjdFBhcnRpY2lwYW50cy5tYXAoU3ViamVjdFBhcnRpY2lwYW50LmZyb21Qcm90byk7fVxuICAgICAgICBpZiAocHJvdG8uY2hhbm5lbCkge20uY2hhbm5lbCA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuQ29udmVyc2F0aW9uQ2hhbm5lbD4oZS5Db252ZXJzYXRpb25DaGFubmVsLCBwcm90by5jaGFubmVsKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ29udmVyc2F0aW9uS2V5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3N1YmplY3RQYXJ0aWNpcGFudHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc3ViamVjdFBhcnRpY2lwYW50czt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jaGFubmVsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjaGFubmVsJ10gPSB0aGlzLmNoYW5uZWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMub3JpZ2luTG9jYXRpb25FeHRlcm5hbElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydvcmlnaW5Mb2NhdGlvbkV4dGVybmFsSWQnXSA9IHRoaXMub3JpZ2luTG9jYXRpb25FeHRlcm5hbElkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExhc3RTZWVuQnlQYXJ0aWNpcGFudCBpbXBsZW1lbnRzIGkuTGFzdFNlZW5CeVBhcnRpY2lwYW50SW50ZXJmYWNlIHtcbiAgICBwYXJ0aWNpcGFudElkOiBzdHJpbmc7XG4gICAgbGFzdFNlZW5UaW1lOiBEYXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTGFzdFNlZW5CeVBhcnRpY2lwYW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGFzdFNlZW5CeVBhcnRpY2lwYW50KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmxhc3RTZWVuVGltZSkge20ubGFzdFNlZW5UaW1lID0gbmV3IERhdGUocHJvdG8ubGFzdFNlZW5UaW1lKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTGFzdFNlZW5CeVBhcnRpY2lwYW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFydGljaXBhbnRJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGFydGljaXBhbnRJZCddID0gdGhpcy5wYXJ0aWNpcGFudElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmxhc3RTZWVuVGltZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5sYXN0U2VlblRpbWUgIT09IG51bGwpIHt0b1JldHVyblsnbGFzdFNlZW5UaW1lJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmxhc3RTZWVuVGltZSA/ICh0aGlzLmxhc3RTZWVuVGltZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5sYXN0U2VlblRpbWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGF0ZXN0TWVzc2FnZVNlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQgaW1wbGVtZW50cyBpLkxhdGVzdE1lc3NhZ2VTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50SW50ZXJmYWNlIHtcbiAgICBzdWJqZWN0UGFydGljaXBhbnQ6IFN1YmplY3RQYXJ0aWNpcGFudDtcbiAgICB0aW1lOiBEYXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTGF0ZXN0TWVzc2FnZVNlbnRUaW1lQnlTdWJqZWN0UGFydGljaXBhbnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBMYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5zdWJqZWN0UGFydGljaXBhbnQpIHttLnN1YmplY3RQYXJ0aWNpcGFudCA9IFN1YmplY3RQYXJ0aWNpcGFudC5mcm9tUHJvdG8ocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50KTt9XG4gICAgICAgIGlmIChwcm90by50aW1lKSB7bS50aW1lID0gbmV3IERhdGUocHJvdG8udGltZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxhdGVzdE1lc3NhZ2VTZW50VGltZUJ5U3ViamVjdFBhcnRpY2lwYW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudCAhPT0gbnVsbCkge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50ID8gKHRoaXMuc3ViamVjdFBhcnRpY2lwYW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy50aW1lICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRpbWUgIT09IG51bGwpIHt0b1JldHVyblsndGltZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy50aW1lID8gKHRoaXMudGltZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy50aW1lO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFN1YmplY3RQYXJ0aWNpcGFudEtleSBpbXBsZW1lbnRzIGkuU3ViamVjdFBhcnRpY2lwYW50S2V5SW50ZXJmYWNlIHtcbiAgICBzdWJqZWN0UGFydGljaXBhbnRzS2V5OiBzdHJpbmc7XG4gICAgc3ViamVjdFBhcnRpY2lwYW50czogU3ViamVjdFBhcnRpY2lwYW50W107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBTdWJqZWN0UGFydGljaXBhbnRLZXkge1xuICAgICAgICBsZXQgbSA9IG5ldyBTdWJqZWN0UGFydGljaXBhbnRLZXkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uc3ViamVjdFBhcnRpY2lwYW50cykge20uc3ViamVjdFBhcnRpY2lwYW50cyA9IHByb3RvLnN1YmplY3RQYXJ0aWNpcGFudHMubWFwKFN1YmplY3RQYXJ0aWNpcGFudC5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5TdWJqZWN0UGFydGljaXBhbnRLZXlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzS2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzdWJqZWN0UGFydGljaXBhbnRzS2V5J10gPSB0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHNLZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdWJqZWN0UGFydGljaXBhbnRzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3N1YmplY3RQYXJ0aWNpcGFudHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc3ViamVjdFBhcnRpY2lwYW50cyA/ICh0aGlzLnN1YmplY3RQYXJ0aWNpcGFudHMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc3ViamVjdFBhcnRpY2lwYW50czt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbiJdfQ==
@@ -1,3 +1,5 @@
1
+ import { KeyValuePair } from './common';
2
+ import * as e from '../enums';
1
3
  export function enumStringToValue(enumRef, value) {
2
4
  if (typeof value === 'number') {
3
5
  return value;
@@ -14,6 +16,10 @@ export class Event {
14
16
  updated;
15
17
  deleted;
16
18
  message;
19
+ channel;
20
+ originatedAt;
21
+ type;
22
+ metadata;
17
23
  static fromProto(proto) {
18
24
  let m = new Event();
19
25
  m = Object.assign(m, proto);
@@ -29,6 +35,18 @@ export class Event {
29
35
  if (proto.deleted) {
30
36
  m.deleted = new Date(proto.deleted);
31
37
  }
38
+ if (proto.channel) {
39
+ m.channel = enumStringToValue(e.ConversationChannel, proto.channel);
40
+ }
41
+ if (proto.originatedAt) {
42
+ m.originatedAt = enumStringToValue(e.PlatformLocation, proto.originatedAt);
43
+ }
44
+ if (proto.type) {
45
+ m.type = enumStringToValue(e.EventType, proto.type);
46
+ }
47
+ if (proto.metadata) {
48
+ m.metadata = proto.metadata.map(KeyValuePair.fromProto);
49
+ }
32
50
  return m;
33
51
  }
34
52
  constructor(kwargs) {
@@ -66,7 +84,19 @@ export class Event {
66
84
  if (typeof this.message !== 'undefined') {
67
85
  toReturn['message'] = this.message;
68
86
  }
87
+ if (typeof this.channel !== 'undefined') {
88
+ toReturn['channel'] = this.channel;
89
+ }
90
+ if (typeof this.originatedAt !== 'undefined') {
91
+ toReturn['originatedAt'] = this.originatedAt;
92
+ }
93
+ if (typeof this.type !== 'undefined') {
94
+ toReturn['type'] = this.type;
95
+ }
96
+ if (typeof this.metadata !== 'undefined' && this.metadata !== null) {
97
+ toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;
98
+ }
69
99
  return toReturn;
70
100
  }
71
101
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb252ZXJzYXRpb25fc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxLQUFLO0lBQ2QsY0FBYyxDQUFTO0lBQ3ZCLE9BQU8sQ0FBUztJQUNoQixVQUFVLENBQU87SUFDakIsUUFBUSxDQUFTO0lBQ2pCLFdBQVcsQ0FBUztJQUNwQixPQUFPLENBQU87SUFDZCxPQUFPLENBQU87SUFDZCxPQUFPLENBQU87SUFDZCxPQUFPLENBQVM7SUFFaEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDcEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ2xFLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBeUI7UUFDakMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1YsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsY0FBYyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUFBLENBQUM7UUFDbkcsSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUFBLENBQUM7UUFDOUUsSUFBSSxPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxVQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQUEsQ0FBQztRQUMzTCxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQUEsQ0FBQztRQUNqRixJQUFJLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQUEsQ0FBQztRQUMxRixJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLE9BQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUFBLENBQUM7UUFDekssSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxPQUFlLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFBQSxDQUFDO1FBQ3pLLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsT0FBZSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQUEsQ0FBQztRQUN6SyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQUEsQ0FBQztRQUM5RSxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW51bVN0cmluZ1RvVmFsdWU8RT4oZW51bVJlZjogYW55LCB2YWx1ZTogc3RyaW5nKTogRSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIHJldHVybiBlbnVtUmVmW3ZhbHVlXTtcbn1cblxuZXhwb3J0IGNsYXNzIEV2ZW50IGltcGxlbWVudHMgaS5FdmVudEludGVyZmFjZSB7XG4gICAgY29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICBldmVudElkOiBzdHJpbmc7XG4gICAgaGFwcGVuZWRBdDogRGF0ZTtcbiAgICBsYWJlbEtleTogc3RyaW5nO1xuICAgIGluaXRpYXRvcklkOiBzdHJpbmc7XG4gICAgY3JlYXRlZDogRGF0ZTtcbiAgICB1cGRhdGVkOiBEYXRlO1xuICAgIGRlbGV0ZWQ6IERhdGU7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRXZlbnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBFdmVudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5oYXBwZW5lZEF0KSB7bS5oYXBwZW5lZEF0ID0gbmV3IERhdGUocHJvdG8uaGFwcGVuZWRBdCk7fVxuICAgICAgICBpZiAocHJvdG8uY3JlYXRlZCkge20uY3JlYXRlZCA9IG5ldyBEYXRlKHByb3RvLmNyZWF0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLnVwZGF0ZWQpIHttLnVwZGF0ZWQgPSBuZXcgRGF0ZShwcm90by51cGRhdGVkKTt9XG4gICAgICAgIGlmIChwcm90by5kZWxldGVkKSB7bS5kZWxldGVkID0gbmV3IERhdGUocHJvdG8uZGVsZXRlZCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkV2ZW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udmVyc2F0aW9uSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2NvbnZlcnNhdGlvbklkJ10gPSB0aGlzLmNvbnZlcnNhdGlvbklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmV2ZW50SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2V2ZW50SWQnXSA9IHRoaXMuZXZlbnRJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5oYXBwZW5lZEF0ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmhhcHBlbmVkQXQgIT09IG51bGwpIHt0b1JldHVyblsnaGFwcGVuZWRBdCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5oYXBwZW5lZEF0ID8gKHRoaXMuaGFwcGVuZWRBdCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5oYXBwZW5lZEF0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmxhYmVsS2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydsYWJlbEtleSddID0gdGhpcy5sYWJlbEtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWF0b3JJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW5pdGlhdG9ySWQnXSA9IHRoaXMuaW5pdGlhdG9ySWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5jcmVhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ2NyZWF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuY3JlYXRlZCA/ICh0aGlzLmNyZWF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuY3JlYXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51cGRhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnVwZGF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsndXBkYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy51cGRhdGVkID8gKHRoaXMudXBkYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy51cGRhdGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRlbGV0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZGVsZXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydkZWxldGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmRlbGV0ZWQgPyAodGhpcy5kZWxldGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmRlbGV0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWVzc2FnZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWVzc2FnZSddID0gdGhpcy5tZXNzYWdlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb252ZXJzYXRpb25fc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLEtBQUs7SUFDZCxjQUFjLENBQVM7SUFDdkIsT0FBTyxDQUFTO0lBQ2hCLFVBQVUsQ0FBTztJQUNqQixRQUFRLENBQVM7SUFDakIsV0FBVyxDQUFTO0lBQ3BCLE9BQU8sQ0FBTztJQUNkLE9BQU8sQ0FBTztJQUNkLE9BQU8sQ0FBTztJQUNkLE9BQU8sQ0FBUztJQUNoQixPQUFPLENBQXdCO0lBQy9CLFlBQVksQ0FBcUI7SUFDakMsSUFBSSxDQUFjO0lBQ2xCLFFBQVEsQ0FBaUI7SUFFekIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDcEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ2xFLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lB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QUFJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQUEsQ0FBQztRQUNyRSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFFBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFBQSxDQUFDO1FBQy9LLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEtleVZhbHVlUGFpciB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW51bVN0cmluZ1RvVmFsdWU8RT4oZW51bVJlZjogYW55LCB2YWx1ZTogc3RyaW5nKTogRSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIHJldHVybiBlbnVtUmVmW3ZhbHVlXTtcbn1cblxuZXhwb3J0IGNsYXNzIEV2ZW50IGltcGxlbWVudHMgaS5FdmVudEludGVyZmFjZSB7XG4gICAgY29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICBldmVudElkOiBzdHJpbmc7XG4gICAgaGFwcGVuZWRBdDogRGF0ZTtcbiAgICBsYWJlbEtleTogc3RyaW5nO1xuICAgIGluaXRpYXRvcklkOiBzdHJpbmc7XG4gICAgY3JlYXRlZDogRGF0ZTtcbiAgICB1cGRhdGVkOiBEYXRlO1xuICAgIGRlbGV0ZWQ6IERhdGU7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIGNoYW5uZWw6IGUuQ29udmVyc2F0aW9uQ2hhbm5lbDtcbiAgICBvcmlnaW5hdGVkQXQ6IGUuUGxhdGZvcm1Mb2NhdGlvbjtcbiAgICB0eXBlOiBlLkV2ZW50VHlwZTtcbiAgICBtZXRhZGF0YTogS2V5VmFsdWVQYWlyW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBFdmVudCB7XG4gICAgICAgIGxldCBtID0gbmV3IEV2ZW50KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmhhcHBlbmVkQXQpIHttLmhhcHBlbmVkQXQgPSBuZXcgRGF0ZShwcm90by5oYXBwZW5lZEF0KTt9XG4gICAgICAgIGlmIChwcm90by5jcmVhdGVkKSB7bS5jcmVhdGVkID0gbmV3IERhdGUocHJvdG8uY3JlYXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8udXBkYXRlZCkge20udXBkYXRlZCA9IG5ldyBEYXRlKHByb3RvLnVwZGF0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLmRlbGV0ZWQpIHttLmRlbGV0ZWQgPSBuZXcgRGF0ZShwcm90by5kZWxldGVkKTt9XG4gICAgICAgIGlmIChwcm90by5jaGFubmVsKSB7bS5jaGFubmVsID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5Db252ZXJzYXRpb25DaGFubmVsPihlLkNvbnZlcnNhdGlvbkNoYW5uZWwsIHByb3RvLmNoYW5uZWwpO31cbiAgICAgICAgaWYgKHByb3RvLm9yaWdpbmF0ZWRBdCkge20ub3JpZ2luYXRlZEF0ID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5QbGF0Zm9ybUxvY2F0aW9uPihlLlBsYXRmb3JtTG9jYXRpb24sIHByb3RvLm9yaWdpbmF0ZWRBdCk7fVxuICAgICAgICBpZiAocHJvdG8udHlwZSkge20udHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuRXZlbnRUeXBlPihlLkV2ZW50VHlwZSwgcHJvdG8udHlwZSk7fVxuICAgICAgICBpZiAocHJvdG8ubWV0YWRhdGEpIHttLm1ldGFkYXRhID0gcHJvdG8ubWV0YWRhdGEubWFwKEtleVZhbHVlUGFpci5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5FdmVudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbnZlcnNhdGlvbklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjb252ZXJzYXRpb25JZCddID0gdGhpcy5jb252ZXJzYXRpb25JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5ldmVudElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydldmVudElkJ10gPSB0aGlzLmV2ZW50SWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaGFwcGVuZWRBdCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5oYXBwZW5lZEF0ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2hhcHBlbmVkQXQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuaGFwcGVuZWRBdCA/ICh0aGlzLmhhcHBlbmVkQXQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuaGFwcGVuZWRBdDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYWJlbEtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbGFiZWxLZXknXSA9IHRoaXMubGFiZWxLZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaW5pdGlhdG9ySWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2luaXRpYXRvcklkJ10gPSB0aGlzLmluaXRpYXRvcklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNyZWF0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY3JlYXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydjcmVhdGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmNyZWF0ZWQgPyAodGhpcy5jcmVhdGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNyZWF0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXBkYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy51cGRhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ3VwZGF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudXBkYXRlZCA/ICh0aGlzLnVwZGF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudXBkYXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kZWxldGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmRlbGV0ZWQgIT09IG51bGwpIHt0b1JldHVyblsnZGVsZXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5kZWxldGVkID8gKHRoaXMuZGVsZXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5kZWxldGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1lc3NhZ2UgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21lc3NhZ2UnXSA9IHRoaXMubWVzc2FnZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jaGFubmVsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjaGFubmVsJ10gPSB0aGlzLmNoYW5uZWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMub3JpZ2luYXRlZEF0ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydvcmlnaW5hdGVkQXQnXSA9IHRoaXMub3JpZ2luYXRlZEF0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnR5cGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3R5cGUnXSA9IHRoaXMudHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tZXRhZGF0YSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5tZXRhZGF0YSAhPT0gbnVsbCkge3RvUmV0dXJuWydtZXRhZGF0YSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5tZXRhZGF0YSA/ICh0aGlzLm1ldGFkYXRhIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLm1ldGFkYXRhO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19
@@ -4,9 +4,9 @@
4
4
  //
5
5
  // Objects Index.
6
6
  // *********************************
7
- export { NamespaceDetail, SubjectParticipant, } from './common';
7
+ export { KeyValuePair, NamespaceDetail, SubjectParticipant, } from './common';
8
8
  export { AIConfiguration, Conversation, ConversationKey, LastSeenByParticipant, LatestMessageSentTimeBySubjectParticipant, SubjectParticipantKey, } from './conversation';
9
- export { KeyValuePair, Message, ParticipantMessageStatus, SendStatus, } from './message';
9
+ export { Message, ParticipantMessageStatus, SendStatus, } from './message';
10
10
  export { Address, Participant, ParticipantKey, } from './participant';
11
11
  export { Access, } from './annotations';
12
12
  export { ConfigurationAIConfiguration, Configuration, ProductFeature, } from './configuration';
@@ -16,5 +16,5 @@ export { FieldMask, } from './field-mask';
16
16
  export { MessageTemplate, } from './message-template';
17
17
  export { AISystemMessage, GetAISystemMessageRequest, GetAISystemMessageResponse, ListAISystemMessagesRequest, ListAISystemMessagesResponse, UpsertAISystemMessageRequest, } from './aisystemmessage';
18
18
  export { Event, } from './event';
19
- export { AddConversationToConversationViewRequest, AddMultiParticipantsRequest, AddMultiParticipantsResponse, CapturedLead, ChannelAvailability, ChannelStatus, ConversationMessageCount, LookupConversationsResponseConversations, GetMultiConversationMessageCountResponseCountsEntry, CreateConversationRequest, CreateConversationResponse, CreateMessageTemplateRequest, CreateMessageTemplateResponse, CreateMultiMessagesRequest, CreateWidgetConversationRequest, CreateWidgetConversationResponse, CreateWidgetRequest, CreateWidgetResponse, MetadataDataEntry, DeleteConversationRequest, DeleteMessageRequest, DeleteMessageTemplateRequest, DeleteWidgetRequest, SearchConversationsResponseDetailedConversation, GetMultiConversationDetailsResponseDetailedConversation, EvaluateResponseRequest, GetAvailableChannelsForConversationRequest, GetAvailableChannelsForConversationResponse, GetConfigurationRequest, GetConfigurationResponse, GetConversationByKeyRequest, GetConversationByKeyResponse, GetConversationSummaryRequest, GetConversationSummaryResponse, GetConversationViewsRequest, GetConversationViewsResponse, GetMessageOptions, GetMessageRequest, GetMessageTemplateRequest, GetMessageTemplateResponse, GetMultiConfigurationRequest, GetMultiConfigurationResponse, GetMultiConversationDetailsRequest, GetMultiConversationDetailsResponse, GetMultiConversationMessageCountRequest, GetMultiConversationMessageCountResponse, GetMultiEventsRequest, GetMultiEventsResponse, GetMultiMessagesRequest, GetMultiMessagesResponse, GetMultiParticipantsRequest, GetMultiParticipantsResponse, GetMultiWidgetMessagesRequest, GetMultiWidgetMessagesResponse, GetOwnerEmailRequest, GetOwnerEmailResponse, GetParticipantsByKeyRequest, GetParticipantsByKeyResponse, GetWidgetConfigRequest, GetWidgetConfigResponse, GetWidgetConversationResponse, GetWidgetRequest, GetWidgetResponse, GetMessageTemplateRequestHydrationOptionsHydrationEntity, GetMessageTemplateResponseHydrationInformation, GetMessageTemplateRequestHydrationOptions, ListMessageTemplateRequest, ListMessageTemplateResponse, ListMessagesRequestListMessagesFilters, ListMessagesRequest, ListMessagesResponse, ListWidgetsRequestListWidgetsFilters, ListWidgetsRequest, ListWidgetsResponse, LookupConversationsRequestLookupConversationsFilters, LookupConversationsRequest, LookupConversationsResponse, Media, Metadata, ReceiveMessageRequestMetadataEntry, NewInboxLeadCapturedRequest, NewInboxLeadCapturedResponse, PagedRequestOptions, PagedResponseMetadata, ReceiveMessageRequest, RemoveConversationFromConversationViewRequest, SearchConversationsRequest, SearchConversationsResponse, SendMessageRequest, SendMessageResponse, SendWidgetMessageRequest, SendWidgetMessageResponse, SetLastSeenRequest, SetLastSeenResponse, UpdateConversationRequest, UpdateConversationResponse, UpdateMessageStatusRequest, UpdateMessageTemplateRequest, UpdateMessageTemplateResponse, UpdateWidgetRequest, UpdateWidgetResponse, UpsertConfigurationRequest, UpsertConfigurationResponse, UpsertProductFeatureRequest, UpsertProductFeatureResponse, } from './api';
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb252ZXJzYXRpb25fc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGlCQUFpQjtBQUNqQixvQ0FBb0M7QUFDcEMsT0FBTyxFQUNILGVBQWUsRUFDZixrQkFBa0IsR0FDckIsTUFBTSxVQUFVLENBQUM7QUFFbEIsT0FBTyxFQUNILGVBQWUsRUFDZixZQUFZLEVBQ1osZUFBZSxFQUNmLHFCQUFxQixFQUNyQix5Q0FBeUMsRUFDekMscUJBQXFCLEdBQ3hCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNILFlBQVksRUFDWixPQUFPLEVBQ1Asd0JBQXdCLEVBQ3hCLFVBQVUsR0FDYixNQUFNLFdBQVcsQ0FBQztBQUVuQixPQUFPLEVBQ0gsT0FBTyxFQUNQLFdBQVcsRUFDWCxjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDSCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNILDRCQUE0QixFQUM1QixhQUFhLEVBQ2IsY0FBYyxHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDSCxJQUFJLEdBQ1AsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0gsV0FBVyxFQUNYLE1BQU0sR0FDVCxNQUFNLFVBQVUsQ0FBQztBQUVsQixPQUFPLEVBQ0gsU0FBUyxHQUNaLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDSCxlQUFlLEdBQ2xCLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUNILGVBQWUsRUFDZix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsNEJBQTRCLEdBQy9CLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNILEtBQUssR0FDUixNQUFNLFNBQVMsQ0FBQztBQUVqQixPQUFPLEVBQ0gsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsWUFBWSxFQUNaLG1CQUFtQixFQUNuQixhQUFhLEVBQ2Isd0JBQXdCLEVBQ3hCLHdDQUF3QyxFQUN4QyxtREFBbUQsRUFDbkQseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QixvQkFBb0IsRUFDcEIsNEJBQTRCLEVBQzVCLG1CQUFtQixFQUNuQiwrQ0FBK0MsRUFDL0MsdURBQXVELEVBQ3ZELHVCQUF1QixFQUN2QiwwQ0FBMEMsRUFDMUMsMkNBQTJDLEVBQzNDLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsMkJBQTJCLEVBQzNCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0IsOEJBQThCLEVBQzlCLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isa0NBQWtDLEVBQ2xDLG1DQUFtQyxFQUNuQyx1Q0FBdUMsRUFDdkMsd0NBQXdDLEVBQ3hDLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QiwyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQiwyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsNkJBQTZCLEVBQzdCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsd0RBQXdELEVBQ3hELDhDQUE4QyxFQUM5Qyx5Q0FBeUMsRUFDekMsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQixzQ0FBc0MsRUFDdEMsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixvQ0FBb0MsRUFDcEMsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixvREFBb0QsRUFDcEQsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQixLQUFLLEVBQ0wsUUFBUSxFQUNSLGtDQUFrQyxFQUNsQywyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLDZDQUE2QyxFQUM3QywwQkFBMEIsRUFDMUIsMkJBQTJCLEVBQzNCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6QixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QiwwQkFBMEIsRUFDMUIsMEJBQTBCLEVBQzFCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0IsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQiwwQkFBMEIsRUFDMUIsMkJBQTJCLEVBQzNCLDJCQUEyQixFQUMzQiw0QkFBNEIsR0FDL0IsTUFBTSxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMgSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCB7XG4gICAgTmFtZXNwYWNlRGV0YWlsLFxuICAgIFN1YmplY3RQYXJ0aWNpcGFudCxcbn0gZnJvbSAnLi9jb21tb24nO1xuXG5leHBvcnQge1xuICAgIEFJQ29uZmlndXJhdGlvbixcbiAgICBDb252ZXJzYXRpb24sXG4gICAgQ29udmVyc2F0aW9uS2V5LFxuICAgIExhc3RTZWVuQnlQYXJ0aWNpcGFudCxcbiAgICBMYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCxcbiAgICBTdWJqZWN0UGFydGljaXBhbnRLZXksXG59IGZyb20gJy4vY29udmVyc2F0aW9uJztcblxuZXhwb3J0IHtcbiAgICBLZXlWYWx1ZVBhaXIsXG4gICAgTWVzc2FnZSxcbiAgICBQYXJ0aWNpcGFudE1lc3NhZ2VTdGF0dXMsXG4gICAgU2VuZFN0YXR1cyxcbn0gZnJvbSAnLi9tZXNzYWdlJztcblxuZXhwb3J0IHtcbiAgICBBZGRyZXNzLFxuICAgIFBhcnRpY2lwYW50LFxuICAgIFBhcnRpY2lwYW50S2V5LFxufSBmcm9tICcuL3BhcnRpY2lwYW50JztcblxuZXhwb3J0IHtcbiAgICBBY2Nlc3MsXG59IGZyb20gJy4vYW5ub3RhdGlvbnMnO1xuXG5leHBvcnQge1xuICAgIENvbmZpZ3VyYXRpb25BSUNvbmZpZ3VyYXRpb24sXG4gICAgQ29uZmlndXJhdGlvbixcbiAgICBQcm9kdWN0RmVhdHVyZSxcbn0gZnJvbSAnLi9jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IHtcbiAgICBWaWV3LFxufSBmcm9tICcuL2NvbnZlcnNhdGlvbi12aWV3JztcblxuZXhwb3J0IHtcbiAgICBEYXRhU291cmNlcyxcbiAgICBXaWRnZXQsXG59IGZyb20gJy4vd2lkZ2V0JztcblxuZXhwb3J0IHtcbiAgICBGaWVsZE1hc2ssXG59IGZyb20gJy4vZmllbGQtbWFzayc7XG5cbmV4cG9ydCB7XG4gICAgTWVzc2FnZVRlbXBsYXRlLFxufSBmcm9tICcuL21lc3NhZ2UtdGVtcGxhdGUnO1xuXG5leHBvcnQge1xuICAgIEFJU3lzdGVtTWVzc2FnZSxcbiAgICBHZXRBSVN5c3RlbU1lc3NhZ2VSZXF1ZXN0LFxuICAgIEdldEFJU3lzdGVtTWVzc2FnZVJlc3BvbnNlLFxuICAgIExpc3RBSVN5c3RlbU1lc3NhZ2VzUmVxdWVzdCxcbiAgICBMaXN0QUlTeXN0ZW1NZXNzYWdlc1Jlc3BvbnNlLFxuICAgIFVwc2VydEFJU3lzdGVtTWVzc2FnZVJlcXVlc3QsXG59IGZyb20gJy4vYWlzeXN0ZW1tZXNzYWdlJztcblxuZXhwb3J0IHtcbiAgICBFdmVudCxcbn0gZnJvbSAnLi9ldmVudCc7XG5cbmV4cG9ydCB7XG4gICAgQWRkQ29udmVyc2F0aW9uVG9Db252ZXJzYXRpb25WaWV3UmVxdWVzdCxcbiAgICBBZGRNdWx0aVBhcnRpY2lwYW50c1JlcXVlc3QsXG4gICAgQWRkTXVsdGlQYXJ0aWNpcGFudHNSZXNwb25zZSxcbiAgICBDYXB0dXJlZExlYWQsXG4gICAgQ2hhbm5lbEF2YWlsYWJpbGl0eSxcbiAgICBDaGFubmVsU3RhdHVzLFxuICAgIENvbnZlcnNhdGlvbk1lc3NhZ2VDb3VudCxcbiAgICBMb29rdXBDb252ZXJzYXRpb25zUmVzcG9uc2VDb252ZXJzYXRpb25zLFxuICAgIEdldE11bHRpQ29udmVyc2F0aW9uTWVzc2FnZUNvdW50UmVzcG9uc2VDb3VudHNFbnRyeSxcbiAgICBDcmVhdGVDb252ZXJzYXRpb25SZXF1ZXN0LFxuICAgIENyZWF0ZUNvbnZlcnNhdGlvblJlc3BvbnNlLFxuICAgIENyZWF0ZU1lc3NhZ2VUZW1wbGF0ZVJlcXVlc3QsXG4gICAgQ3JlYXRlTWVzc2FnZVRlbXBsYXRlUmVzcG9uc2UsXG4gICAgQ3JlYXRlTXVsdGlNZXNzYWdlc1JlcXVlc3QsXG4gICAgQ3JlYXRlV2lkZ2V0Q29udmVyc2F0aW9uUmVxdWVzdCxcbiAgICBDcmVhdGVXaWRnZXRDb252ZXJzYXRpb25SZXNwb25zZSxcbiAgICBDcmVhdGVXaWRnZXRSZXF1ZXN0LFxuICAgIENyZWF0ZVdpZGdldFJlc3BvbnNlLFxuICAgIE1ldGFkYXRhRGF0YUVudHJ5LFxuICAgIERlbGV0ZUNvbnZlcnNhdGlvblJlcXVlc3QsXG4gICAgRGVsZXRlTWVzc2FnZVJlcXVlc3QsXG4gICAgRGVsZXRlTWVzc2FnZVRlbXBsYXRlUmVxdWVzdCxcbiAgICBEZWxldGVXaWRnZXRSZXF1ZXN0LFxuICAgIFNlYXJjaENvbnZlcnNhdGlvbnNSZXNwb25zZURldGFpbGVkQ29udmVyc2F0aW9uLFxuICAgIEdldE11bHRpQ29udmVyc2F0aW9uRGV0YWlsc1Jlc3BvbnNlRGV0YWlsZWRDb252ZXJzYXRpb24sXG4gICAgRXZhbHVhdGVSZXNwb25zZVJlcXVlc3QsXG4gICAgR2V0QXZhaWxhYmxlQ2hhbm5lbHNGb3JDb252ZXJzYXRpb25SZXF1ZXN0LFxuICAgIEdldEF2YWlsYWJsZUNoYW5uZWxzRm9yQ29udmVyc2F0aW9uUmVzcG9uc2UsXG4gICAgR2V0Q29uZmlndXJhdGlvblJlcXVlc3QsXG4gICAgR2V0Q29uZmlndXJhdGlvblJlc3BvbnNlLFxuICAgIEdldENvbnZlcnNhdGlvbkJ5S2V5UmVxdWVzdCxcbiAgICBHZXRDb252ZXJzYXRpb25CeUtleVJlc3BvbnNlLFxuICAgIEdldENvbnZlcnNhdGlvblN1bW1hcnlSZXF1ZXN0LFxuICAgIEdldENvbnZlcnNhdGlvblN1bW1hcnlSZXNwb25zZSxcbiAgICBHZXRDb252ZXJzYXRpb25WaWV3c1JlcXVlc3QsXG4gICAgR2V0Q29udmVyc2F0aW9uVmlld3NSZXNwb25zZSxcbiAgICBHZXRNZXNzYWdlT3B0aW9ucyxcbiAgICBHZXRNZXNzYWdlUmVxdWVzdCxcbiAgICBHZXRNZXNzYWdlVGVtcGxhdGVSZXF1ZXN0LFxuICAgIEdldE1lc3NhZ2VUZW1wbGF0ZVJlc3BvbnNlLFxuICAgIEdldE11bHRpQ29uZmlndXJhdGlvblJlcXVlc3QsXG4gICAgR2V0TXVsdGlDb25maWd1cmF0aW9uUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlDb252ZXJzYXRpb25EZXRhaWxzUmVxdWVzdCxcbiAgICBHZXRNdWx0aUNvbnZlcnNhdGlvbkRldGFpbHNSZXNwb25zZSxcbiAgICBHZXRNdWx0aUNvbnZlcnNhdGlvbk1lc3NhZ2VDb3VudFJlcXVlc3QsXG4gICAgR2V0TXVsdGlDb252ZXJzYXRpb25NZXNzYWdlQ291bnRSZXNwb25zZSxcbiAgICBHZXRNdWx0aUV2ZW50c1JlcXVlc3QsXG4gICAgR2V0TXVsdGlFdmVudHNSZXNwb25zZSxcbiAgICBHZXRNdWx0aU1lc3NhZ2VzUmVxdWVzdCxcbiAgICBHZXRNdWx0aU1lc3NhZ2VzUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlQYXJ0aWNpcGFudHNSZXF1ZXN0LFxuICAgIEdldE11bHRpUGFydGljaXBhbnRzUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlXaWRnZXRNZXNzYWdlc1JlcXVlc3QsXG4gICAgR2V0TXVsdGlXaWRnZXRNZXNzYWdlc1Jlc3BvbnNlLFxuICAgIEdldE93bmVyRW1haWxSZXF1ZXN0LFxuICAgIEdldE93bmVyRW1haWxSZXNwb25zZSxcbiAgICBHZXRQYXJ0aWNpcGFudHNCeUtleVJlcXVlc3QsXG4gICAgR2V0UGFydGljaXBhbnRzQnlLZXlSZXNwb25zZSxcbiAgICBHZXRXaWRnZXRDb25maWdSZXF1ZXN0LFxuICAgIEdldFdpZGdldENvbmZpZ1Jlc3BvbnNlLFxuICAgIEdldFdpZGdldENvbnZlcnNhdGlvblJlc3BvbnNlLFxuICAgIEdldFdpZGdldFJlcXVlc3QsXG4gICAgR2V0V2lkZ2V0UmVzcG9uc2UsXG4gICAgR2V0TWVzc2FnZVRlbXBsYXRlUmVxdWVzdEh5ZHJhdGlvbk9wdGlvbnNIeWRyYXRpb25FbnRpdHksXG4gICAgR2V0TWVzc2FnZVRlbXBsYXRlUmVzcG9uc2VIeWRyYXRpb25JbmZvcm1hdGlvbixcbiAgICBHZXRNZXNzYWdlVGVtcGxhdGVSZXF1ZXN0SHlkcmF0aW9uT3B0aW9ucyxcbiAgICBMaXN0TWVzc2FnZVRlbXBsYXRlUmVxdWVzdCxcbiAgICBMaXN0TWVzc2FnZVRlbXBsYXRlUmVzcG9uc2UsXG4gICAgTGlzdE1lc3NhZ2VzUmVxdWVzdExpc3RNZXNzYWdlc0ZpbHRlcnMsXG4gICAgTGlzdE1lc3NhZ2VzUmVxdWVzdCxcbiAgICBMaXN0TWVzc2FnZXNSZXNwb25zZSxcbiAgICBMaXN0V2lkZ2V0c1JlcXVlc3RMaXN0V2lkZ2V0c0ZpbHRlcnMsXG4gICAgTGlzdFdpZGdldHNSZXF1ZXN0LFxuICAgIExpc3RXaWRnZXRzUmVzcG9uc2UsXG4gICAgTG9va3VwQ29udmVyc2F0aW9uc1JlcXVlc3RMb29rdXBDb252ZXJzYXRpb25zRmlsdGVycyxcbiAgICBMb29rdXBDb252ZXJzYXRpb25zUmVxdWVzdCxcbiAgICBMb29rdXBDb252ZXJzYXRpb25zUmVzcG9uc2UsXG4gICAgTWVkaWEsXG4gICAgTWV0YWRhdGEsXG4gICAgUmVjZWl2ZU1lc3NhZ2VSZXF1ZXN0TWV0YWRhdGFFbnRyeSxcbiAgICBOZXdJbmJveExlYWRDYXB0dXJlZFJlcXVlc3QsXG4gICAgTmV3SW5ib3hMZWFkQ2FwdHVyZWRSZXNwb25zZSxcbiAgICBQYWdlZFJlcXVlc3RPcHRpb25zLFxuICAgIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSxcbiAgICBSZWNlaXZlTWVzc2FnZVJlcXVlc3QsXG4gICAgUmVtb3ZlQ29udmVyc2F0aW9uRnJvbUNvbnZlcnNhdGlvblZpZXdSZXF1ZXN0LFxuICAgIFNlYXJjaENvbnZlcnNhdGlvbnNSZXF1ZXN0LFxuICAgIFNlYXJjaENvbnZlcnNhdGlvbnNSZXNwb25zZSxcbiAgICBTZW5kTWVzc2FnZVJlcXVlc3QsXG4gICAgU2VuZE1lc3NhZ2VSZXNwb25zZSxcbiAgICBTZW5kV2lkZ2V0TWVzc2FnZVJlcXVlc3QsXG4gICAgU2VuZFdpZGdldE1lc3NhZ2VSZXNwb25zZSxcbiAgICBTZXRMYXN0U2VlblJlcXVlc3QsXG4gICAgU2V0TGFzdFNlZW5SZXNwb25zZSxcbiAgICBVcGRhdGVDb252ZXJzYXRpb25SZXF1ZXN0LFxuICAgIFVwZGF0ZUNvbnZlcnNhdGlvblJlc3BvbnNlLFxuICAgIFVwZGF0ZU1lc3NhZ2VTdGF0dXNSZXF1ZXN0LFxuICAgIFVwZGF0ZU1lc3NhZ2VUZW1wbGF0ZVJlcXVlc3QsXG4gICAgVXBkYXRlTWVzc2FnZVRlbXBsYXRlUmVzcG9uc2UsXG4gICAgVXBkYXRlV2lkZ2V0UmVxdWVzdCxcbiAgICBVcGRhdGVXaWRnZXRSZXNwb25zZSxcbiAgICBVcHNlcnRDb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICBVcHNlcnRDb25maWd1cmF0aW9uUmVzcG9uc2UsXG4gICAgVXBzZXJ0UHJvZHVjdEZlYXR1cmVSZXF1ZXN0LFxuICAgIFVwc2VydFByb2R1Y3RGZWF0dXJlUmVzcG9uc2UsXG59IGZyb20gJy4vYXBpJztcblxuIl19
19
+ export { AddConversationToConversationViewRequest, AddMultiParticipantsRequest, AddMultiParticipantsResponse, CapturedLead, ChannelAvailability, ChannelStatus, ConversationMessageCount, LookupConversationsResponseConversations, GetMultiConversationMessageCountResponseCountsEntry, CreateConversationRequest, CreateConversationResponse, CreateMessageTemplateRequest, CreateMessageTemplateResponse, CreateMultiMessagesRequest, CreateWidgetConversationRequest, CreateWidgetConversationResponse, CreateWidgetRequest, CreateWidgetResponse, MetadataDataEntry, DeleteConversationRequest, DeleteMessageRequest, DeleteMessageTemplateRequest, DeleteWidgetRequest, SearchConversationsResponseDetailedConversation, GetMultiConversationDetailsResponseDetailedConversation, EvaluateResponseRequest, GetAvailableChannelsForConversationRequest, GetAvailableChannelsForConversationResponse, GetConfigurationRequest, GetConfigurationResponse, GetConversationByKeyRequest, GetConversationByKeyResponse, GetConversationSummaryRequest, GetConversationSummaryResponse, GetConversationViewsRequest, GetConversationViewsResponse, GetMessageOptions, GetMessageRequest, GetMessageTemplateRequest, GetMessageTemplateResponse, GetMultiConfigurationRequest, GetMultiConfigurationResponse, GetMultiConversationDetailsRequest, GetMultiConversationDetailsResponse, GetMultiConversationMessageCountRequest, GetMultiConversationMessageCountResponse, GetMultiEventsRequest, GetMultiEventsResponse, GetMultiMessagesRequest, GetMultiMessagesResponse, GetMultiParticipantsRequest, GetMultiParticipantsResponse, GetMultiWidgetMessagesRequest, GetMultiWidgetMessagesResponse, GetOwnerEmailRequest, GetOwnerEmailResponse, GetParticipantsByKeyRequest, GetParticipantsByKeyResponse, GetWidgetConfigRequest, GetWidgetConfigResponse, GetWidgetConversationResponse, GetWidgetRequest, GetWidgetResponse, GetMessageTemplateRequestHydrationOptionsHydrationEntity, GetMessageTemplateResponseHydrationInformation, GetMessageTemplateRequestHydrationOptions, InjectMessageRequest, ListMessageTemplateRequest, ListMessageTemplateResponse, ListMessagesRequestListMessagesFilters, ListMessagesRequest, ListMessagesResponse, ListWidgetsRequestListWidgetsFilters, ListWidgetsRequest, ListWidgetsResponse, LookupConversationsRequestLookupConversationsFilters, LookupConversationsRequest, LookupConversationsResponse, Media, Metadata, InjectMessageRequestMetadataEntry, ReceiveMessageRequestMetadataEntry, NewInboxLeadCapturedRequest, NewInboxLeadCapturedResponse, PagedRequestOptions, PagedResponseMetadata, ReceiveMessageRequest, RemoveConversationFromConversationViewRequest, SearchConversationsRequest, SearchConversationsResponse, SendMessageRequest, SendMessageResponse, SendWidgetMessageRequest, SendWidgetMessageResponse, SetLastSeenRequest, SetLastSeenResponse, UpdateConversationRequest, UpdateConversationResponse, UpdateMessageStatusRequest, UpdateMessageTemplateRequest, UpdateMessageTemplateResponse, UpdateWidgetRequest, UpdateWidgetResponse, UpsertConfigurationRequest, UpsertConfigurationResponse, UpsertProductFeatureRequest, UpsertProductFeatureResponse, } from './api';
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb252ZXJzYXRpb25fc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGlCQUFpQjtBQUNqQixvQ0FBb0M7QUFDcEMsT0FBTyxFQUNILFlBQVksRUFDWixlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFDSCxlQUFlLEVBQ2YsWUFBWSxFQUNaLGVBQWUsRUFDZixxQkFBcUIsRUFDckIseUNBQXlDLEVBQ3pDLHFCQUFxQixHQUN4QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDSCxPQUFPLEVBQ1Asd0JBQXdCLEVBQ3hCLFVBQVUsR0FDYixNQUFNLFdBQVcsQ0FBQztBQUVuQixPQUFPLEVBQ0gsT0FBTyxFQUNQLFdBQVcsRUFDWCxjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDSCxNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNILDRCQUE0QixFQUM1QixhQUFhLEVBQ2IsY0FBYyxHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDSCxJQUFJLEdBQ1AsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0gsV0FBVyxFQUNYLE1BQU0sR0FDVCxNQUFNLFVBQVUsQ0FBQztBQUVsQixPQUFPLEVBQ0gsU0FBUyxHQUNaLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFDSCxlQUFlLEdBQ2xCLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUNILGVBQWUsRUFDZix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsNEJBQTRCLEdBQy9CLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNILEtBQUssR0FDUixNQUFNLFNBQVMsQ0FBQztBQUVqQixPQUFPLEVBQ0gsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsWUFBWSxFQUNaLG1CQUFtQixFQUNuQixhQUFhLEVBQ2Isd0JBQXdCLEVBQ3hCLHdDQUF3QyxFQUN4QyxtREFBbUQsRUFDbkQseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QixvQkFBb0IsRUFDcEIsNEJBQTRCLEVBQzVCLG1CQUFtQixFQUNuQiwrQ0FBK0MsRUFDL0MsdURBQXVELEVBQ3ZELHVCQUF1QixFQUN2QiwwQ0FBMEMsRUFDMUMsMkNBQTJDLEVBQzNDLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsMkJBQTJCLEVBQzNCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0IsOEJBQThCLEVBQzlCLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isa0NBQWtDLEVBQ2xDLG1DQUFtQyxFQUNuQyx1Q0FBdUMsRUFDdkMsd0NBQXdDLEVBQ3hDLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QiwyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQiwyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsNkJBQTZCLEVBQzdCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsd0RBQXdELEVBQ3hELDhDQUE4QyxFQUM5Qyx5Q0FBeUMsRUFDekMsb0JBQW9CLEVBQ3BCLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0Isc0NBQXNDLEVBQ3RDLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsb0NBQW9DLEVBQ3BDLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsb0RBQW9ELEVBQ3BELDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsS0FBSyxFQUNMLFFBQVEsRUFDUixpQ0FBaUMsRUFDakMsa0NBQWtDLEVBQ2xDLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsbUJBQW1CLEVBQ25CLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsNkNBQTZDLEVBQzdDLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0Isa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3QixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLDRCQUE0QixHQUMvQixNQUFNLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cyBJbmRleC5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuZXhwb3J0IHtcbiAgICBLZXlWYWx1ZVBhaXIsXG4gICAgTmFtZXNwYWNlRGV0YWlsLFxuICAgIFN1YmplY3RQYXJ0aWNpcGFudCxcbn0gZnJvbSAnLi9jb21tb24nO1xuXG5leHBvcnQge1xuICAgIEFJQ29uZmlndXJhdGlvbixcbiAgICBDb252ZXJzYXRpb24sXG4gICAgQ29udmVyc2F0aW9uS2V5LFxuICAgIExhc3RTZWVuQnlQYXJ0aWNpcGFudCxcbiAgICBMYXRlc3RNZXNzYWdlU2VudFRpbWVCeVN1YmplY3RQYXJ0aWNpcGFudCxcbiAgICBTdWJqZWN0UGFydGljaXBhbnRLZXksXG59IGZyb20gJy4vY29udmVyc2F0aW9uJztcblxuZXhwb3J0IHtcbiAgICBNZXNzYWdlLFxuICAgIFBhcnRpY2lwYW50TWVzc2FnZVN0YXR1cyxcbiAgICBTZW5kU3RhdHVzLFxufSBmcm9tICcuL21lc3NhZ2UnO1xuXG5leHBvcnQge1xuICAgIEFkZHJlc3MsXG4gICAgUGFydGljaXBhbnQsXG4gICAgUGFydGljaXBhbnRLZXksXG59IGZyb20gJy4vcGFydGljaXBhbnQnO1xuXG5leHBvcnQge1xuICAgIEFjY2Vzcyxcbn0gZnJvbSAnLi9hbm5vdGF0aW9ucyc7XG5cbmV4cG9ydCB7XG4gICAgQ29uZmlndXJhdGlvbkFJQ29uZmlndXJhdGlvbixcbiAgICBDb25maWd1cmF0aW9uLFxuICAgIFByb2R1Y3RGZWF0dXJlLFxufSBmcm9tICcuL2NvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQge1xuICAgIFZpZXcsXG59IGZyb20gJy4vY29udmVyc2F0aW9uLXZpZXcnO1xuXG5leHBvcnQge1xuICAgIERhdGFTb3VyY2VzLFxuICAgIFdpZGdldCxcbn0gZnJvbSAnLi93aWRnZXQnO1xuXG5leHBvcnQge1xuICAgIEZpZWxkTWFzayxcbn0gZnJvbSAnLi9maWVsZC1tYXNrJztcblxuZXhwb3J0IHtcbiAgICBNZXNzYWdlVGVtcGxhdGUsXG59IGZyb20gJy4vbWVzc2FnZS10ZW1wbGF0ZSc7XG5cbmV4cG9ydCB7XG4gICAgQUlTeXN0ZW1NZXNzYWdlLFxuICAgIEdldEFJU3lzdGVtTWVzc2FnZVJlcXVlc3QsXG4gICAgR2V0QUlTeXN0ZW1NZXNzYWdlUmVzcG9uc2UsXG4gICAgTGlzdEFJU3lzdGVtTWVzc2FnZXNSZXF1ZXN0LFxuICAgIExpc3RBSVN5c3RlbU1lc3NhZ2VzUmVzcG9uc2UsXG4gICAgVXBzZXJ0QUlTeXN0ZW1NZXNzYWdlUmVxdWVzdCxcbn0gZnJvbSAnLi9haXN5c3RlbW1lc3NhZ2UnO1xuXG5leHBvcnQge1xuICAgIEV2ZW50LFxufSBmcm9tICcuL2V2ZW50JztcblxuZXhwb3J0IHtcbiAgICBBZGRDb252ZXJzYXRpb25Ub0NvbnZlcnNhdGlvblZpZXdSZXF1ZXN0LFxuICAgIEFkZE11bHRpUGFydGljaXBhbnRzUmVxdWVzdCxcbiAgICBBZGRNdWx0aVBhcnRpY2lwYW50c1Jlc3BvbnNlLFxuICAgIENhcHR1cmVkTGVhZCxcbiAgICBDaGFubmVsQXZhaWxhYmlsaXR5LFxuICAgIENoYW5uZWxTdGF0dXMsXG4gICAgQ29udmVyc2F0aW9uTWVzc2FnZUNvdW50LFxuICAgIExvb2t1cENvbnZlcnNhdGlvbnNSZXNwb25zZUNvbnZlcnNhdGlvbnMsXG4gICAgR2V0TXVsdGlDb252ZXJzYXRpb25NZXNzYWdlQ291bnRSZXNwb25zZUNvdW50c0VudHJ5LFxuICAgIENyZWF0ZUNvbnZlcnNhdGlvblJlcXVlc3QsXG4gICAgQ3JlYXRlQ29udmVyc2F0aW9uUmVzcG9uc2UsXG4gICAgQ3JlYXRlTWVzc2FnZVRlbXBsYXRlUmVxdWVzdCxcbiAgICBDcmVhdGVNZXNzYWdlVGVtcGxhdGVSZXNwb25zZSxcbiAgICBDcmVhdGVNdWx0aU1lc3NhZ2VzUmVxdWVzdCxcbiAgICBDcmVhdGVXaWRnZXRDb252ZXJzYXRpb25SZXF1ZXN0LFxuICAgIENyZWF0ZVdpZGdldENvbnZlcnNhdGlvblJlc3BvbnNlLFxuICAgIENyZWF0ZVdpZGdldFJlcXVlc3QsXG4gICAgQ3JlYXRlV2lkZ2V0UmVzcG9uc2UsXG4gICAgTWV0YWRhdGFEYXRhRW50cnksXG4gICAgRGVsZXRlQ29udmVyc2F0aW9uUmVxdWVzdCxcbiAgICBEZWxldGVNZXNzYWdlUmVxdWVzdCxcbiAgICBEZWxldGVNZXNzYWdlVGVtcGxhdGVSZXF1ZXN0LFxuICAgIERlbGV0ZVdpZGdldFJlcXVlc3QsXG4gICAgU2VhcmNoQ29udmVyc2F0aW9uc1Jlc3BvbnNlRGV0YWlsZWRDb252ZXJzYXRpb24sXG4gICAgR2V0TXVsdGlDb252ZXJzYXRpb25EZXRhaWxzUmVzcG9uc2VEZXRhaWxlZENvbnZlcnNhdGlvbixcbiAgICBFdmFsdWF0ZVJlc3BvbnNlUmVxdWVzdCxcbiAgICBHZXRBdmFpbGFibGVDaGFubmVsc0ZvckNvbnZlcnNhdGlvblJlcXVlc3QsXG4gICAgR2V0QXZhaWxhYmxlQ2hhbm5lbHNGb3JDb252ZXJzYXRpb25SZXNwb25zZSxcbiAgICBHZXRDb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICBHZXRDb25maWd1cmF0aW9uUmVzcG9uc2UsXG4gICAgR2V0Q29udmVyc2F0aW9uQnlLZXlSZXF1ZXN0LFxuICAgIEdldENvbnZlcnNhdGlvbkJ5S2V5UmVzcG9uc2UsXG4gICAgR2V0Q29udmVyc2F0aW9uU3VtbWFyeVJlcXVlc3QsXG4gICAgR2V0Q29udmVyc2F0aW9uU3VtbWFyeVJlc3BvbnNlLFxuICAgIEdldENvbnZlcnNhdGlvblZpZXdzUmVxdWVzdCxcbiAgICBHZXRDb252ZXJzYXRpb25WaWV3c1Jlc3BvbnNlLFxuICAgIEdldE1lc3NhZ2VPcHRpb25zLFxuICAgIEdldE1lc3NhZ2VSZXF1ZXN0LFxuICAgIEdldE1lc3NhZ2VUZW1wbGF0ZVJlcXVlc3QsXG4gICAgR2V0TWVzc2FnZVRlbXBsYXRlUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlDb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICBHZXRNdWx0aUNvbmZpZ3VyYXRpb25SZXNwb25zZSxcbiAgICBHZXRNdWx0aUNvbnZlcnNhdGlvbkRldGFpbHNSZXF1ZXN0LFxuICAgIEdldE11bHRpQ29udmVyc2F0aW9uRGV0YWlsc1Jlc3BvbnNlLFxuICAgIEdldE11bHRpQ29udmVyc2F0aW9uTWVzc2FnZUNvdW50UmVxdWVzdCxcbiAgICBHZXRNdWx0aUNvbnZlcnNhdGlvbk1lc3NhZ2VDb3VudFJlc3BvbnNlLFxuICAgIEdldE11bHRpRXZlbnRzUmVxdWVzdCxcbiAgICBHZXRNdWx0aUV2ZW50c1Jlc3BvbnNlLFxuICAgIEdldE11bHRpTWVzc2FnZXNSZXF1ZXN0LFxuICAgIEdldE11bHRpTWVzc2FnZXNSZXNwb25zZSxcbiAgICBHZXRNdWx0aVBhcnRpY2lwYW50c1JlcXVlc3QsXG4gICAgR2V0TXVsdGlQYXJ0aWNpcGFudHNSZXNwb25zZSxcbiAgICBHZXRNdWx0aVdpZGdldE1lc3NhZ2VzUmVxdWVzdCxcbiAgICBHZXRNdWx0aVdpZGdldE1lc3NhZ2VzUmVzcG9uc2UsXG4gICAgR2V0T3duZXJFbWFpbFJlcXVlc3QsXG4gICAgR2V0T3duZXJFbWFpbFJlc3BvbnNlLFxuICAgIEdldFBhcnRpY2lwYW50c0J5S2V5UmVxdWVzdCxcbiAgICBHZXRQYXJ0aWNpcGFudHNCeUtleVJlc3BvbnNlLFxuICAgIEdldFdpZGdldENvbmZpZ1JlcXVlc3QsXG4gICAgR2V0V2lkZ2V0Q29uZmlnUmVzcG9uc2UsXG4gICAgR2V0V2lkZ2V0Q29udmVyc2F0aW9uUmVzcG9uc2UsXG4gICAgR2V0V2lkZ2V0UmVxdWVzdCxcbiAgICBHZXRXaWRnZXRSZXNwb25zZSxcbiAgICBHZXRNZXNzYWdlVGVtcGxhdGVSZXF1ZXN0SHlkcmF0aW9uT3B0aW9uc0h5ZHJhdGlvbkVudGl0eSxcbiAgICBHZXRNZXNzYWdlVGVtcGxhdGVSZXNwb25zZUh5ZHJhdGlvbkluZm9ybWF0aW9uLFxuICAgIEdldE1lc3NhZ2VUZW1wbGF0ZVJlcXVlc3RIeWRyYXRpb25PcHRpb25zLFxuICAgIEluamVjdE1lc3NhZ2VSZXF1ZXN0LFxuICAgIExpc3RNZXNzYWdlVGVtcGxhdGVSZXF1ZXN0LFxuICAgIExpc3RNZXNzYWdlVGVtcGxhdGVSZXNwb25zZSxcbiAgICBMaXN0TWVzc2FnZXNSZXF1ZXN0TGlzdE1lc3NhZ2VzRmlsdGVycyxcbiAgICBMaXN0TWVzc2FnZXNSZXF1ZXN0LFxuICAgIExpc3RNZXNzYWdlc1Jlc3BvbnNlLFxuICAgIExpc3RXaWRnZXRzUmVxdWVzdExpc3RXaWRnZXRzRmlsdGVycyxcbiAgICBMaXN0V2lkZ2V0c1JlcXVlc3QsXG4gICAgTGlzdFdpZGdldHNSZXNwb25zZSxcbiAgICBMb29rdXBDb252ZXJzYXRpb25zUmVxdWVzdExvb2t1cENvbnZlcnNhdGlvbnNGaWx0ZXJzLFxuICAgIExvb2t1cENvbnZlcnNhdGlvbnNSZXF1ZXN0LFxuICAgIExvb2t1cENvbnZlcnNhdGlvbnNSZXNwb25zZSxcbiAgICBNZWRpYSxcbiAgICBNZXRhZGF0YSxcbiAgICBJbmplY3RNZXNzYWdlUmVxdWVzdE1ldGFkYXRhRW50cnksXG4gICAgUmVjZWl2ZU1lc3NhZ2VSZXF1ZXN0TWV0YWRhdGFFbnRyeSxcbiAgICBOZXdJbmJveExlYWRDYXB0dXJlZFJlcXVlc3QsXG4gICAgTmV3SW5ib3hMZWFkQ2FwdHVyZWRSZXNwb25zZSxcbiAgICBQYWdlZFJlcXVlc3RPcHRpb25zLFxuICAgIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSxcbiAgICBSZWNlaXZlTWVzc2FnZVJlcXVlc3QsXG4gICAgUmVtb3ZlQ29udmVyc2F0aW9uRnJvbUNvbnZlcnNhdGlvblZpZXdSZXF1ZXN0LFxuICAgIFNlYXJjaENvbnZlcnNhdGlvbnNSZXF1ZXN0LFxuICAgIFNlYXJjaENvbnZlcnNhdGlvbnNSZXNwb25zZSxcbiAgICBTZW5kTWVzc2FnZVJlcXVlc3QsXG4gICAgU2VuZE1lc3NhZ2VSZXNwb25zZSxcbiAgICBTZW5kV2lkZ2V0TWVzc2FnZVJlcXVlc3QsXG4gICAgU2VuZFdpZGdldE1lc3NhZ2VSZXNwb25zZSxcbiAgICBTZXRMYXN0U2VlblJlcXVlc3QsXG4gICAgU2V0TGFzdFNlZW5SZXNwb25zZSxcbiAgICBVcGRhdGVDb252ZXJzYXRpb25SZXF1ZXN0LFxuICAgIFVwZGF0ZUNvbnZlcnNhdGlvblJlc3BvbnNlLFxuICAgIFVwZGF0ZU1lc3NhZ2VTdGF0dXNSZXF1ZXN0LFxuICAgIFVwZGF0ZU1lc3NhZ2VUZW1wbGF0ZVJlcXVlc3QsXG4gICAgVXBkYXRlTWVzc2FnZVRlbXBsYXRlUmVzcG9uc2UsXG4gICAgVXBkYXRlV2lkZ2V0UmVxdWVzdCxcbiAgICBVcGRhdGVXaWRnZXRSZXNwb25zZSxcbiAgICBVcHNlcnRDb25maWd1cmF0aW9uUmVxdWVzdCxcbiAgICBVcHNlcnRDb25maWd1cmF0aW9uUmVzcG9uc2UsXG4gICAgVXBzZXJ0UHJvZHVjdEZlYXR1cmVSZXF1ZXN0LFxuICAgIFVwc2VydFByb2R1Y3RGZWF0dXJlUmVzcG9uc2UsXG59IGZyb20gJy4vYXBpJztcblxuIl19
@@ -1,3 +1,4 @@
1
+ import { KeyValuePair } from './common';
1
2
  import * as e from '../enums';
2
3
  export function enumStringToValue(enumRef, value) {
3
4
  if (typeof value === 'number') {
@@ -5,31 +6,6 @@ export function enumStringToValue(enumRef, value) {
5
6
  }
6
7
  return enumRef[value];
7
8
  }
8
- export class KeyValuePair {
9
- key;
10
- value;
11
- static fromProto(proto) {
12
- let m = new KeyValuePair();
13
- m = Object.assign(m, proto);
14
- return m;
15
- }
16
- constructor(kwargs) {
17
- if (!kwargs) {
18
- return;
19
- }
20
- Object.assign(this, kwargs);
21
- }
22
- toApiJson() {
23
- const toReturn = {};
24
- if (typeof this.key !== 'undefined') {
25
- toReturn['key'] = this.key;
26
- }
27
- if (typeof this.value !== 'undefined') {
28
- toReturn['value'] = this.value;
29
- }
30
- return toReturn;
31
- }
32
- }
33
9
  export class Message {
34
10
  messageId;
35
11
  externalMessageId;
@@ -202,4 +178,4 @@ export class SendStatus {
202
178
  return toReturn;
203
179
  }
204
180
  }
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2NvbnZlcnNhdGlvbl9zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDO0FBRTlCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxPQUFZLEVBQUUsS0FBYTtJQUM5RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUM7QUFFRCxNQUFNLE9BQU8sWUFBWTtJQUNyQixHQUFHLENBQVM7SUFDWixLQUFLLENBQVM7SUFFZCxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzQixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFnQztRQUN4QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDVixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUFBLENBQUM7UUFDbEUsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUFBLENBQUM7UUFDeEUsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLE9BQU87SUFDaEIsU0FBUyxDQUFTO0lBQ2xCLGlCQUFpQixDQUFTO0lBQzFCLGNBQWMsQ0FBUztJQUN2QixhQUFhLENBQVM7SUFDdEIsSUFBSSxDQUFnQjtJQUNwQixJQUFJLENBQVM7SUFDYixLQUFLLENBQVM7SUFDZCxPQUFPLENBQU87SUFDZCxPQUFPLENBQU87SUFDZCxPQUFPLENBQU87SUFDZCxLQUFLLENBQVc7SUFDaEIsVUFBVSxDQUFhO0lBQ3ZCLE9BQU8sQ0FBd0I7SUFDL0IsUUFBUSxDQUFpQjtJQUN6QixlQUFlLENBQVM7SUFFeEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDdEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBZ0IsQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3ZGLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUFBLENBQUM7UUFDOUUsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFBQSxDQUFDLENBQUMsT0FBTyxHQUFHLGlCQUFpQixDQUF3QixDQUFDLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUNoSCxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFBLENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUM5RSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQTJCO1FBQ25DLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQUEsQ0FBQztRQUNwRixJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQUEsQ0FBQztRQUM1RyxJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFBQSxDQUFDO1FBQ25HLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFBQSxDQUFDO1FBQ2hHLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFBQSxDQUFDO1FBQ3JFLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFBQSxDQUFDO1FBQ3JFLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFBQSxDQUFDO1FBQ3hFLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsT0FBZSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQUEsQ0FBQztRQUN6SyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLE9BQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUFBLENBQUM7UUFDekssSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxPQUFlLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFBQSxDQUFDO1FBQ3pLLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFBQSxDQUFDO1FBQ3hFLElBQUksT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFlBQVksQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsVUFBa0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUFBLENBQUM7UUFDM0wsSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUFBLENBQUM7UUFDOUUsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7WUFBQSxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxRQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQUEsQ0FBQztRQUMvSyxJQUFJLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFBQSxDQUFDO1FBQ3RHLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyx3QkFBd0I7SUFDakMsYUFBYSxDQUFTO0lBQ3RCLFNBQVMsQ0FBUztJQUNsQixNQUFNLENBQWtCO0lBQ3hCLE9BQU8sQ0FBTztJQUVkLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLHdCQUF3QixFQUFFLENBQUM7UUFDdkMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE1BQU0sR0FBRyxpQkFBaUIsQ0FBa0IsQ0FBQyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ2pHLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFBQSxDQUFDO1FBQ3pELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBNEM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1YsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFBQSxDQUFDO1FBQ2hHLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFBQSxDQUFDO1FBQ3BGLElBQUksT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFBQSxDQUFDO1FBQzNFLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQUEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsT0FBZSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQUEsQ0FBQztRQUN6SyxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sVUFBVTtJQUNuQixNQUFNLENBQWtCO0lBQ3hCLE1BQU0sQ0FBUztJQUNmLE9BQU8sQ0FBTztJQUVkLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ3pCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUFBLENBQUMsQ0FBQyxNQUFNLEdBQUcsaUJBQWlCLENBQWtCLENBQUMsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUNqRyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUFBLENBQUMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUN6RCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQThCO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU87UUFDWCxDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQUEsQ0FBQztRQUMzRSxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQUEsQ0FBQztRQUMzRSxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUFBLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLE9BQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUFBLENBQUM7UUFDekssT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBLZXlWYWx1ZVBhaXIgaW1wbGVtZW50cyBpLktleVZhbHVlUGFpckludGVyZmFjZSB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEtleVZhbHVlUGFpciB7XG4gICAgICAgIGxldCBtID0gbmV3IEtleVZhbHVlUGFpcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuS2V5VmFsdWVQYWlySW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd2YWx1ZSddID0gdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlIGltcGxlbWVudHMgaS5NZXNzYWdlSW50ZXJmYWNlIHtcbiAgICBtZXNzYWdlSWQ6IHN0cmluZztcbiAgICBleHRlcm5hbE1lc3NhZ2VJZDogc3RyaW5nO1xuICAgIGNvbnZlcnNhdGlvbklkOiBzdHJpbmc7XG4gICAgcGFydGljaXBhbnRJZDogc3RyaW5nO1xuICAgIHR5cGU6IGUuTWVzc2FnZVR5cGU7XG4gICAgYm9keTogc3RyaW5nO1xuICAgIGVycm9yOiBzdHJpbmc7XG4gICAgY3JlYXRlZDogRGF0ZTtcbiAgICB1cGRhdGVkOiBEYXRlO1xuICAgIGRlbGV0ZWQ6IERhdGU7XG4gICAgbWVkaWE6IHN0cmluZ1tdO1xuICAgIHNlbmRTdGF0dXM6IFNlbmRTdGF0dXM7XG4gICAgY2hhbm5lbDogZS5Db252ZXJzYXRpb25DaGFubmVsO1xuICAgIG1ldGFkYXRhOiBLZXlWYWx1ZVBhaXJbXTtcbiAgICBvcmlnaW5hbENvbnRlbnQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IE1lc3NhZ2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBNZXNzYWdlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnR5cGUpIHttLnR5cGUgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLk1lc3NhZ2VUeXBlPihlLk1lc3NhZ2VUeXBlLCBwcm90by50eXBlKTt9XG4gICAgICAgIGlmIChwcm90by5jcmVhdGVkKSB7bS5jcmVhdGVkID0gbmV3IERhdGUocHJvdG8uY3JlYXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8udXBkYXRlZCkge20udXBkYXRlZCA9IG5ldyBEYXRlKHByb3RvLnVwZGF0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLmRlbGV0ZWQpIHttLmRlbGV0ZWQgPSBuZXcgRGF0ZShwcm90by5kZWxldGVkKTt9XG4gICAgICAgIGlmIChwcm90by5zZW5kU3RhdHVzKSB7bS5zZW5kU3RhdHVzID0gU2VuZFN0YXR1cy5mcm9tUHJvdG8ocHJvdG8uc2VuZFN0YXR1cyk7fVxuICAgICAgICBpZiAocHJvdG8uY2hhbm5lbCkge20uY2hhbm5lbCA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuQ29udmVyc2F0aW9uQ2hhbm5lbD4oZS5Db252ZXJzYXRpb25DaGFubmVsLCBwcm90by5jaGFubmVsKTt9XG4gICAgICAgIGlmIChwcm90by5tZXRhZGF0YSkge20ubWV0YWRhdGEgPSBwcm90by5tZXRhZGF0YS5tYXAoS2V5VmFsdWVQYWlyLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLk1lc3NhZ2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tZXNzYWdlSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21lc3NhZ2VJZCddID0gdGhpcy5tZXNzYWdlSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZXh0ZXJuYWxNZXNzYWdlSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2V4dGVybmFsTWVzc2FnZUlkJ10gPSB0aGlzLmV4dGVybmFsTWVzc2FnZUlkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbnZlcnNhdGlvbklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjb252ZXJzYXRpb25JZCddID0gdGhpcy5jb252ZXJzYXRpb25JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wYXJ0aWNpcGFudElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwYXJ0aWNpcGFudElkJ10gPSB0aGlzLnBhcnRpY2lwYW50SWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndHlwZSddID0gdGhpcy50eXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmJvZHkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2JvZHknXSA9IHRoaXMuYm9keTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5lcnJvciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZXJyb3InXSA9IHRoaXMuZXJyb3I7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5jcmVhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ2NyZWF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuY3JlYXRlZCA/ICh0aGlzLmNyZWF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuY3JlYXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51cGRhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnVwZGF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsndXBkYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy51cGRhdGVkID8gKHRoaXMudXBkYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy51cGRhdGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRlbGV0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZGVsZXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydkZWxldGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmRlbGV0ZWQgPyAodGhpcy5kZWxldGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmRlbGV0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWVkaWEgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21lZGlhJ10gPSB0aGlzLm1lZGlhO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNlbmRTdGF0dXMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc2VuZFN0YXR1cyAhPT0gbnVsbCkge3RvUmV0dXJuWydzZW5kU3RhdHVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnNlbmRTdGF0dXMgPyAodGhpcy5zZW5kU3RhdHVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnNlbmRTdGF0dXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2hhbm5lbCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2hhbm5lbCddID0gdGhpcy5jaGFubmVsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1ldGFkYXRhICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLm1ldGFkYXRhICE9PSBudWxsKSB7dG9SZXR1cm5bJ21ldGFkYXRhJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLm1ldGFkYXRhID8gKHRoaXMubWV0YWRhdGEgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMubWV0YWRhdGE7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMub3JpZ2luYWxDb250ZW50ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydvcmlnaW5hbENvbnRlbnQnXSA9IHRoaXMub3JpZ2luYWxDb250ZW50O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFBhcnRpY2lwYW50TWVzc2FnZVN0YXR1cyBpbXBsZW1lbnRzIGkuUGFydGljaXBhbnRNZXNzYWdlU3RhdHVzSW50ZXJmYWNlIHtcbiAgICBwYXJ0aWNpcGFudElkOiBzdHJpbmc7XG4gICAgbWVzc2FnZUlkOiBzdHJpbmc7XG4gICAgc3RhdHVzOiBlLk1lc3NhZ2VTdGF0dXM7XG4gICAgdXBkYXRlZDogRGF0ZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFBhcnRpY2lwYW50TWVzc2FnZVN0YXR1cyB7XG4gICAgICAgIGxldCBtID0gbmV3IFBhcnRpY2lwYW50TWVzc2FnZVN0YXR1cygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5zdGF0dXMpIHttLnN0YXR1cyA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuTWVzc2FnZVN0YXR1cz4oZS5NZXNzYWdlU3RhdHVzLCBwcm90by5zdGF0dXMpO31cbiAgICAgICAgaWYgKHByb3RvLnVwZGF0ZWQpIHttLnVwZGF0ZWQgPSBuZXcgRGF0ZShwcm90by51cGRhdGVkKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUGFydGljaXBhbnRNZXNzYWdlU3RhdHVzSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFydGljaXBhbnRJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGFydGljaXBhbnRJZCddID0gdGhpcy5wYXJ0aWNpcGFudElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1lc3NhZ2VJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWVzc2FnZUlkJ10gPSB0aGlzLm1lc3NhZ2VJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdGF0dXMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3N0YXR1cyddID0gdGhpcy5zdGF0dXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXBkYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy51cGRhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ3VwZGF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudXBkYXRlZCA/ICh0aGlzLnVwZGF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudXBkYXRlZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTZW5kU3RhdHVzIGltcGxlbWVudHMgaS5TZW5kU3RhdHVzSW50ZXJmYWNlIHtcbiAgICBzdGF0dXM6IGUuTWVzc2FnZVN0YXR1cztcbiAgICByZWFzb246IHN0cmluZztcbiAgICBjcmVhdGVkOiBEYXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogU2VuZFN0YXR1cyB7XG4gICAgICAgIGxldCBtID0gbmV3IFNlbmRTdGF0dXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uc3RhdHVzKSB7bS5zdGF0dXMgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLk1lc3NhZ2VTdGF0dXM+KGUuTWVzc2FnZVN0YXR1cywgcHJvdG8uc3RhdHVzKTt9XG4gICAgICAgIGlmIChwcm90by5jcmVhdGVkKSB7bS5jcmVhdGVkID0gbmV3IERhdGUocHJvdG8uY3JlYXRlZCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlNlbmRTdGF0dXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdGF0dXMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3N0YXR1cyddID0gdGhpcy5zdGF0dXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucmVhc29uICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydyZWFzb24nXSA9IHRoaXMucmVhc29uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNyZWF0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY3JlYXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWydjcmVhdGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmNyZWF0ZWQgPyAodGhpcy5jcmVhdGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNyZWF0ZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2NvbnZlcnNhdGlvbl9zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDeEMsT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7QUFFOUIsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxPQUFPO0lBQ2hCLFNBQVMsQ0FBUztJQUNsQixpQkFBaUIsQ0FBUztJQUMxQixjQUFjLENBQVM7SUFDdkIsYUFBYSxDQUFTO0lBQ3RCLElBQUksQ0FBZ0I7SUFDcEIsSUFBSSxDQUFTO0lBQ2IsS0FBSyxDQUFTO0lBQ2QsT0FBTyxDQUFPO0lBQ2QsT0FBTyxDQUFPO0lBQ2QsT0FBTyxDQUFPO0lBQ2QsS0FBSyxDQUFXO0lBQ2hCLFVBQVUsQ0FBYTtJQUN2QixPQUFPLENBQXdCO0lBQy9CLFFBQVEsQ0FBaUI7SUFDekIsZUFBZSxDQUFTO0lBRXhCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3RCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUFBLENBQUMsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQWdCLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FB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LENBQUM7WUFBQSxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxPQUFlLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFBQSxDQUFDO1FBQ3pLLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEtleVZhbHVlUGFpciB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW51bVN0cmluZ1RvVmFsdWU8RT4oZW51bVJlZjogYW55LCB2YWx1ZTogc3RyaW5nKTogRSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIHJldHVybiBlbnVtUmVmW3ZhbHVlXTtcbn1cblxuZXhwb3J0IGNsYXNzIE1lc3NhZ2UgaW1wbGVtZW50cyBpLk1lc3NhZ2VJbnRlcmZhY2Uge1xuICAgIG1lc3NhZ2VJZDogc3RyaW5nO1xuICAgIGV4dGVybmFsTWVzc2FnZUlkOiBzdHJpbmc7XG4gICAgY29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICBwYXJ0aWNpcGFudElkOiBzdHJpbmc7XG4gICAgdHlwZTogZS5NZXNzYWdlVHlwZTtcbiAgICBib2R5OiBzdHJpbmc7XG4gICAgZXJyb3I6IHN0cmluZztcbiAgICBjcmVhdGVkOiBEYXRlO1xuICAgIHVwZGF0ZWQ6IERhdGU7XG4gICAgZGVsZXRlZDogRGF0ZTtcbiAgICBtZWRpYTogc3RyaW5nW107XG4gICAgc2VuZFN0YXR1czogU2VuZFN0YXR1cztcbiAgICBjaGFubmVsOiBlLkNvbnZlcnNhdGlvbkNoYW5uZWw7XG4gICAgbWV0YWRhdGE6IEtleVZhbHVlUGFpcltdO1xuICAgIG9yaWdpbmFsQ29udGVudDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTWVzc2FnZSB7XG4gICAgICAgIGxldCBtID0gbmV3IE1lc3NhZ2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udHlwZSkge20udHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuTWVzc2FnZVR5cGU+KGUuTWVzc2FnZVR5cGUsIHByb3RvLnR5cGUpO31cbiAgICAgICAgaWYgKHByb3RvLmNyZWF0ZWQpIHttLmNyZWF0ZWQgPSBuZXcgRGF0ZShwcm90by5jcmVhdGVkKTt9XG4gICAgICAgIGlmIChwcm90by51cGRhdGVkKSB7bS51cGRhdGVkID0gbmV3IERhdGUocHJvdG8udXBkYXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8uZGVsZXRlZCkge20uZGVsZXRlZCA9IG5ldyBEYXRlKHByb3RvLmRlbGV0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLnNlbmRTdGF0dXMpIHttLnNlbmRTdGF0dXMgPSBTZW5kU3RhdHVzLmZyb21Qcm90byhwcm90by5zZW5kU3RhdHVzKTt9XG4gICAgICAgIGlmIChwcm90by5jaGFubmVsKSB7bS5jaGFubmVsID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5Db252ZXJzYXRpb25DaGFubmVsPihlLkNvbnZlcnNhdGlvbkNoYW5uZWwsIHByb3RvLmNoYW5uZWwpO31cbiAgICAgICAgaWYgKHByb3RvLm1ldGFkYXRhKSB7bS5tZXRhZGF0YSA9IHByb3RvLm1ldGFkYXRhLm1hcChLZXlWYWx1ZVBhaXIuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTWVzc2FnZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1lc3NhZ2VJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWVzc2FnZUlkJ10gPSB0aGlzLm1lc3NhZ2VJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5leHRlcm5hbE1lc3NhZ2VJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZXh0ZXJuYWxNZXNzYWdlSWQnXSA9IHRoaXMuZXh0ZXJuYWxNZXNzYWdlSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udmVyc2F0aW9uSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2NvbnZlcnNhdGlvbklkJ10gPSB0aGlzLmNvbnZlcnNhdGlvbklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBhcnRpY2lwYW50SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3BhcnRpY2lwYW50SWQnXSA9IHRoaXMucGFydGljaXBhbnRJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy50eXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd0eXBlJ10gPSB0aGlzLnR5cGU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYm9keSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYm9keSddID0gdGhpcy5ib2R5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVycm9yICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlcnJvciddID0gdGhpcy5lcnJvcjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jcmVhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmNyZWF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsnY3JlYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5jcmVhdGVkID8gKHRoaXMuY3JlYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5jcmVhdGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVwZGF0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudXBkYXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWyd1cGRhdGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnVwZGF0ZWQgPyAodGhpcy51cGRhdGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnVwZGF0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGVsZXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5kZWxldGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ2RlbGV0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuZGVsZXRlZCA/ICh0aGlzLmRlbGV0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuZGVsZXRlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tZWRpYSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWVkaWEnXSA9IHRoaXMubWVkaWE7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2VuZFN0YXR1cyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zZW5kU3RhdHVzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3NlbmRTdGF0dXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuc2VuZFN0YXR1cyA/ICh0aGlzLnNlbmRTdGF0dXMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc2VuZFN0YXR1czt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jaGFubmVsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjaGFubmVsJ10gPSB0aGlzLmNoYW5uZWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWV0YWRhdGEgIT09ICd1bmRlZmluZWQnICYmIHRoaXMubWV0YWRhdGEgIT09IG51bGwpIHt0b1JldHVyblsnbWV0YWRhdGEnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMubWV0YWRhdGEgPyAodGhpcy5tZXRhZGF0YSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5tZXRhZGF0YTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5vcmlnaW5hbENvbnRlbnQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ29yaWdpbmFsQ29udGVudCddID0gdGhpcy5vcmlnaW5hbENvbnRlbnQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFydGljaXBhbnRNZXNzYWdlU3RhdHVzIGltcGxlbWVudHMgaS5QYXJ0aWNpcGFudE1lc3NhZ2VTdGF0dXNJbnRlcmZhY2Uge1xuICAgIHBhcnRpY2lwYW50SWQ6IHN0cmluZztcbiAgICBtZXNzYWdlSWQ6IHN0cmluZztcbiAgICBzdGF0dXM6IGUuTWVzc2FnZVN0YXR1cztcbiAgICB1cGRhdGVkOiBEYXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogUGFydGljaXBhbnRNZXNzYWdlU3RhdHVzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgUGFydGljaXBhbnRNZXNzYWdlU3RhdHVzKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnN0YXR1cykge20uc3RhdHVzID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5NZXNzYWdlU3RhdHVzPihlLk1lc3NhZ2VTdGF0dXMsIHByb3RvLnN0YXR1cyk7fVxuICAgICAgICBpZiAocHJvdG8udXBkYXRlZCkge20udXBkYXRlZCA9IG5ldyBEYXRlKHByb3RvLnVwZGF0ZWQpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5QYXJ0aWNpcGFudE1lc3NhZ2VTdGF0dXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wYXJ0aWNpcGFudElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwYXJ0aWNpcGFudElkJ10gPSB0aGlzLnBhcnRpY2lwYW50SWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWVzc2FnZUlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtZXNzYWdlSWQnXSA9IHRoaXMubWVzc2FnZUlkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN0YXR1cyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc3RhdHVzJ10gPSB0aGlzLnN0YXR1czt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51cGRhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnVwZGF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsndXBkYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy51cGRhdGVkID8gKHRoaXMudXBkYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy51cGRhdGVkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNlbmRTdGF0dXMgaW1wbGVtZW50cyBpLlNlbmRTdGF0dXNJbnRlcmZhY2Uge1xuICAgIHN0YXR1czogZS5NZXNzYWdlU3RhdHVzO1xuICAgIHJlYXNvbjogc3RyaW5nO1xuICAgIGNyZWF0ZWQ6IERhdGU7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBTZW5kU3RhdHVzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgU2VuZFN0YXR1cygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5zdGF0dXMpIHttLnN0YXR1cyA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuTWVzc2FnZVN0YXR1cz4oZS5NZXNzYWdlU3RhdHVzLCBwcm90by5zdGF0dXMpO31cbiAgICAgICAgaWYgKHByb3RvLmNyZWF0ZWQpIHttLmNyZWF0ZWQgPSBuZXcgRGF0ZShwcm90by5jcmVhdGVkKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuU2VuZFN0YXR1c0ludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN0YXR1cyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc3RhdHVzJ10gPSB0aGlzLnN0YXR1czt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5yZWFzb24gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3JlYXNvbiddID0gdGhpcy5yZWFzb247fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRlZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5jcmVhdGVkICE9PSBudWxsKSB7dG9SZXR1cm5bJ2NyZWF0ZWQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuY3JlYXRlZCA/ICh0aGlzLmNyZWF0ZWQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuY3JlYXRlZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbiJdfQ==