@vendasta/iam 2.0.1 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/esm2020/lib/_generated/host.service.mjs +25 -0
  2. package/esm2020/lib/_generated/index.mjs +2 -0
  3. package/esm2020/lib/_internal/enums/api.enum.mjs +22 -0
  4. package/esm2020/lib/_internal/enums/index.mjs +12 -0
  5. package/esm2020/lib/_internal/enums/policies.enum.mjs +18 -0
  6. package/esm2020/lib/_internal/enums/resources.enum.mjs +14 -0
  7. package/esm2020/lib/_internal/enums/subjects.enum.mjs +17 -0
  8. package/esm2020/lib/_internal/enums/users.enum.mjs +13 -0
  9. package/esm2020/lib/_internal/iam.api.service.mjs +189 -0
  10. package/esm2020/lib/_internal/index.mjs +12 -0
  11. package/esm2020/lib/_internal/interfaces/annotations.interface.mjs +8 -0
  12. package/esm2020/lib/_internal/interfaces/api.interface.mjs +2 -0
  13. package/esm2020/lib/_internal/interfaces/attributes.interface.mjs +8 -0
  14. package/esm2020/lib/_internal/interfaces/field-mask.interface.mjs +8 -0
  15. package/esm2020/lib/_internal/interfaces/index.mjs +2 -0
  16. package/esm2020/lib/_internal/interfaces/policies.interface.mjs +3 -0
  17. package/esm2020/lib/_internal/interfaces/resources.interface.mjs +2 -0
  18. package/esm2020/lib/_internal/interfaces/security-logs.interface.mjs +8 -0
  19. package/esm2020/lib/_internal/interfaces/subjects.interface.mjs +2 -0
  20. package/esm2020/lib/_internal/interfaces/users.interface.mjs +2 -0
  21. package/esm2020/lib/_internal/objects/annotations.mjs +30 -0
  22. package/esm2020/lib/_internal/objects/api.mjs +1846 -0
  23. package/esm2020/lib/_internal/objects/attributes.mjs +158 -0
  24. package/esm2020/lib/_internal/objects/field-mask.mjs +27 -0
  25. package/esm2020/lib/_internal/objects/index.mjs +16 -0
  26. package/esm2020/lib/_internal/objects/policies.mjs +264 -0
  27. package/esm2020/lib/_internal/objects/resources.mjs +168 -0
  28. package/esm2020/lib/_internal/objects/security-logs.mjs +42 -0
  29. package/esm2020/lib/_internal/objects/subjects.mjs +352 -0
  30. package/esm2020/lib/_internal/objects/users.mjs +168 -0
  31. package/esm2020/lib/_internal/user-iam.api.service.mjs +65 -0
  32. package/esm2020/lib/http/http.interface.mjs +2 -0
  33. package/esm2020/lib/http/http.mjs +104 -0
  34. package/esm2020/lib/http/iam.http.api.service.mjs +67 -0
  35. package/esm2020/lib/iam.service.mjs +155 -0
  36. package/esm2020/lib/index.mjs +7 -0
  37. package/esm2020/lib/personas/account-group.mjs +9 -0
  38. package/esm2020/lib/personas/base-personas.mjs +93 -0
  39. package/esm2020/lib/personas/developer.mjs +9 -0
  40. package/esm2020/lib/personas/digital-agent.mjs +9 -0
  41. package/esm2020/lib/personas/index.mjs +12 -0
  42. package/esm2020/lib/personas/partner-app.mjs +9 -0
  43. package/esm2020/lib/personas/partner.mjs +25 -0
  44. package/esm2020/lib/personas/persona-type.enum.mjs +13 -0
  45. package/esm2020/lib/personas/personas.mjs +57 -0
  46. package/esm2020/lib/personas/salesperson.mjs +15 -0
  47. package/esm2020/lib/personas/smb.mjs +10 -0
  48. package/esm2020/lib/personas/success.mjs +9 -0
  49. package/esm2020/lib/personas/vendor.mjs +9 -0
  50. package/esm2020/public_api.mjs +2 -0
  51. package/esm2020/vendasta-iam.mjs +5 -0
  52. package/fesm2015/{vendasta-iam.js → vendasta-iam.mjs} +683 -1244
  53. package/fesm2015/vendasta-iam.mjs.map +1 -0
  54. package/fesm2020/vendasta-iam.mjs +3937 -0
  55. package/fesm2020/vendasta-iam.mjs.map +1 -0
  56. package/lib/_generated/host.service.d.ts +5 -9
  57. package/lib/_internal/enums/index.d.ts +2 -1
  58. package/lib/_internal/enums/policies.enum.d.ts +9 -0
  59. package/lib/_internal/enums/resources.enum.d.ts +0 -9
  60. package/lib/_internal/iam.api.service.d.ts +4 -0
  61. package/lib/_internal/index.d.ts +0 -1
  62. package/lib/_internal/interfaces/annotations.interface.d.ts +4 -0
  63. package/lib/_internal/interfaces/api.interface.d.ts +5 -17
  64. package/lib/_internal/interfaces/attributes.interface.d.ts +26 -0
  65. package/lib/_internal/interfaces/index.d.ts +6 -3
  66. package/lib/_internal/interfaces/policies.interface.d.ts +42 -0
  67. package/lib/_internal/interfaces/resources.interface.d.ts +2 -41
  68. package/lib/_internal/interfaces/subjects.interface.d.ts +1 -26
  69. package/lib/_internal/objects/annotations.d.ts +9 -0
  70. package/lib/_internal/objects/api.d.ts +5 -23
  71. package/lib/_internal/objects/attributes.d.ts +43 -0
  72. package/lib/_internal/objects/index.d.ts +6 -3
  73. package/lib/_internal/objects/policies.d.ts +68 -0
  74. package/lib/_internal/objects/resources.d.ts +2 -65
  75. package/lib/_internal/objects/subjects.d.ts +1 -41
  76. package/lib/_internal/user-iam.api.service.d.ts +4 -0
  77. package/lib/http/iam.http.api.service.d.ts +4 -0
  78. package/lib/iam.service.d.ts +3 -0
  79. package/lib/personas/base-personas.d.ts +1 -1
  80. package/lib/personas/partner.d.ts +1 -0
  81. package/package.json +29 -16
  82. package/src/README.md +113 -0
  83. package/vendasta-iam.d.ts +1 -0
  84. package/bundles/vendasta-iam.umd.js +0 -5067
  85. package/bundles/vendasta-iam.umd.js.map +0 -1
  86. package/bundles/vendasta-iam.umd.min.js +0 -16
  87. package/bundles/vendasta-iam.umd.min.js.map +0 -1
  88. package/esm2015/lib/_generated/host.service.js +0 -65
  89. package/esm2015/lib/_generated/index.js +0 -2
  90. package/esm2015/lib/_internal/enums/api.enum.js +0 -22
  91. package/esm2015/lib/_internal/enums/index.js +0 -11
  92. package/esm2015/lib/_internal/enums/resources.enum.js +0 -25
  93. package/esm2015/lib/_internal/enums/subjects.enum.js +0 -17
  94. package/esm2015/lib/_internal/enums/users.enum.js +0 -13
  95. package/esm2015/lib/_internal/iam-sso.api.service.js +0 -42
  96. package/esm2015/lib/_internal/iam.api.service.js +0 -190
  97. package/esm2015/lib/_internal/index.js +0 -13
  98. package/esm2015/lib/_internal/interfaces/api.interface.js +0 -2
  99. package/esm2015/lib/_internal/interfaces/field-mask.interface.js +0 -8
  100. package/esm2015/lib/_internal/interfaces/index.js +0 -2
  101. package/esm2015/lib/_internal/interfaces/resources.interface.js +0 -2
  102. package/esm2015/lib/_internal/interfaces/security-logs.interface.js +0 -8
  103. package/esm2015/lib/_internal/interfaces/subjects.interface.js +0 -8
  104. package/esm2015/lib/_internal/interfaces/users.interface.js +0 -2
  105. package/esm2015/lib/_internal/objects/api.js +0 -2212
  106. package/esm2015/lib/_internal/objects/field-mask.js +0 -30
  107. package/esm2015/lib/_internal/objects/index.js +0 -13
  108. package/esm2015/lib/_internal/objects/resources.js +0 -483
  109. package/esm2015/lib/_internal/objects/security-logs.js +0 -49
  110. package/esm2015/lib/_internal/objects/subjects.js +0 -582
  111. package/esm2015/lib/_internal/objects/users.js +0 -199
  112. package/esm2015/lib/_internal/user-iam.api.service.js +0 -66
  113. package/esm2015/lib/http/http.interface.js +0 -2
  114. package/esm2015/lib/http/http.js +0 -102
  115. package/esm2015/lib/http/iam.http.api.service.js +0 -68
  116. package/esm2015/lib/iam.service.js +0 -156
  117. package/esm2015/lib/index.js +0 -7
  118. package/esm2015/lib/personas/account-group.js +0 -9
  119. package/esm2015/lib/personas/base-personas.js +0 -89
  120. package/esm2015/lib/personas/developer.js +0 -9
  121. package/esm2015/lib/personas/digital-agent.js +0 -9
  122. package/esm2015/lib/personas/index.js +0 -12
  123. package/esm2015/lib/personas/partner-app.js +0 -9
  124. package/esm2015/lib/personas/partner.js +0 -24
  125. package/esm2015/lib/personas/persona-type.enum.js +0 -13
  126. package/esm2015/lib/personas/personas.js +0 -57
  127. package/esm2015/lib/personas/salesperson.js +0 -15
  128. package/esm2015/lib/personas/smb.js +0 -10
  129. package/esm2015/lib/personas/success.js +0 -9
  130. package/esm2015/lib/personas/vendor.js +0 -9
  131. package/esm2015/public_api.js +0 -2
  132. package/esm2015/vendasta-iam.js +0 -5
  133. package/fesm2015/vendasta-iam.js.map +0 -1
  134. package/lib/_internal/iam-sso.api.service.d.ts +0 -12
  135. package/vendasta-iam.metadata.json +0 -1
@@ -1,199 +0,0 @@
1
- import { PublicKey } from './subjects';
2
- export function enumStringToValue(enumRef, value) {
3
- if (typeof value === 'number') {
4
- return value;
5
- }
6
- return enumRef[value];
7
- }
8
- export class Identifier {
9
- constructor(kwargs) {
10
- if (!kwargs) {
11
- return;
12
- }
13
- Object.assign(this, kwargs);
14
- }
15
- static fromProto(proto) {
16
- let m = new Identifier();
17
- m = Object.assign(m, proto);
18
- return m;
19
- }
20
- toApiJson() {
21
- if (typeof this.subjectId === 'undefined' &&
22
- typeof this.userId === 'undefined') {
23
- return {};
24
- }
25
- const toReturn = {};
26
- if (typeof this.subjectId !== 'undefined') {
27
- toReturn['subjectId'] = this.subjectId;
28
- }
29
- if (typeof this.userId !== 'undefined') {
30
- toReturn['userId'] = this.userId;
31
- }
32
- return toReturn;
33
- }
34
- }
35
- export class NamespacedEmail {
36
- constructor(kwargs) {
37
- if (!kwargs) {
38
- return;
39
- }
40
- Object.assign(this, kwargs);
41
- }
42
- static fromProto(proto) {
43
- let m = new NamespacedEmail();
44
- m = Object.assign(m, proto);
45
- return m;
46
- }
47
- toApiJson() {
48
- if (typeof this.namespace === 'undefined' &&
49
- typeof this.email === 'undefined') {
50
- return {};
51
- }
52
- const toReturn = {};
53
- if (typeof this.namespace !== 'undefined') {
54
- toReturn['namespace'] = this.namespace;
55
- }
56
- if (typeof this.email !== 'undefined') {
57
- toReturn['email'] = this.email;
58
- }
59
- return toReturn;
60
- }
61
- }
62
- export class NamespacedSession {
63
- constructor(kwargs) {
64
- if (!kwargs) {
65
- return;
66
- }
67
- Object.assign(this, kwargs);
68
- }
69
- static fromProto(proto) {
70
- let m = new NamespacedSession();
71
- m = Object.assign(m, proto);
72
- return m;
73
- }
74
- toApiJson() {
75
- if (typeof this.namespace === 'undefined' &&
76
- typeof this.session === 'undefined') {
77
- return {};
78
- }
79
- const toReturn = {};
80
- if (typeof this.namespace !== 'undefined') {
81
- toReturn['namespace'] = this.namespace;
82
- }
83
- if (typeof this.session !== 'undefined') {
84
- toReturn['session'] = this.session;
85
- }
86
- return toReturn;
87
- }
88
- }
89
- export class TypedExternalIdentifier {
90
- constructor(kwargs) {
91
- if (!kwargs) {
92
- return;
93
- }
94
- Object.assign(this, kwargs);
95
- }
96
- static fromProto(proto) {
97
- let m = new TypedExternalIdentifier();
98
- m = Object.assign(m, proto);
99
- return m;
100
- }
101
- toApiJson() {
102
- if (typeof this.externalIdType === 'undefined' &&
103
- typeof this.externalId === 'undefined') {
104
- return {};
105
- }
106
- const toReturn = {};
107
- if (typeof this.externalIdType !== 'undefined') {
108
- toReturn['externalIdType'] = this.externalIdType;
109
- }
110
- if (typeof this.externalId !== 'undefined') {
111
- toReturn['externalId'] = this.externalId;
112
- }
113
- return toReturn;
114
- }
115
- }
116
- export class User {
117
- constructor(kwargs) {
118
- if (!kwargs) {
119
- return;
120
- }
121
- Object.assign(this, kwargs);
122
- }
123
- static fromProto(proto) {
124
- let m = new User();
125
- m = Object.assign(m, proto);
126
- if (proto.created) {
127
- m.created = new Date(proto.created);
128
- }
129
- if (proto.updated) {
130
- m.updated = new Date(proto.updated);
131
- }
132
- if (proto.lastLogin) {
133
- m.lastLogin = new Date(proto.lastLogin);
134
- }
135
- if (proto.publicKeys) {
136
- m.publicKeys = proto.publicKeys.map(PublicKey.fromProto);
137
- }
138
- return m;
139
- }
140
- toApiJson() {
141
- if (typeof this.userId === 'undefined' &&
142
- typeof this.namespace === 'undefined' &&
143
- typeof this.email === 'undefined' &&
144
- typeof this.created === 'undefined' &&
145
- typeof this.updated === 'undefined' &&
146
- typeof this.firstName === 'undefined' &&
147
- typeof this.greetingName === 'undefined' &&
148
- typeof this.lastName === 'undefined' &&
149
- typeof this.languageCode === 'undefined' &&
150
- typeof this.emailVerified === 'undefined' &&
151
- typeof this.roles === 'undefined' &&
152
- typeof this.lastLogin === 'undefined' &&
153
- typeof this.publicKeys === 'undefined') {
154
- return {};
155
- }
156
- const toReturn = {};
157
- if (typeof this.userId !== 'undefined') {
158
- toReturn['userId'] = this.userId;
159
- }
160
- if (typeof this.namespace !== 'undefined') {
161
- toReturn['namespace'] = this.namespace;
162
- }
163
- if (typeof this.email !== 'undefined') {
164
- toReturn['email'] = this.email;
165
- }
166
- if (typeof this.created !== 'undefined' && this.created !== null) {
167
- toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;
168
- }
169
- if (typeof this.updated !== 'undefined' && this.updated !== null) {
170
- toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;
171
- }
172
- if (typeof this.firstName !== 'undefined') {
173
- toReturn['firstName'] = this.firstName;
174
- }
175
- if (typeof this.greetingName !== 'undefined') {
176
- toReturn['greetingName'] = this.greetingName;
177
- }
178
- if (typeof this.lastName !== 'undefined') {
179
- toReturn['lastName'] = this.lastName;
180
- }
181
- if (typeof this.languageCode !== 'undefined') {
182
- toReturn['languageCode'] = this.languageCode;
183
- }
184
- if (typeof this.emailVerified !== 'undefined') {
185
- toReturn['emailVerified'] = this.emailVerified;
186
- }
187
- if (typeof this.roles !== 'undefined') {
188
- toReturn['roles'] = this.roles;
189
- }
190
- if (typeof this.lastLogin !== 'undefined' && this.lastLogin !== null) {
191
- toReturn['lastLogin'] = 'toApiJson' in this.lastLogin ? this.lastLogin.toApiJson() : this.lastLogin;
192
- }
193
- if (typeof this.publicKeys !== 'undefined' && this.publicKeys !== null) {
194
- toReturn['publicKeys'] = 'toApiJson' in this.publicKeys ? this.publicKeys.toApiJson() : this.publicKeys;
195
- }
196
- return toReturn;
197
- }
198
- }
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuanMiLCJzb3VyY2VSb290IjoiL2NvZGVmcmVzaC92b2x1bWUvSUFNL3Nka3MvdHlwZXNjcmlwdC9zcmMvaWFtX3Nkay9zcmMvIiwic291cmNlcyI6WyJsaWIvX2ludGVybmFsL29iamVjdHMvdXNlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUd2QyxNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUM7QUFFRCxNQUFNLE9BQU8sVUFBVTtJQVVuQixZQUFZLE1BQThCO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBWEQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDekIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQVNELFNBQVM7UUFDTCxJQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxXQUFXO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxXQUFXLEVBQUU7WUFDcEMsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUVELE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxD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QUFDLFFBQVEsQ0FBQztTQUFDO1FBQ2pGLElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDN0YsSUFBSSxPQUFPLElBQUksQ0FBQyxhQUFhLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7U0FBQztRQUNoRyxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUFDO1FBQ3hFLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFNBQWlCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7U0FBQztRQUNyTCxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxVQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1NBQUM7UUFDM0wsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnLi9zdWJqZWN0cyc7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBJZGVudGlmaWVyIGltcGxlbWVudHMgaS5JZGVudGlmaWVySW50ZXJmYWNlIHtcbiAgICBzdWJqZWN0SWQ6IHN0cmluZztcbiAgICB1c2VySWQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IElkZW50aWZpZXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBJZGVudGlmaWVyKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5JZGVudGlmaWVySW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5zdWJqZWN0SWQgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy51c2VySWQgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdWJqZWN0SWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3N1YmplY3RJZCddID0gdGhpcy5zdWJqZWN0SWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlcklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VySWQnXSA9IHRoaXMudXNlcklkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5hbWVzcGFjZWRFbWFpbCBpbXBsZW1lbnRzIGkuTmFtZXNwYWNlZEVtYWlsSW50ZXJmYWNlIHtcbiAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTmFtZXNwYWNlZEVtYWlsIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTmFtZXNwYWNlZEVtYWlsKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5OYW1lc3BhY2VkRW1haWxJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLm5hbWVzcGFjZSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmVtYWlsID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubmFtZXNwYWNlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyduYW1lc3BhY2UnXSA9IHRoaXMubmFtZXNwYWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVtYWlsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbWFpbCddID0gdGhpcy5lbWFpbDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOYW1lc3BhY2VkU2Vzc2lvbiBpbXBsZW1lbnRzIGkuTmFtZXNwYWNlZFNlc3Npb25JbnRlcmZhY2Uge1xuICAgIG5hbWVzcGFjZTogc3RyaW5nO1xuICAgIHNlc3Npb246IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IE5hbWVzcGFjZWRTZXNzaW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTmFtZXNwYWNlZFNlc3Npb24oKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLk5hbWVzcGFjZWRTZXNzaW9uSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5uYW1lc3BhY2UgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5zZXNzaW9uID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubmFtZXNwYWNlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyduYW1lc3BhY2UnXSA9IHRoaXMubmFtZXNwYWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNlc3Npb24gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3Nlc3Npb24nXSA9IHRoaXMuc2Vzc2lvbjt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUeXBlZEV4dGVybmFsSWRlbnRpZmllciBpbXBsZW1lbnRzIGkuVHlwZWRFeHRlcm5hbElkZW50aWZpZXJJbnRlcmZhY2Uge1xuICAgIGV4dGVybmFsSWRUeXBlOiBzdHJpbmc7XG4gICAgZXh0ZXJuYWxJZDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogVHlwZWRFeHRlcm5hbElkZW50aWZpZXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBUeXBlZEV4dGVybmFsSWRlbnRpZmllcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuVHlwZWRFeHRlcm5hbElkZW50aWZpZXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmV4dGVybmFsSWRUeXBlID09PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgdHlwZW9mIHRoaXMuZXh0ZXJuYWxJZCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmV4dGVybmFsSWRUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydleHRlcm5hbElkVHlwZSddID0gdGhpcy5leHRlcm5hbElkVHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5leHRlcm5hbElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydleHRlcm5hbElkJ10gPSB0aGlzLmV4dGVybmFsSWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgVXNlciBpbXBsZW1lbnRzIGkuVXNlckludGVyZmFjZSB7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICBjcmVhdGVkOiBEYXRlO1xuICAgIHVwZGF0ZWQ6IERhdGU7XG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gICAgZ3JlZXRpbmdOYW1lOiBzdHJpbmc7XG4gICAgbGFzdE5hbWU6IHN0cmluZztcbiAgICBsYW5ndWFnZUNvZGU6IHN0cmluZztcbiAgICBlbWFpbFZlcmlmaWVkOiBib29sZWFuO1xuICAgIHJvbGVzOiBzdHJpbmdbXTtcbiAgICBsYXN0TG9naW46IERhdGU7XG4gICAgcHVibGljS2V5czogUHVibGljS2V5W107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBVc2VyIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgVXNlcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5jcmVhdGVkKSB7bS5jcmVhdGVkID0gbmV3IERhdGUocHJvdG8uY3JlYXRlZCk7fVxuICAgICAgICBpZiAocHJvdG8udXBkYXRlZCkge20udXBkYXRlZCA9IG5ldyBEYXRlKHByb3RvLnVwZGF0ZWQpO31cbiAgICAgICAgaWYgKHByb3RvLmxhc3RMb2dpbikge20ubGFzdExvZ2luID0gbmV3IERhdGUocHJvdG8ubGFzdExvZ2luKTt9XG4gICAgICAgIGlmIChwcm90by5wdWJsaWNLZXlzKSB7bS5wdWJsaWNLZXlzID0gcHJvdG8ucHVibGljS2V5cy5tYXAoUHVibGljS2V5LmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlVzZXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLnVzZXJJZCA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLm5hbWVzcGFjZSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmVtYWlsID09PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICAgICAgdHlwZW9mIHRoaXMuY3JlYXRlZCA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLnVwZGF0ZWQgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5maXJzdE5hbWUgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5ncmVldGluZ05hbWUgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5sYXN0TmFtZSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmxhbmd1YWdlQ29kZSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmVtYWlsVmVyaWZpZWQgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICAgICAgICB0eXBlb2YgdGhpcy5yb2xlcyA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmxhc3RMb2dpbiA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLnB1YmxpY0tleXMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VySWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXJJZCddID0gdGhpcy51c2VySWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubmFtZXNwYWNlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyduYW1lc3BhY2UnXSA9IHRoaXMubmFtZXNwYWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVtYWlsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbWFpbCddID0gdGhpcy5lbWFpbDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jcmVhdGVkICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmNyZWF0ZWQgIT09IG51bGwpIHt0b1JldHVyblsnY3JlYXRlZCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5jcmVhdGVkID8gKHRoaXMuY3JlYXRlZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5jcmVhdGVkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVwZGF0ZWQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudXBkYXRlZCAhPT0gbnVsbCkge3RvUmV0dXJuWyd1cGRhdGVkJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnVwZGF0ZWQgPyAodGhpcy51cGRhdGVkIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnVwZGF0ZWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmlyc3ROYW1lICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmaXJzdE5hbWUnXSA9IHRoaXMuZmlyc3ROYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmdyZWV0aW5nTmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZ3JlZXRpbmdOYW1lJ10gPSB0aGlzLmdyZWV0aW5nTmFtZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbGFzdE5hbWUnXSA9IHRoaXMubGFzdE5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGFuZ3VhZ2VDb2RlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydsYW5ndWFnZUNvZGUnXSA9IHRoaXMubGFuZ3VhZ2VDb2RlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVtYWlsVmVyaWZpZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VtYWlsVmVyaWZpZWQnXSA9IHRoaXMuZW1haWxWZXJpZmllZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5yb2xlcyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncm9sZXMnXSA9IHRoaXMucm9sZXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGFzdExvZ2luICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmxhc3RMb2dpbiAhPT0gbnVsbCkge3RvUmV0dXJuWydsYXN0TG9naW4nXSA9ICd0b0FwaUpzb24nIGluIHRoaXMubGFzdExvZ2luID8gKHRoaXMubGFzdExvZ2luIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmxhc3RMb2dpbjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wdWJsaWNLZXlzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnB1YmxpY0tleXMgIT09IG51bGwpIHt0b1JldHVyblsncHVibGljS2V5cyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wdWJsaWNLZXlzID8gKHRoaXMucHVibGljS2V5cyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wdWJsaWNLZXlzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19
@@ -1,66 +0,0 @@
1
- // *********************************
2
- // Code generated by sdkgen
3
- // DO NOT EDIT!.
4
- //
5
- // API Service.
6
- // *********************************
7
- import { Injectable } from '@angular/core';
8
- import { GetImpersonationTokenRequest, GetImpersonationTokenResponse, GetSessionTokenRequest, GetSubjectBySessionRequest, GetSubjectResponse, GetTokenRequest, GetTokenResponse, ListPersonasRequest, ListPersonasResponse, ResetPasswordWithTokenRequest, } from './objects/';
9
- import { HttpHeaders, HttpClient } from '@angular/common/http';
10
- import { HostService } from '../_generated/host.service';
11
- import { map, share } from 'rxjs/operators';
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "@angular/common/http";
14
- import * as i2 from "../_generated/host.service";
15
- export class UserIAMApiService {
16
- constructor(http, hostService) {
17
- this.http = http;
18
- this.hostService = hostService;
19
- }
20
- apiOptions() {
21
- return {
22
- headers: new HttpHeaders({
23
- 'Content-Type': 'application/json'
24
- }),
25
- withCredentials: true
26
- };
27
- }
28
- getSubjectBySession(r) {
29
- const request = (r.toApiJson) ? r : new GetSubjectBySessionRequest(r);
30
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/GetSubjectBySession", request.toApiJson(), this.apiOptions())
31
- .pipe(map(resp => GetSubjectResponse.fromProto(resp)), share());
32
- }
33
- listPersonas(r) {
34
- const request = (r.toApiJson) ? r : new ListPersonasRequest(r);
35
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/ListPersonas", request.toApiJson(), this.apiOptions())
36
- .pipe(map(resp => ListPersonasResponse.fromProto(resp)), share());
37
- }
38
- getToken(r) {
39
- const request = (r.toApiJson) ? r : new GetTokenRequest(r);
40
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/GetToken", request.toApiJson(), this.apiOptions())
41
- .pipe(map(resp => GetTokenResponse.fromProto(resp)), share());
42
- }
43
- getSessionToken(r) {
44
- const request = (r.toApiJson) ? r : new GetSessionTokenRequest(r);
45
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/GetSessionToken", request.toApiJson(), this.apiOptions())
46
- .pipe(map(resp => GetTokenResponse.fromProto(resp)), share());
47
- }
48
- resetPasswordWithToken(r) {
49
- const request = (r.toApiJson) ? r : new ResetPasswordWithTokenRequest(r);
50
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/ResetPasswordWithToken", request.toApiJson(), Object.assign(Object.assign({}, this.apiOptions()), { observe: 'response' }));
51
- }
52
- getImpersonationToken(r) {
53
- const request = (r.toApiJson) ? r : new GetImpersonationTokenRequest(r);
54
- return this.http.post(this.hostService.hostWithScheme() + "/iam.v1.UserIAM/GetImpersonationToken", request.toApiJson(), this.apiOptions())
55
- .pipe(map(resp => GetImpersonationTokenResponse.fromProto(resp)), share());
56
- }
57
- }
58
- UserIAMApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function UserIAMApiService_Factory() { return new UserIAMApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.HostService)); }, token: UserIAMApiService, providedIn: "root" });
59
- UserIAMApiService.decorators = [
60
- { type: Injectable, args: [{ providedIn: 'root' },] }
61
- ];
62
- UserIAMApiService.ctorParameters = () => [
63
- { type: HttpClient },
64
- { type: HostService }
65
- ];
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1pYW0uYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL2NvZGVmcmVzaC92b2x1bWUvSUFNL3Nka3MvdHlwZXNjcmlwdC9zcmMvaWFtX3Nkay9zcmMvIiwic291cmNlcyI6WyJsaWIvX2ludGVybmFsL3VzZXItaWFtLmFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQztBQUNwQywyQkFBMkI7QUFDM0IsZ0JBQWdCO0FBQ2hCLEVBQUU7QUFDRixlQUFlO0FBQ2Ysb0NBQW9DO0FBQ3BDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNDLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isc0JBQXNCLEVBQ3RCLDBCQUEwQixFQUMxQixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLDZCQUE2QixHQUNwQyxNQUFNLFlBQVksQ0FBQztBQWFwQixPQUFPLEVBQUMsV0FBVyxFQUFFLFVBQVUsRUFBZSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsR0FBRyxFQUFFLEtBQUssRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRzFDLE1BQU0sT0FBTyxpQkFBaUI7SUFFMUIsWUFBb0IsSUFBZ0IsRUFBVSxXQUF3QjtRQUFsRCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFDdEUsQ0FBQztJQUVPLFVBQVU7UUFDZCxPQUFPO1lBQ0gsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO2dCQUNyQixjQUFjLEVBQUUsa0JBQWtCO2FBQ3JDLENBQUM7WUFDRixlQUFlLEVBQUUsSUFBSTtTQUN4QixDQUFDO0lBQ04sQ0FBQztJQUVELG1CQUFtQixDQUFDLENBQW1FO1FBQ25GLE1BQU0sT0FBTyxHQUFHLENBQThCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQThCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsSSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE4QixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxHQUFHLHFDQUFxQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDaEssSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUMvQyxLQUFLLEVBQUUsQ0FDVixDQUFDO0lBQ1YsQ0FBQztJQUNELFlBQVksQ0FBQyxDQUFxRDtRQUM5RCxNQUFNLE9BQU8sR0FBRyxDQUF1QixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUF1QixDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0csT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBZ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsR0FBRyw4QkFBOEIsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQzNKLElBQUksQ0FDRCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFDakQsS0FBSyxFQUFFLENBQ1YsQ0FBQztJQUNWLENBQUM7SUFDRCxRQUFRLENBQUMsQ0FBNkM7UUFDbEQsTUFBTSxPQUFPLEdBQUcsQ0FBbUIsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBbUIsQ0FBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE0QixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxHQUFHLDBCQUEwQixFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDbkosSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUM3QyxLQUFLLEVBQUUsQ0FDVixDQUFDO0lBQ1YsQ0FBQztJQUNELGVBQWUsQ0FBQyxDQUEyRDtRQUN2RSxNQUFNLE9BQU8sR0FBRyxDQUEwQixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUEwQixDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBNEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsR0FBRyxpQ0FBaUMsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQzFKLElBQUksQ0FDRCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFDN0MsS0FBSyxFQUFFLENBQ1YsQ0FBQztJQUNWLENBQUM7SUFDRCxzQkFBc0IsQ0FBQyxDQUF5RTtRQUM1RixNQUFNLE9BQU8sR0FBRyxDQUFpQyxDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFpQyxDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksNkJBQTZCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0ksT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxHQUFHLHdDQUF3QyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsa0NBQU0sSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFFLE9BQU8sRUFBRSxVQUFVLElBQUUsQ0FBQztJQUNoTCxDQUFDO0lBQ0QscUJBQXFCLENBQUMsQ0FBdUU7UUFDekYsTUFBTSxPQUFPLEdBQUcsQ0FBZ0MsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBZ0MsQ0FBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXlDLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLEdBQUcsdUNBQXVDLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzthQUM3SyxJQUFJLENBQ0QsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsNkJBQTZCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzFELEtBQUssRUFBRSxDQUNWLENBQUM7SUFDVixDQUFDOzs7O1lBMURKLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQUxYLFVBQVU7WUFDdkIsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBHZXRJbXBlcnNvbmF0aW9uVG9rZW5SZXF1ZXN0LFxuICAgICAgICBHZXRJbXBlcnNvbmF0aW9uVG9rZW5SZXNwb25zZSxcbiAgICAgICAgR2V0U2Vzc2lvblRva2VuUmVxdWVzdCxcbiAgICAgICAgR2V0U3ViamVjdEJ5U2Vzc2lvblJlcXVlc3QsXG4gICAgICAgIEdldFN1YmplY3RSZXNwb25zZSxcbiAgICAgICAgR2V0VG9rZW5SZXF1ZXN0LFxuICAgICAgICBHZXRUb2tlblJlc3BvbnNlLFxuICAgICAgICBMaXN0UGVyc29uYXNSZXF1ZXN0LFxuICAgICAgICBMaXN0UGVyc29uYXNSZXNwb25zZSxcbiAgICAgICAgUmVzZXRQYXNzd29yZFdpdGhUb2tlblJlcXVlc3QsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgR2V0SW1wZXJzb25hdGlvblRva2VuUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0SW1wZXJzb25hdGlvblRva2VuUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldFNlc3Npb25Ub2tlblJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFN1YmplY3RCeVNlc3Npb25SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRTdWJqZWN0UmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldFRva2VuUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0VG9rZW5SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFBlcnNvbmFzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdFBlcnNvbmFzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFJlc2V0UGFzc3dvcmRXaXRoVG9rZW5SZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2ludGVyZmFjZXMvJztcbmltcG9ydCB7SHR0cEhlYWRlcnMsIEh0dHBDbGllbnQsIEh0dHBSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtIb3N0U2VydmljZX0gZnJvbSAnLi4vX2dlbmVyYXRlZC9ob3N0LnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzaGFyZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBVc2VySUFNQXBpU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgaG9zdFNlcnZpY2U6IEhvc3RTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcGlPcHRpb25zKCk6IHtoZWFkZXJzOiBIdHRwSGVhZGVycywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFufSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgZ2V0U3ViamVjdEJ5U2Vzc2lvbihyOiBHZXRTdWJqZWN0QnlTZXNzaW9uUmVxdWVzdCB8IEdldFN1YmplY3RCeVNlc3Npb25SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRTdWJqZWN0UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFN1YmplY3RCeVNlc3Npb25SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFN1YmplY3RCeVNlc3Npb25SZXF1ZXN0PnIpIDogbmV3IEdldFN1YmplY3RCeVNlc3Npb25SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0U3ViamVjdFJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lKCkgKyBcIi9pYW0udjEuVXNlcklBTS9HZXRTdWJqZWN0QnlTZXNzaW9uXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0U3ViamVjdFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSksXG4gICAgICAgICAgICAgICAgc2hhcmUoKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgbGlzdFBlcnNvbmFzKHI6IExpc3RQZXJzb25hc1JlcXVlc3QgfCBMaXN0UGVyc29uYXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UGVyc29uYXNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdFBlcnNvbmFzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0UGVyc29uYXNSZXF1ZXN0PnIpIDogbmV3IExpc3RQZXJzb25hc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0UGVyc29uYXNSZXNwb25zZUludGVyZmFjZT4odGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZSgpICsgXCIvaWFtLnYxLlVzZXJJQU0vTGlzdFBlcnNvbmFzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdFBlcnNvbmFzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKSxcbiAgICAgICAgICAgICAgICBzaGFyZSgpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBnZXRUb2tlbihyOiBHZXRUb2tlblJlcXVlc3QgfCBHZXRUb2tlblJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEdldFRva2VuUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFRva2VuUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRUb2tlblJlcXVlc3Q+cikgOiBuZXcgR2V0VG9rZW5SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0VG9rZW5SZXNwb25zZUludGVyZmFjZT4odGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZSgpICsgXCIvaWFtLnYxLlVzZXJJQU0vR2V0VG9rZW5cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRUb2tlblJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSksXG4gICAgICAgICAgICAgICAgc2hhcmUoKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0U2Vzc2lvblRva2VuKHI6IEdldFNlc3Npb25Ub2tlblJlcXVlc3QgfCBHZXRTZXNzaW9uVG9rZW5SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRUb2tlblJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRTZXNzaW9uVG9rZW5SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFNlc3Npb25Ub2tlblJlcXVlc3Q+cikgOiBuZXcgR2V0U2Vzc2lvblRva2VuUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldFRva2VuUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuaG9zdFNlcnZpY2UuaG9zdFdpdGhTY2hlbWUoKSArIFwiL2lhbS52MS5Vc2VySUFNL0dldFNlc3Npb25Ub2tlblwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFRva2VuUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKSxcbiAgICAgICAgICAgICAgICBzaGFyZSgpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICByZXNldFBhc3N3b3JkV2l0aFRva2VuKHI6IFJlc2V0UGFzc3dvcmRXaXRoVG9rZW5SZXF1ZXN0IHwgUmVzZXRQYXNzd29yZFdpdGhUb2tlblJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UmVzZXRQYXNzd29yZFdpdGhUb2tlblJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8UmVzZXRQYXNzd29yZFdpdGhUb2tlblJlcXVlc3Q+cikgOiBuZXcgUmVzZXRQYXNzd29yZFdpdGhUb2tlblJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lKCkgKyBcIi9pYW0udjEuVXNlcklBTS9SZXNldFBhc3N3b3JkV2l0aFRva2VuXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBnZXRJbXBlcnNvbmF0aW9uVG9rZW4ocjogR2V0SW1wZXJzb25hdGlvblRva2VuUmVxdWVzdCB8IEdldEltcGVyc29uYXRpb25Ub2tlblJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEdldEltcGVyc29uYXRpb25Ub2tlblJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRJbXBlcnNvbmF0aW9uVG9rZW5SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldEltcGVyc29uYXRpb25Ub2tlblJlcXVlc3Q+cikgOiBuZXcgR2V0SW1wZXJzb25hdGlvblRva2VuUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldEltcGVyc29uYXRpb25Ub2tlblJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lKCkgKyBcIi9pYW0udjEuVXNlcklBTS9HZXRJbXBlcnNvbmF0aW9uVG9rZW5cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRJbXBlcnNvbmF0aW9uVG9rZW5SZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpLFxuICAgICAgICAgICAgICAgIHNoYXJlKClcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIFxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiL2NvZGVmcmVzaC92b2x1bWUvSUFNL3Nka3MvdHlwZXNjcmlwdC9zcmMvaWFtX3Nkay9zcmMvIiwic291cmNlcyI6WyJsaWIvaHR0cC9odHRwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgaW50ZXJmYWNlIExvZ2luUmVxdWVzdEludGVyZmFjZSB7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICBwcm92aWRlcklkVG9rZW4/OiBzdHJpbmc7XG4gIHByb3ZpZGVyPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2luUmVzcG9uc2VJbnRlcmZhY2Uge1xuICBzZXNzaW9uSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb3V0UmVzcG9uc2VJbnRlcmZhY2Uge1xuICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNTT0xvZ2luUmVxdWVzdEludGVyZmFjZSB7XG4gIG5leHRVcmw/OiBzdHJpbmc7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbn1cbiJdfQ==
@@ -1,102 +0,0 @@
1
- export class LoginRequest {
2
- constructor(kwargs) {
3
- if (!kwargs) {
4
- return;
5
- }
6
- Object.assign(this, kwargs);
7
- }
8
- static fromProto(proto) {
9
- if (!proto) {
10
- return new LoginRequest();
11
- }
12
- let m = new LoginRequest();
13
- m = Object.assign(m, proto);
14
- return m;
15
- }
16
- toApiJson() {
17
- if (typeof this.namespace === 'undefined' &&
18
- typeof this.type === 'undefined' &&
19
- typeof this.email === 'undefined' &&
20
- typeof this.password === 'undefined' &&
21
- typeof this.providerIdToken === 'undefined' &&
22
- typeof this.provider === 'undefined') {
23
- return {};
24
- }
25
- return {
26
- 'namespace': (typeof this.namespace !== 'undefined') ? this.namespace : null,
27
- 'type': (typeof this.type !== 'undefined') ? this.type : null,
28
- 'email': (typeof this.email !== 'undefined') ? this.email : null,
29
- 'password': (typeof this.password !== 'undefined') ? this.password : null,
30
- 'provider_id_token': (typeof this.providerIdToken !== 'undefined') ? this.providerIdToken : null,
31
- 'provider': (typeof this.provider !== 'undefined') ? this.provider : null
32
- };
33
- }
34
- }
35
- export class LoginResponse {
36
- constructor(kwargs) {
37
- if (!kwargs) {
38
- return;
39
- }
40
- Object.assign(this, kwargs);
41
- }
42
- static fromProto(proto) {
43
- const m = new LoginResponse();
44
- m.sessionId = proto['session_id'];
45
- return m;
46
- }
47
- toApiJson() {
48
- if (typeof this.sessionId === 'undefined') {
49
- return {};
50
- }
51
- return {
52
- 'sessionId': (typeof this.sessionId !== 'undefined') ? this.sessionId : null
53
- };
54
- }
55
- }
56
- export class LogoutResponse {
57
- constructor(kwargs) {
58
- if (!kwargs) {
59
- return;
60
- }
61
- Object.assign(this, kwargs);
62
- }
63
- static fromProto(proto) {
64
- let m = new LogoutResponse();
65
- m = Object.assign(m, proto);
66
- return m;
67
- }
68
- toApiJson() {
69
- if (typeof this.success === 'undefined') {
70
- return {};
71
- }
72
- return {
73
- 'success': (typeof this.success !== 'undefined') ? this.success : null
74
- };
75
- }
76
- }
77
- export class SSOLoginRequest {
78
- constructor(kwargs) {
79
- if (!kwargs) {
80
- return;
81
- }
82
- Object.assign(this, kwargs);
83
- }
84
- static fromProto(proto) {
85
- let m = new SSOLoginRequest();
86
- m = Object.assign(m, proto);
87
- return m;
88
- }
89
- toApiJson() {
90
- if (typeof this.nextUrl === 'undefined' &&
91
- typeof this.namespace === 'undefined' &&
92
- typeof this.type === 'undefined') {
93
- return null;
94
- }
95
- return {
96
- 'next_url': (typeof this.nextUrl !== 'undefined') ? this.nextUrl : null,
97
- 'namespace': (typeof this.namespace !== 'undefined') ? this.namespace : null,
98
- 'type': (typeof this.type !== 'undefined') ? this.type : null
99
- };
100
- }
101
- }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIvY29kZWZyZXNoL3ZvbHVtZS9JQU0vc2Rrcy90eXBlc2NyaXB0L3NyYy9pYW1fc2RrL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9odHRwL2h0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLFlBQVk7SUFpQnZCLFlBQVksTUFBOEI7UUFDeEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU87U0FDUjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFkRCxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDekIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sSUFBSSxZQUFZLEVBQUUsQ0FBQztTQUMzQjtRQUNELElBQUksQ0FBQyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQVNELFNBQVM7UUFDUCxJQUNFLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxXQUFXO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXO1lBQ2hDLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXO1lBQ3BDLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXO1lBQzNDLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLEVBQUU7WUFDdEMsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUk7WUFDNUUs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UUFDOUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQVNELFNBQVM7UUFDUCxJQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXO1lBQ25DLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxXQUFXO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLEVBQUU7WUFDbEMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU87WUFDTCxVQUFVLEVBQUUsQ0FBQyxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUk7WUFDdkUsV0FBVyxFQUFFLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQzVFLE1BQU0sRUFBRSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSTtTQUM5RCxDQUFBO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTG9naW5SZXF1ZXN0SW50ZXJmYWNlLCBMb2dpblJlc3BvbnNlSW50ZXJmYWNlLCBMb2dvdXRSZXNwb25zZUludGVyZmFjZSwgU1NPTG9naW5SZXF1ZXN0SW50ZXJmYWNlXG59IGZyb20gJy4vaHR0cC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgTG9naW5SZXF1ZXN0IGltcGxlbWVudHMgTG9naW5SZXF1ZXN0SW50ZXJmYWNlIHtcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgcHJvdmlkZXJJZFRva2VuOiBzdHJpbmc7XG4gIHByb3ZpZGVyOiBzdHJpbmc7XG5cbiAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTG9naW5SZXF1ZXN0IHtcbiAgICBpZiAoIXByb3RvKSB7XG4gICAgICByZXR1cm4gbmV3IExvZ2luUmVxdWVzdCgpO1xuICAgIH1cbiAgICBsZXQgbSA9IG5ldyBMb2dpblJlcXVlc3QoKTtcbiAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgcmV0dXJuIG07XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBMb2dpblJlcXVlc3RJbnRlcmZhY2UpIHtcbiAgICBpZiAoIWt3YXJncykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gIH1cblxuICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICBpZiAoXG4gICAgICB0eXBlb2YgdGhpcy5uYW1lc3BhY2UgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICB0eXBlb2YgdGhpcy50eXBlID09PSAndW5kZWZpbmVkJyAmJlxuICAgICAgdHlwZW9mIHRoaXMuZW1haWwgPT09ICd1bmRlZmluZWQnICYmXG4gICAgICB0eXBlb2YgdGhpcy5wYXNzd29yZCA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHR5cGVvZiB0aGlzLnByb3ZpZGVySWRUb2tlbiA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHR5cGVvZiB0aGlzLnByb3ZpZGVyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAnbmFtZXNwYWNlJzogKHR5cGVvZiB0aGlzLm5hbWVzcGFjZSAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy5uYW1lc3BhY2UgOiBudWxsLFxuICAgICAgJ3R5cGUnOiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy50eXBlIDogbnVsbCxcbiAgICAgICdlbWFpbCc6ICh0eXBlb2YgdGhpcy5lbWFpbCAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy5lbWFpbCA6IG51bGwsXG4gICAgICAncGFzc3dvcmQnOiAodHlwZW9mIHRoaXMucGFzc3dvcmQgIT09ICd1bmRlZmluZWQnKSA/IHRoaXMucGFzc3dvcmQgOiBudWxsLFxuICAgICAgJ3Byb3ZpZGVyX2lkX3Rva2VuJzogKHR5cGVvZiB0aGlzLnByb3ZpZGVySWRUb2tlbiAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy5wcm92aWRlcklkVG9rZW4gOiBudWxsLFxuICAgICAgJ3Byb3ZpZGVyJzogKHR5cGVvZiB0aGlzLnByb3ZpZGVyICE9PSAndW5kZWZpbmVkJykgPyB0aGlzLnByb3ZpZGVyIDogbnVsbFxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTG9naW5SZXNwb25zZSBpbXBsZW1lbnRzIExvZ2luUmVzcG9uc2VJbnRlcmZhY2Uge1xuICBzZXNzaW9uSWQ6IHN0cmluZztcblxuICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMb2dpblJlc3BvbnNlIHtcbiAgICBjb25zdCBtID0gbmV3IExvZ2luUmVzcG9uc2UoKTtcbiAgICBtLnNlc3Npb25JZCA9IHByb3RvWydzZXNzaW9uX2lkJ107XG4gICAgcmV0dXJuIG07XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBMb2dpblJlcXVlc3RJbnRlcmZhY2UpIHtcbiAgICBpZiAoIWt3YXJncykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gIH1cblxuICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICBpZiAoXG4gICAgICB0eXBlb2YgdGhpcy5zZXNzaW9uSWQgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICdzZXNzaW9uSWQnOiAodHlwZW9mIHRoaXMuc2Vzc2lvbklkICE9PSAndW5kZWZpbmVkJykgPyB0aGlzLnNlc3Npb25JZCA6IG51bGxcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExvZ291dFJlc3BvbnNlIGltcGxlbWVudHMgTG9nb3V0UmVzcG9uc2VJbnRlcmZhY2Uge1xuICBzdWNjZXNzOiBib29sZWFuO1xuXG4gIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExvZ291dFJlc3BvbnNlIHtcbiAgICBsZXQgbSA9IG5ldyBMb2dvdXRSZXNwb25zZSgpO1xuICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICByZXR1cm4gbTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKGt3YXJncz86IExvZ291dFJlc3BvbnNlSW50ZXJmYWNlKSB7XG4gICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICB9XG5cbiAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgaWYgKFxuICAgICAgdHlwZW9mIHRoaXMuc3VjY2VzcyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ3N1Y2Nlc3MnOiAodHlwZW9mIHRoaXMuc3VjY2VzcyAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy5zdWNjZXNzIDogbnVsbFxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU1NPTG9naW5SZXF1ZXN0IGltcGxlbWVudHMgU1NPTG9naW5SZXF1ZXN0SW50ZXJmYWNlIHtcbiAgbmV4dFVybDogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuXG4gIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFNTT0xvZ2luUmVxdWVzdCB7XG4gICAgbGV0IG0gPSBuZXcgU1NPTG9naW5SZXF1ZXN0KCk7XG4gICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgIHJldHVybiBtO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioa3dhcmdzPzogU1NPTG9naW5SZXF1ZXN0SW50ZXJmYWNlKSB7XG4gICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICB9XG5cbiAgdG9BcGlKc29uKCk6IGFueSB7XG4gICAgaWYgKFxuICAgICAgdHlwZW9mIHRoaXMubmV4dFVybCA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHR5cGVvZiB0aGlzLm5hbWVzcGFjZSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHR5cGVvZiB0aGlzLnR5cGUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ25leHRfdXJsJzogKHR5cGVvZiB0aGlzLm5leHRVcmwgIT09ICd1bmRlZmluZWQnKSA/IHRoaXMubmV4dFVybCA6IG51bGwsXG4gICAgICAnbmFtZXNwYWNlJzogKHR5cGVvZiB0aGlzLm5hbWVzcGFjZSAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy5uYW1lc3BhY2UgOiBudWxsLFxuICAgICAgJ3R5cGUnOiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3VuZGVmaW5lZCcpID8gdGhpcy50eXBlIDogbnVsbFxuICAgIH1cbiAgfVxufVxuIl19
@@ -1,68 +0,0 @@
1
- import { HttpClient, HttpHeaders } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { map, share } from 'rxjs/operators';
4
- import { HostService } from '../_generated/host.service';
5
- import { LoginRequest, LoginResponse, LogoutResponse, SSOLoginRequest } from './http';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common/http";
8
- import * as i2 from "../_generated/host.service";
9
- export class IamHttpApiService {
10
- constructor(http, hostService) {
11
- this.http = http;
12
- this.hostService = hostService;
13
- }
14
- apiOptions(includeCredentials) {
15
- if (includeCredentials) {
16
- return {
17
- headers: new HttpHeaders({
18
- 'Content-Type': 'application/x-www-form-urlencoded'
19
- }),
20
- withCredentials: true
21
- };
22
- }
23
- return {
24
- headers: new HttpHeaders({
25
- 'Content-Type': 'application/x-www-form-urlencoded'
26
- })
27
- };
28
- }
29
- login(r) {
30
- const request = (r.toApiJson) ? r : new LoginRequest(r);
31
- return this.http
32
- .post(this.hostService.httpsHostWithScheme() + '/_ajax/v1/login', request.toApiJson(), this.apiOptions())
33
- .pipe(map((resp) => LoginResponse.fromProto(resp)), share());
34
- }
35
- logout() {
36
- return this.http
37
- .post(this.hostService.httpsHostWithScheme() + '/_ajax/v1/logout', {}, this.apiOptions(true))
38
- .pipe(map(resp => LogoutResponse.fromProto(resp)), share());
39
- }
40
- ssoLogin(r) {
41
- const request = (r.toApiJson) ? r : new SSOLoginRequest(r);
42
- let params = '';
43
- const apiJson = request.toApiJson();
44
- for (const key in apiJson) {
45
- if (!apiJson.hasOwnProperty(key)) {
46
- continue;
47
- }
48
- const value = apiJson[key];
49
- if (value === null) {
50
- continue;
51
- }
52
- if (params.length > 0) {
53
- params += '&';
54
- }
55
- params += `${key}=${value}`;
56
- }
57
- window.location.href = `${this.hostService.httpsHostWithScheme()}/sso-login${params.length > 0 ? '?' : ''}${params}`;
58
- }
59
- }
60
- IamHttpApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function IamHttpApiService_Factory() { return new IamHttpApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.HostService)); }, token: IamHttpApiService, providedIn: "root" });
61
- IamHttpApiService.decorators = [
62
- { type: Injectable, args: [{ providedIn: 'root' },] }
63
- ];
64
- IamHttpApiService.ctorParameters = () => [
65
- { type: HttpClient },
66
- { type: HostService }
67
- ];
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWFtLmh0dHAuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL2NvZGVmcmVzaC92b2x1bWUvSUFNL3Nka3MvdHlwZXNjcmlwdC9zcmMvaWFtX3Nkay9zcmMvIiwic291cmNlcyI6WyJsaWIvaHR0cC9pYW0uaHR0cC5hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFekQsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7OztBQUd0RixNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLElBQWdCLEVBQVUsV0FBd0I7UUFBbEQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUcsQ0FBQztJQUVsRSxVQUFVLENBQUMsa0JBQTRCO1FBQzdDLElBQUksa0JBQWtCLEVBQUU7WUFDdEIsT0FBTztnQkFDTCxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7b0JBQ3ZCLGNBQWMsRUFBRSxtQ0FBbUM7aUJBQ3BELENBQUM7Z0JBQ0YsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQztTQUNIO1FBQ0QsT0FBTztZQUNMLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDdkIsY0FBYyxFQUFFLG1DQUFtQzthQUNwRCxDQUFDO1NBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsQ0FBdUM7UUFDM0MsTUFBTSxPQUFPLEdBQUcsQ0FBZ0IsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixJQUFJLENBQXlCLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ2hJLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUE0QixFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ3BFLEtBQUssRUFBRSxDQUNSLENBQUM7SUFDTixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixJQUFJLENBQTBCLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNySCxJQUFJLENBQ0gsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUMzQyxLQUFLLEVBQUUsQ0FDUixDQUFDO0lBQ04sQ0FBQztJQUVELFFBQVEsQ0FBQyxDQUE2QztRQUNwRCxNQUFNLE9BQU8sR0FBRyxDQUFtQixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9GLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUVoQixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDcEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUU7WUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2hDLFNBQVM7YUFDVjtZQUNELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzQixJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7Z0JBQ2xCLFNBQVM7YUFDVjtZQUNELElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLE1BQU0sSUFBSSxHQUFHLENBQUM7YUFDZjtZQUNELE1BQU0sSUFBSSxHQUFHLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztTQUM3QjtRQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxhQUFhLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQztJQUN2SCxDQUFDOzs7O1lBM0RGLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQVR2QixVQUFVO1lBS1YsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBzaGFyZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgSG9zdFNlcnZpY2UgfSBmcm9tICcuLi9fZ2VuZXJhdGVkL2hvc3Quc2VydmljZSc7XG5pbXBvcnQgeyBMb2dpblJlcXVlc3RJbnRlcmZhY2UsIExvZ2luUmVzcG9uc2VJbnRlcmZhY2UsIExvZ291dFJlc3BvbnNlSW50ZXJmYWNlLCBTU09Mb2dpblJlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICcuL2h0dHAuaW50ZXJmYWNlJztcbmltcG9ydCB7IExvZ2luUmVxdWVzdCwgTG9naW5SZXNwb25zZSwgTG9nb3V0UmVzcG9uc2UsIFNTT0xvZ2luUmVxdWVzdCB9IGZyb20gJy4vaHR0cCc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIElhbUh0dHBBcGlTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGhvc3RTZXJ2aWNlOiBIb3N0U2VydmljZSkge31cblxuICBwcml2YXRlIGFwaU9wdGlvbnMoaW5jbHVkZUNyZWRlbnRpYWxzPzogYm9vbGVhbik6IHsgaGVhZGVyczogSHR0cEhlYWRlcnM7IHdpdGhDcmVkZW50aWFscz86IGJvb2xlYW4gfSB7XG4gICAgaWYgKGluY2x1ZGVDcmVkZW50aWFscykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcbiAgICAgICAgfSksXG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xuICAgICAgfSlcbiAgICB9O1xuICB9XG5cbiAgbG9naW4ocjogTG9naW5SZXF1ZXN0IHwgTG9naW5SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdCA9ICgoPExvZ2luUmVxdWVzdD5yKS50b0FwaUpzb24pID8gPExvZ2luUmVxdWVzdD5yIDogbmV3IExvZ2luUmVxdWVzdChyKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdDxMb2dpblJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLmhvc3RTZXJ2aWNlLmh0dHBzSG9zdFdpdGhTY2hlbWUoKSArICcvX2FqYXgvdjEvbG9naW4nLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3A6IExvZ2luUmVzcG9uc2VJbnRlcmZhY2UpID0+IExvZ2luUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKSxcbiAgICAgICAgc2hhcmUoKVxuICAgICAgKTtcbiAgfVxuXG4gIGxvZ291dCgpOiBPYnNlcnZhYmxlPExvZ291dFJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3Q8TG9nb3V0UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuaG9zdFNlcnZpY2UuaHR0cHNIb3N0V2l0aFNjaGVtZSgpICsgJy9fYWpheC92MS9sb2dvdXQnLCB7fSwgdGhpcy5hcGlPcHRpb25zKHRydWUpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXNwID0+IExvZ291dFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSksXG4gICAgICAgIHNoYXJlKClcbiAgICAgICk7XG4gIH1cblxuICBzc29Mb2dpbihyOiBTU09Mb2dpblJlcXVlc3QgfCBTU09Mb2dpblJlcXVlc3RJbnRlcmZhY2UpOiB2b2lkIHtcbiAgICBjb25zdCByZXF1ZXN0ID0gKCg8U1NPTG9naW5SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyA8U1NPTG9naW5SZXF1ZXN0PnIgOiBuZXcgU1NPTG9naW5SZXF1ZXN0KHIpO1xuICAgIGxldCBwYXJhbXMgPSAnJztcblxuICAgIGNvbnN0IGFwaUpzb24gPSByZXF1ZXN0LnRvQXBpSnNvbigpO1xuICAgIGZvciAoY29uc3Qga2V5IGluIGFwaUpzb24pIHtcbiAgICAgIGlmICghYXBpSnNvbi5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWUgPSBhcGlKc29uW2tleV07XG4gICAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAocGFyYW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcGFyYW1zICs9ICcmJztcbiAgICAgIH1cbiAgICAgIHBhcmFtcyArPSBgJHtrZXl9PSR7dmFsdWV9YDtcbiAgICB9XG5cbiAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGAke3RoaXMuaG9zdFNlcnZpY2UuaHR0cHNIb3N0V2l0aFNjaGVtZSgpfS9zc28tbG9naW4ke3BhcmFtcy5sZW5ndGggPiAwID8gJz8nIDogJyd9JHtwYXJhbXN9YDtcbiAgfVxufVxuIl19