@lifeready/core 1.0.21 → 1.0.22

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 (228) hide show
  1. package/bundles/lifeready-core.umd.js +9745 -9700
  2. package/bundles/lifeready-core.umd.js.map +1 -1
  3. package/bundles/lifeready-core.umd.min.js +2 -2
  4. package/bundles/lifeready-core.umd.min.js.map +1 -1
  5. package/esm2015/lib/_common/run-outside-angular.js +2 -2
  6. package/esm2015/lib/_common/types.js +1 -1
  7. package/esm2015/lib/api/lr-apollo.service.js +3 -3
  8. package/esm2015/lib/api/lr-graphql/lr-graphql.service.js +3 -3
  9. package/esm2015/lib/api/query-processor/common-processors.service.js +3 -3
  10. package/esm2015/lib/api/query-processor/query-processor.service.js +4 -4
  11. package/esm2015/lib/api/query-processor/tp-password-reset-processor.service.js +6 -5
  12. package/esm2015/lib/api/types/lr-graphql.types.js +1 -1
  13. package/esm2015/lib/auth/auth.gql.js +1 -28
  14. package/esm2015/lib/auth/auth.types.js +1 -1
  15. package/esm2015/lib/auth/life-ready-auth.service.js +32 -31
  16. package/esm2015/lib/category/category.gql.js +1 -1
  17. package/esm2015/lib/category/category.service.js +6 -6
  18. package/esm2015/lib/contact-card/contact-card.gql.js +79 -0
  19. package/esm2015/lib/contact-card/contact-card.service.js +154 -0
  20. package/esm2015/lib/contact-card/contact-card2.gql.js +29 -0
  21. package/esm2015/lib/contact-card/contact-card2.service.js +103 -0
  22. package/esm2015/lib/encryption/encryption.service.js +189 -0
  23. package/esm2015/lib/file-upload/file-upload.service.js +74 -0
  24. package/esm2015/lib/file-upload/file-upload.types.js +1 -0
  25. package/esm2015/lib/{auth → idle}/idle.service.js +7 -7
  26. package/esm2015/lib/{auth → idle}/idle.types.js +1 -1
  27. package/esm2015/lib/items2/item2.service.js +20 -20
  28. package/esm2015/lib/key/key-factory.service.js +237 -0
  29. package/esm2015/lib/{cryptography → key}/key-graph.service.js +10 -10
  30. package/esm2015/lib/key/key-meta.service.js +200 -0
  31. package/esm2015/lib/key/key.service.js +124 -0
  32. package/esm2015/lib/key/key.types.js +11 -0
  33. package/esm2015/lib/key-exchange/key-exchange.gql.js +188 -0
  34. package/esm2015/lib/key-exchange/key-exchange.service.js +443 -0
  35. package/esm2015/lib/key-exchange/key-exchange.types.js +7 -0
  36. package/esm2015/lib/key-exchange/key-exchange2.gql.js +171 -0
  37. package/esm2015/lib/key-exchange/key-exchange2.service.js +500 -0
  38. package/esm2015/lib/lbop/lbop.service.js +355 -0
  39. package/esm2015/lib/life-ready.module.js +2 -27
  40. package/esm2015/lib/lock/lock.gql.js +40 -0
  41. package/esm2015/lib/lock/lock.service.js +64 -0
  42. package/esm2015/lib/message/message.gql.js +32 -0
  43. package/esm2015/lib/message/message.service.js +116 -0
  44. package/esm2015/lib/message/message.types.js +1 -0
  45. package/esm2015/lib/password/password.gql.js +28 -0
  46. package/esm2015/lib/password/password.service.js +315 -0
  47. package/esm2015/lib/persist/persist.service.js +180 -0
  48. package/esm2015/lib/profile/profile-details.service.js +214 -0
  49. package/esm2015/lib/profile/profile.gql.js +97 -0
  50. package/esm2015/lib/profile/profile.service.js +169 -0
  51. package/esm2015/lib/profile/profile.types.js +34 -0
  52. package/esm2015/lib/record/record-attachment.service.js +15 -15
  53. package/esm2015/lib/record/record.service.js +3 -3
  54. package/esm2015/lib/register/register.service.js +172 -0
  55. package/esm2015/lib/scenario/scenario.controller.js +2 -2
  56. package/esm2015/lib/scenario/{scenario.gql.private.js → scenario.private.gql.js} +1 -1
  57. package/esm2015/lib/scenario/scenario.service.js +9 -9
  58. package/esm2015/lib/scenario/scenario.types.js +1 -1
  59. package/esm2015/lib/shared-contact-card/shared-contact-card.service.js +119 -0
  60. package/esm2015/lib/shared-contact-card/shared-contact-card2.gql.js +41 -0
  61. package/esm2015/lib/shared-contact-card/shared-contact-card2.service.js +117 -0
  62. package/esm2015/lib/slip39/slip39.service.js +169 -0
  63. package/esm2015/lib/time/time.service.js +146 -0
  64. package/esm2015/lib/tp-assembly/tp-assembly.js +365 -0
  65. package/esm2015/lib/tp-assembly/tp-assembly.private.gql.js +22 -0
  66. package/esm2015/lib/tp-assembly/tp-assembly.types.js +1 -0
  67. package/esm2015/lib/tp-password-reset/tp-password-reset-request.service.js +100 -0
  68. package/esm2015/lib/tp-password-reset/tp-password-reset-user.service.js +117 -0
  69. package/esm2015/lib/tp-password-reset/tp-password-reset.constants.js +4 -0
  70. package/esm2015/lib/tp-password-reset/tp-password-reset.controller.js +34 -0
  71. package/esm2015/lib/tp-password-reset/tp-password-reset.gql.js +74 -0
  72. package/esm2015/lib/tp-password-reset/tp-password-reset.private.gql.js +165 -0
  73. package/esm2015/lib/tp-password-reset/tp-password-reset.private.service.js +54 -0
  74. package/esm2015/lib/tp-password-reset/tp-password-reset.service.js +92 -0
  75. package/esm2015/lib/tp-password-reset/tp-password-reset.types.js +1 -0
  76. package/esm2015/lib/trusted-party/trusted-party.gql.js +148 -0
  77. package/esm2015/lib/trusted-party/trusted-party.service.js +326 -0
  78. package/esm2015/lib/trusted-party/trusted-party.types.js +41 -0
  79. package/esm2015/lib/trusted-party/trusted-party2.gql.js +64 -0
  80. package/esm2015/lib/trusted-party/trusted-party2.gql.private.js +25 -0
  81. package/esm2015/lib/trusted-party/trusted-party2.service.js +224 -0
  82. package/esm2015/lib/trusted-party/trusted-party2.types.js +1 -0
  83. package/esm2015/lib/two-factor/two-factor.service.js +74 -0
  84. package/esm2015/lib/user/user.gql.js +60 -0
  85. package/esm2015/lib/user/user.service.js +79 -0
  86. package/esm2015/lib/user/user.types.js +1 -0
  87. package/esm2015/lib/web-crypto/web-crypto.service.js +29 -0
  88. package/esm2015/lifeready-core.js +15 -13
  89. package/esm2015/public-api.js +49 -51
  90. package/fesm2015/lifeready-core.js +9232 -9214
  91. package/fesm2015/lifeready-core.js.map +1 -1
  92. package/lib/_common/types.d.ts +3 -1
  93. package/lib/api/lr-apollo.service.d.ts +1 -1
  94. package/lib/api/lr-graphql/lr-graphql.service.d.ts +1 -1
  95. package/lib/api/query-processor/common-processors.service.d.ts +1 -1
  96. package/lib/api/query-processor/query-processor.service.d.ts +1 -1
  97. package/lib/api/query-processor/tp-password-reset-processor.service.d.ts +1 -1
  98. package/lib/api/types/lr-graphql.types.d.ts +11 -0
  99. package/lib/auth/auth.gql.d.ts +0 -3
  100. package/lib/auth/auth.types.d.ts +2 -2
  101. package/lib/auth/life-ready-auth.service.d.ts +12 -12
  102. package/lib/category/category.gql.d.ts +1 -1
  103. package/lib/category/category.service.d.ts +2 -2
  104. package/lib/{api → contact-card}/contact-card.service.d.ts +9 -9
  105. package/lib/contact-card/contact-card2.gql.d.ts +25 -0
  106. package/lib/{api → contact-card}/contact-card2.service.d.ts +11 -12
  107. package/lib/{cryptography → encryption}/encryption.service.d.ts +2 -2
  108. package/lib/{api/file.service.d.ts → file-upload/file-upload.service.d.ts} +3 -7
  109. package/lib/file-upload/file-upload.types.d.ts +5 -0
  110. package/lib/{auth → idle}/idle.service.d.ts +4 -4
  111. package/lib/items2/item2.service.d.ts +11 -11
  112. package/lib/{cryptography → key}/key-factory.service.d.ts +2 -2
  113. package/lib/{cryptography → key}/key-graph.service.d.ts +5 -5
  114. package/lib/{cryptography → key}/key-meta.service.d.ts +1 -1
  115. package/lib/{cryptography → key}/key.service.d.ts +2 -2
  116. package/lib/{cryptography/cryptography.types.d.ts → key/key.types.d.ts} +9 -13
  117. package/lib/{api → key-exchange}/key-exchange.service.d.ts +5 -5
  118. package/lib/{api → key-exchange}/key-exchange.types.d.ts +4 -4
  119. package/lib/{api → key-exchange}/key-exchange2.gql.d.ts +1 -1
  120. package/lib/{api → key-exchange}/key-exchange2.service.d.ts +71 -18
  121. package/lib/{auth → lbop}/lbop.service.d.ts +7 -7
  122. package/lib/{api → lock}/lock.gql.d.ts +1 -1
  123. package/lib/{api → lock}/lock.service.d.ts +1 -1
  124. package/lib/message/message.gql.d.ts +13 -0
  125. package/lib/message/message.service.d.ts +29 -0
  126. package/lib/message/message.types.d.ts +12 -0
  127. package/lib/password/password.gql.d.ts +3 -0
  128. package/lib/{auth → password}/password.service.d.ts +8 -8
  129. package/lib/{api → persist}/persist.service.d.ts +3 -3
  130. package/lib/{users → profile}/profile-details.service.d.ts +3 -3
  131. package/lib/{users → profile}/profile.gql.d.ts +2 -2
  132. package/lib/{users → profile}/profile.service.d.ts +6 -6
  133. package/lib/{users → profile}/profile.types.d.ts +1 -1
  134. package/lib/record/record-attachment.service.d.ts +6 -6
  135. package/lib/record/record.service.d.ts +1 -1
  136. package/lib/{auth → register}/register.service.d.ts +4 -4
  137. package/lib/scenario/scenario.controller.d.ts +1 -1
  138. package/lib/scenario/scenario.service.d.ts +2 -2
  139. package/lib/scenario/scenario.types.d.ts +1 -1
  140. package/lib/{api → shared-contact-card}/shared-contact-card.service.d.ts +9 -9
  141. package/lib/{api → shared-contact-card}/shared-contact-card2.gql.d.ts +1 -1
  142. package/lib/{api → shared-contact-card}/shared-contact-card2.service.d.ts +6 -6
  143. package/lib/{trusted-parties → tp-assembly}/tp-assembly.d.ts +7 -7
  144. package/lib/{trusted-parties → tp-assembly}/tp-assembly.types.d.ts +1 -1
  145. package/lib/{trusted-parties → tp-password-reset}/tp-password-reset-request.service.d.ts +4 -8
  146. package/lib/{trusted-parties → tp-password-reset}/tp-password-reset-user.service.d.ts +7 -13
  147. package/lib/{trusted-parties → tp-password-reset}/tp-password-reset.controller.d.ts +1 -1
  148. package/lib/tp-password-reset/tp-password-reset.gql.d.ts +63 -0
  149. package/lib/{trusted-parties/tp-password-reset.gql.d.ts → tp-password-reset/tp-password-reset.private.gql.d.ts} +1 -63
  150. package/lib/tp-password-reset/tp-password-reset.private.service.d.ts +59 -0
  151. package/lib/{trusted-parties → tp-password-reset}/tp-password-reset.service.d.ts +6 -89
  152. package/lib/tp-password-reset/tp-password-reset.types.d.ts +40 -0
  153. package/lib/{trusted-parties → trusted-party}/trusted-party.service.d.ts +7 -7
  154. package/lib/{trusted-parties → trusted-party}/trusted-party.types.d.ts +2 -3
  155. package/lib/{trusted-parties → trusted-party}/trusted-party2.gql.d.ts +0 -22
  156. package/lib/trusted-party/trusted-party2.gql.private.d.ts +23 -0
  157. package/lib/{trusted-parties → trusted-party}/trusted-party2.service.d.ts +11 -35
  158. package/lib/trusted-party/trusted-party2.types.d.ts +12 -0
  159. package/lib/{users → user}/user.gql.d.ts +1 -1
  160. package/lib/{users → user}/user.types.d.ts +1 -1
  161. package/lifeready-core.d.ts +14 -12
  162. package/lifeready-core.metadata.json +1 -1
  163. package/package.json +1 -1
  164. package/public-api.d.ts +48 -50
  165. package/esm2015/lib/api/contact-card.gql.js +0 -79
  166. package/esm2015/lib/api/contact-card.service.js +0 -154
  167. package/esm2015/lib/api/contact-card2.gql.js +0 -60
  168. package/esm2015/lib/api/contact-card2.service.js +0 -103
  169. package/esm2015/lib/api/file.service.js +0 -74
  170. package/esm2015/lib/api/key-exchange.gql.js +0 -188
  171. package/esm2015/lib/api/key-exchange.service.js +0 -442
  172. package/esm2015/lib/api/key-exchange.types.js +0 -7
  173. package/esm2015/lib/api/key-exchange2.gql.js +0 -171
  174. package/esm2015/lib/api/key-exchange2.service.js +0 -480
  175. package/esm2015/lib/api/lock.gql.js +0 -40
  176. package/esm2015/lib/api/lock.service.js +0 -64
  177. package/esm2015/lib/api/message.service.js +0 -138
  178. package/esm2015/lib/api/persist.service.js +0 -181
  179. package/esm2015/lib/api/shared-contact-card.service.js +0 -119
  180. package/esm2015/lib/api/shared-contact-card2.gql.js +0 -41
  181. package/esm2015/lib/api/shared-contact-card2.service.js +0 -117
  182. package/esm2015/lib/api/time.service.js +0 -146
  183. package/esm2015/lib/auth/lbop.service.js +0 -355
  184. package/esm2015/lib/auth/password.service.js +0 -315
  185. package/esm2015/lib/auth/register.service.js +0 -172
  186. package/esm2015/lib/auth/two-factor.service.js +0 -74
  187. package/esm2015/lib/cryptography/cryptography.types.js +0 -11
  188. package/esm2015/lib/cryptography/encryption.service.js +0 -189
  189. package/esm2015/lib/cryptography/key-factory.service.js +0 -237
  190. package/esm2015/lib/cryptography/key-meta.service.js +0 -200
  191. package/esm2015/lib/cryptography/key.service.js +0 -124
  192. package/esm2015/lib/cryptography/slip39.service.js +0 -169
  193. package/esm2015/lib/cryptography/web-crypto.service.js +0 -29
  194. package/esm2015/lib/trusted-parties/tp-assembly.gql.private.js +0 -22
  195. package/esm2015/lib/trusted-parties/tp-assembly.js +0 -365
  196. package/esm2015/lib/trusted-parties/tp-assembly.types.js +0 -1
  197. package/esm2015/lib/trusted-parties/tp-password-reset-request.service.js +0 -113
  198. package/esm2015/lib/trusted-parties/tp-password-reset-user.service.js +0 -129
  199. package/esm2015/lib/trusted-parties/tp-password-reset.constants.js +0 -4
  200. package/esm2015/lib/trusted-parties/tp-password-reset.controller.js +0 -34
  201. package/esm2015/lib/trusted-parties/tp-password-reset.gql.js +0 -237
  202. package/esm2015/lib/trusted-parties/tp-password-reset.service.js +0 -95
  203. package/esm2015/lib/trusted-parties/trusted-party.gql.js +0 -148
  204. package/esm2015/lib/trusted-parties/trusted-party.service.js +0 -326
  205. package/esm2015/lib/trusted-parties/trusted-party.types.js +0 -41
  206. package/esm2015/lib/trusted-parties/trusted-party2.gql.js +0 -87
  207. package/esm2015/lib/trusted-parties/trusted-party2.service.js +0 -218
  208. package/esm2015/lib/users/profile-details.service.js +0 -214
  209. package/esm2015/lib/users/profile.gql.js +0 -97
  210. package/esm2015/lib/users/profile.service.js +0 -169
  211. package/esm2015/lib/users/profile.types.js +0 -34
  212. package/esm2015/lib/users/user.gql.js +0 -60
  213. package/esm2015/lib/users/user.service.js +0 -79
  214. package/esm2015/lib/users/user.types.js +0 -1
  215. package/lib/api/contact-card2.gql.d.ts +0 -34
  216. package/lib/api/message.service.d.ts +0 -59
  217. /package/lib/{api → contact-card}/contact-card.gql.d.ts +0 -0
  218. /package/lib/{auth → idle}/idle.types.d.ts +0 -0
  219. /package/lib/{api → key-exchange}/key-exchange.gql.d.ts +0 -0
  220. /package/lib/scenario/{scenario.gql.private.d.ts → scenario.private.gql.d.ts} +0 -0
  221. /package/lib/{cryptography → slip39}/slip39.service.d.ts +0 -0
  222. /package/lib/{api → time}/time.service.d.ts +0 -0
  223. /package/lib/{trusted-parties/tp-assembly.gql.private.d.ts → tp-assembly/tp-assembly.private.gql.d.ts} +0 -0
  224. /package/lib/{trusted-parties → tp-password-reset}/tp-password-reset.constants.d.ts +0 -0
  225. /package/lib/{trusted-parties → trusted-party}/trusted-party.gql.d.ts +0 -0
  226. /package/lib/{auth → two-factor}/two-factor.service.d.ts +0 -0
  227. /package/lib/{users → user}/user.service.d.ts +0 -0
  228. /package/lib/{cryptography → web-crypto}/web-crypto.service.d.ts +0 -0
@@ -1,129 +0,0 @@
1
- import { __awaiter, __decorate } from "tslib";
2
- import { Inject, Injectable, Injector, NgZone } from '@angular/core';
3
- import { EncryptionService } from '../cryptography/encryption.service';
4
- import { KeyGraphService } from '../cryptography/key-graph.service';
5
- import { LR_CONFIG } from '../life-ready.config';
6
- import * as slip from '../cryptography/slip39.service';
7
- import { PasswordService } from '../auth/password.service';
8
- import { HttpClient } from '@angular/common/http';
9
- import { AuthClass } from '@aws-amplify/auth/lib-esm/Auth';
10
- import { LifeReadyAuthService } from '../auth/life-ready-auth.service';
11
- import { KeyFactoryService } from '../cryptography/key-factory.service';
12
- import { LrService } from '../api/lr-graphql';
13
- import { RunOutsideAngular } from '../_common/run-outside-angular';
14
- import * as i0 from "@angular/core";
15
- import * as i1 from "../life-ready.config";
16
- import * as i2 from "../cryptography/key-factory.service";
17
- import * as i3 from "../cryptography/encryption.service";
18
- import * as i4 from "../cryptography/key-graph.service";
19
- import * as i5 from "../cryptography/slip39.service";
20
- import * as i6 from "../auth/password.service";
21
- import * as i7 from "@angular/common/http";
22
- import * as i8 from "@aws-amplify/auth/lib-esm/Auth";
23
- import * as i9 from "../auth/life-ready-auth.service";
24
- let TpPasswordResetUserService = class TpPasswordResetUserService extends LrService {
25
- constructor(ngZone, injector, config, keyFactory, encryptionService, keyGraphService, slip39Service, passwordService, http, auth, lrAuth) {
26
- super(injector);
27
- this.ngZone = ngZone;
28
- this.injector = injector;
29
- this.config = config;
30
- this.keyFactory = keyFactory;
31
- this.encryptionService = encryptionService;
32
- this.keyGraphService = keyGraphService;
33
- this.slip39Service = slip39Service;
34
- this.passwordService = passwordService;
35
- this.http = http;
36
- this.auth = auth;
37
- this.lrAuth = lrAuth;
38
- }
39
- verifyEmailContact(email) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- const params = {
42
- email,
43
- };
44
- return this.http
45
- .post(`${this.config.authUrl}tp/password-reset/verify-contact/`, params)
46
- .toPromise();
47
- });
48
- }
49
- verifyContactRespond(claimId, claimCode) {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- const { token } = yield this.http
52
- .post(`${this.config.authUrl}cove/respond/`, {
53
- claim_id: claimId,
54
- v_code: claimCode,
55
- })
56
- .toPromise();
57
- return token;
58
- });
59
- }
60
- requestReset(password, claimId, claimToken) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- // Generate the key materials
63
- const passKeyBundle = yield this.passwordService.createPassKeyBundle(password);
64
- const masterKey = yield this.keyFactory.createKey();
65
- const wrappedMasterKey = yield this.encryptionService.encrypt(passKeyBundle.passKey, masterKey.toJSON(true));
66
- // Ephemeral PKC key
67
- const prk = yield this.keyFactory.createPkcKey();
68
- const masterKeyWrappedPrk = yield this.encryptionService.encrypt(masterKey, prk.toJSON(true));
69
- // API call to setup reset request
70
- const requestResetResult = yield this.http
71
- .post(`${this.config.authUrl}tp/password-reset/request/`, {
72
- claimId,
73
- claimToken,
74
- pass_key_params: passKeyBundle.passKeyParams,
75
- pass_idp_params: passKeyBundle.passIdpParams,
76
- pass_idp_verifier_pbk: passKeyBundle.passIdpVerifier.toJSON(),
77
- wrapped_pass_idp_verifier_prk: passKeyBundle.wrappedPassIdpVerifierPrk,
78
- wrapped_master_key: wrappedMasterKey,
79
- pbk: prk.toJSON(),
80
- master_key_wrapped_prk: masterKeyWrappedPrk,
81
- })
82
- .toPromise();
83
- console.log(requestResetResult);
84
- console.log('Using new password: ', this.passwordService.getPassIdpString(passKeyBundle.passIdp));
85
- // API call to create user on cognito
86
- const signUpResult = yield this.auth.signUp({
87
- username: requestResetResult.reset_username,
88
- password: this.passwordService.getPassIdpString(passKeyBundle.passIdp),
89
- clientMetadata: {
90
- tp_password_reset_request: JSON.stringify({
91
- id: requestResetResult.id,
92
- associate_reset_user_token: requestResetResult.associate_reset_user_token,
93
- }),
94
- },
95
- });
96
- console.log('requestRest done: ', signUpResult);
97
- return {
98
- requestResetResult,
99
- signUpResult,
100
- };
101
- });
102
- }
103
- };
104
- TpPasswordResetUserService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TpPasswordResetUserService_Factory() { return new TpPasswordResetUserService(i0.ɵɵinject(i0.NgZone), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i1.LR_CONFIG), i0.ɵɵinject(i2.KeyFactoryService), i0.ɵɵinject(i3.EncryptionService), i0.ɵɵinject(i4.KeyGraphService), i0.ɵɵinject(i5.Slip39Service), i0.ɵɵinject(i6.PasswordService), i0.ɵɵinject(i7.HttpClient), i0.ɵɵinject(i8.AuthClass), i0.ɵɵinject(i9.LifeReadyAuthService)); }, token: TpPasswordResetUserService, providedIn: "root" });
105
- TpPasswordResetUserService.decorators = [
106
- { type: Injectable, args: [{
107
- providedIn: 'root',
108
- },] }
109
- ];
110
- TpPasswordResetUserService.ctorParameters = () => [
111
- { type: NgZone },
112
- { type: Injector },
113
- { type: undefined, decorators: [{ type: Inject, args: [LR_CONFIG,] }] },
114
- { type: KeyFactoryService },
115
- { type: EncryptionService },
116
- { type: KeyGraphService },
117
- { type: slip.Slip39Service },
118
- { type: PasswordService },
119
- { type: HttpClient },
120
- { type: AuthClass },
121
- { type: LifeReadyAuthService }
122
- ];
123
- TpPasswordResetUserService = __decorate([
124
- RunOutsideAngular({
125
- ngZoneName: 'ngZone',
126
- })
127
- ], TpPasswordResetUserService);
128
- export { TpPasswordResetUserService };
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAtcGFzc3dvcmQtcmVzZXQtdXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9vcHQvYXRsYXNzaWFuL3BpcGVsaW5lcy9hZ2VudC9idWlsZC9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi90cnVzdGVkLXBhcnRpZXMvdHAtcGFzc3dvcmQtcmVzZXQtdXNlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQW1CLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxJQUFJLE1BQU0sZ0NBQWdDLENBQUM7QUFRdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFNM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7OztJQVN0RCwwQkFBMEIsU0FBMUIsMEJBQTJCLFNBQVEsU0FBUztJQUN2RCxZQUNVLE1BQWMsRUFDZCxRQUFrQixFQUNDLE1BQXVCLEVBQzFDLFVBQTZCLEVBQzdCLGlCQUFvQyxFQUNwQyxlQUFnQyxFQUNoQyxhQUFpQyxFQUNqQyxlQUFnQyxFQUNoQyxJQUFnQixFQUNoQixJQUFlLEVBQ2YsTUFBNEI7UUFFcEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBWlIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDQyxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUMxQyxlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBb0I7UUFDakMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBVztRQUNmLFdBQU0sR0FBTixNQUFNLENBQXNCO0lBR3RDLENBQUM7SUFFSyxrQkFBa0IsQ0FBQyxLQUFLOztZQUM1QixNQUFNLE1BQU0sR0FBRztnQkFDYixLQUFLO2FBQ04sQ0FBQztZQUNGLE9BQU8sSUFBSSxDQUFDLElBQUk7aUJBQ2IsSUFBSSxDQUNILEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLG1DQUFtQyxFQUN6RCxNQUFNLENBQ1A7aUJBQ0EsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQztLQUFBO0lBRUssb0JBQW9CLENBQ3hCLE9BQWUsRUFDZixTQUFpQjs7WUFFakIsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUk7aUJBQzlCLElBQUksQ0FBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxlQUFlLEVBQUU7Z0JBQ3RELFFBQVEsRUFBRSxPQUFPO2dCQUNqQixNQUFNLEVBQUUsU0FBUzthQUNsQixDQUFDO2lCQUNELFNBQVMsRUFBRSxDQUFDO1lBQ2YsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0tBQUE7SUFFSyxZQUFZLENBQ2hCLFFBQWdCLEVBQ2hCLE9BQWUsRUFDZixVQUFrQjs7WUFLbEIsNkJBQTZCO1lBQzdCLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxtQkFBbUIsQ0FDbEUsUUFBUSxDQUNULENBQUM7WUFFRixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEQsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQzNELGFBQWEsQ0FBQyxPQUFPLEVBQ3JCLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQ3ZCLENBQUM7WUFFRixvQkFBb0I7WUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2pELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUM5RCxTQUFTLEVBQ1QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDakIsQ0FBQztZQUVGLGtDQUFrQztZQUNsQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUk7aUJBQ3ZDLElBQUksQ0FDSCxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyw0QkFBNEIsRUFDbEQ7Z0JBQ0UsT0FBTztnQkFDUCxVQUFVO2dCQUNWLGVBQWUsRUFBRSxhQUFhLENBQUMsYUFBYTtnQkFDNUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxhQUFhO2dCQUM1QyxxQkFBcUIsRUFBRSxhQUFhLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTtnQkFDN0QsNkJBQTZCLEVBQzNCLGFBQWEsQ0FBQyx5QkFBeUI7Z0JBQ3pDLGtCQUFrQixFQUFFLGdCQUFnQjtnQkFDcEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2pCLHNCQUFzQixFQUFFLG1CQUFtQjthQUM1QyxDQUNGO2lCQUNBLFNBQVMsRUFBRSxDQUFDO1lBRWYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQ1Qsc0JBQXNCLEVBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUM3RCxDQUFDO1lBRUYscUNBQXFDO1lBQ3JDLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7Z0JBQzFDLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjO2dCQUMzQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO2dCQUN0RSxjQUFjLEVBQUU7b0JBQ2QseUJBQXlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQzt3QkFDeEMsRUFBRSxFQUFFLGtCQUFrQixDQUFDLEVBQUU7d0JBQ3pCLDBCQUEwQixFQUN4QixrQkFBa0IsQ0FBQywwQkFBMEI7cUJBQ2hELENBQUM7aUJBQ0g7YUFDRixDQUFDLENBQUM7WUFFSCxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLFlBQVksQ0FBQyxDQUFDO1lBRWhELE9BQU87Z0JBQ0wsa0JBQWtCO2dCQUNsQixZQUFZO2FBQ2IsQ0FBQztRQUNKLENBQUM7S0FBQTtDQUNGLENBQUE7OztZQXBIQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQWhDc0MsTUFBTTtZQUFoQixRQUFROzRDQXFDaEMsTUFBTSxTQUFDLFNBQVM7WUFoQlosaUJBQWlCO1lBcEJqQixpQkFBaUI7WUFDakIsZUFBZTtZQUVaLElBQUksQ0FxQ2dCLGFBQWE7WUE3QnBDLGVBQWU7WUFDZixVQUFVO1lBQ1YsU0FBUztZQU1ULG9CQUFvQjs7QUFhaEIsMEJBQTBCO0lBTnRDLGlCQUFpQixDQUFDO1FBQ2pCLFVBQVUsRUFBRSxRQUFRO0tBQ3JCLENBQUM7R0FJVywwQkFBMEIsQ0FpSHRDO1NBakhZLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh1YiB9IGZyb20gJ0Bhd3MtYW1wbGlmeS9jb3JlJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRW5jcnlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi9jcnlwdG9ncmFwaHkvZW5jcnlwdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEtleUdyYXBoU2VydmljZSB9IGZyb20gJy4uL2NyeXB0b2dyYXBoeS9rZXktZ3JhcGguc2VydmljZSc7XG5pbXBvcnQgeyBMaWZlUmVhZHlDb25maWcsIExSX0NPTkZJRyB9IGZyb20gJy4uL2xpZmUtcmVhZHkuY29uZmlnJztcbmltcG9ydCAqIGFzIHNsaXAgZnJvbSAnLi4vY3J5cHRvZ3JhcGh5L3NsaXAzOS5zZXJ2aWNlJztcbmltcG9ydCB7IEpXSyB9IGZyb20gJ25vZGUtam9zZSc7XG5pbXBvcnQgeyBMckJhZFN0YXRlRXhjZXB0aW9uLCBMckV4Y2VwdGlvbiB9IGZyb20gJy4uL19jb21tb24vZXhjZXB0aW9ucyc7XG5pbXBvcnQge1xuICBDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvbixcbiAgQ3JlYXRlVHBBc3NlbWJseUtleUNoYWxsZW5nZU11dGF0aW9uLFxuICBQcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvbixcbn0gZnJvbSAnLi90cC1wYXNzd29yZC1yZXNldC5ncWwnO1xuaW1wb3J0IHsgUGFzc3dvcmRTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9wYXNzd29yZC5zZXJ2aWNlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBdXRoQ2xhc3MgfSBmcm9tICdAYXdzLWFtcGxpZnkvYXV0aC9saWItZXNtL0F1dGgnO1xuaW1wb3J0IHtcbiAgUmVxdWVzdFJlc2V0UmVzdWx0LFxuICBUcFBhc3N3b3JkUmVzZXRTZXJ2aWNlLFxufSBmcm9tICcuL3RwLXBhc3N3b3JkLXJlc2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSVNpZ25VcFJlc3VsdCB9IGZyb20gJ2FtYXpvbi1jb2duaXRvLWlkZW50aXR5LWpzJztcbmltcG9ydCB7IExpZmVSZWFkeUF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9saWZlLXJlYWR5LWF1dGguc2VydmljZSc7XG5pbXBvcnQgeyBLZXlGYWN0b3J5U2VydmljZSB9IGZyb20gJy4uL2NyeXB0b2dyYXBoeS9rZXktZmFjdG9yeS5zZXJ2aWNlJztcbmltcG9ydCB7IFRwQ2xhaW1TdGF0ZSwgVHBQYXNzd29yZFJlc2V0VXNlck5vZGUgfSBmcm9tICcuLi9hcGkvdHlwZXMnO1xuaW1wb3J0IHsgTHJNdXRhdGlvbiwgTHJTZXJ2aWNlIH0gZnJvbSAnLi4vYXBpL2xyLWdyYXBocWwnO1xuaW1wb3J0IHsgUnVuT3V0c2lkZUFuZ3VsYXIgfSBmcm9tICcuLi9fY29tbW9uL3J1bi1vdXRzaWRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgVHBQYXNzd29yZFJlc2V0VXNlciB9IGZyb20gJy4uL2F1dGgvYXV0aC50eXBlcyc7XG5cbkBSdW5PdXRzaWRlQW5ndWxhcih7XG4gIG5nWm9uZU5hbWU6ICduZ1pvbmUnLFxufSlcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUcFBhc3N3b3JkUmVzZXRVc2VyU2VydmljZSBleHRlbmRzIExyU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgQEluamVjdChMUl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBMaWZlUmVhZHlDb25maWcsXG4gICAgcHJpdmF0ZSBrZXlGYWN0b3J5OiBLZXlGYWN0b3J5U2VydmljZSxcbiAgICBwcml2YXRlIGVuY3J5cHRpb25TZXJ2aWNlOiBFbmNyeXB0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGtleUdyYXBoU2VydmljZTogS2V5R3JhcGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2xpcDM5U2VydmljZTogc2xpcC5TbGlwMzlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGFzc3dvcmRTZXJ2aWNlOiBQYXNzd29yZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgYXV0aDogQXV0aENsYXNzLFxuICAgIHByaXZhdGUgbHJBdXRoOiBMaWZlUmVhZHlBdXRoU2VydmljZVxuICApIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG4gIH1cblxuICBhc3luYyB2ZXJpZnlFbWFpbENvbnRhY3QoZW1haWwpOiBQcm9taXNlPHsgY2xhaW1JZDogc3RyaW5nIH0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICBlbWFpbCxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PGFueT4oXG4gICAgICAgIGAke3RoaXMuY29uZmlnLmF1dGhVcmx9dHAvcGFzc3dvcmQtcmVzZXQvdmVyaWZ5LWNvbnRhY3QvYCxcbiAgICAgICAgcGFyYW1zXG4gICAgICApXG4gICAgICAudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyB2ZXJpZnlDb250YWN0UmVzcG9uZChcbiAgICBjbGFpbUlkOiBzdHJpbmcsXG4gICAgY2xhaW1Db2RlOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCB7IHRva2VuIH0gPSBhd2FpdCB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PHsgdG9rZW4gfT4oYCR7dGhpcy5jb25maWcuYXV0aFVybH1jb3ZlL3Jlc3BvbmQvYCwge1xuICAgICAgICBjbGFpbV9pZDogY2xhaW1JZCxcbiAgICAgICAgdl9jb2RlOiBjbGFpbUNvZGUsXG4gICAgICB9KVxuICAgICAgLnRvUHJvbWlzZSgpO1xuICAgIHJldHVybiB0b2tlbjtcbiAgfVxuXG4gIGFzeW5jIHJlcXVlc3RSZXNldChcbiAgICBwYXNzd29yZDogc3RyaW5nLFxuICAgIGNsYWltSWQ6IHN0cmluZyxcbiAgICBjbGFpbVRva2VuOiBzdHJpbmdcbiAgKTogUHJvbWlzZTx7XG4gICAgcmVxdWVzdFJlc2V0UmVzdWx0OiBSZXF1ZXN0UmVzZXRSZXN1bHQ7XG4gICAgc2lnblVwUmVzdWx0OiBJU2lnblVwUmVzdWx0O1xuICB9PiB7XG4gICAgLy8gR2VuZXJhdGUgdGhlIGtleSBtYXRlcmlhbHNcbiAgICBjb25zdCBwYXNzS2V5QnVuZGxlID0gYXdhaXQgdGhpcy5wYXNzd29yZFNlcnZpY2UuY3JlYXRlUGFzc0tleUJ1bmRsZShcbiAgICAgIHBhc3N3b3JkXG4gICAgKTtcblxuICAgIGNvbnN0IG1hc3RlcktleSA9IGF3YWl0IHRoaXMua2V5RmFjdG9yeS5jcmVhdGVLZXkoKTtcbiAgICBjb25zdCB3cmFwcGVkTWFzdGVyS2V5ID0gYXdhaXQgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0KFxuICAgICAgcGFzc0tleUJ1bmRsZS5wYXNzS2V5LFxuICAgICAgbWFzdGVyS2V5LnRvSlNPTih0cnVlKVxuICAgICk7XG5cbiAgICAvLyBFcGhlbWVyYWwgUEtDIGtleVxuICAgIGNvbnN0IHByayA9IGF3YWl0IHRoaXMua2V5RmFjdG9yeS5jcmVhdGVQa2NLZXkoKTtcbiAgICBjb25zdCBtYXN0ZXJLZXlXcmFwcGVkUHJrID0gYXdhaXQgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0KFxuICAgICAgbWFzdGVyS2V5LFxuICAgICAgcHJrLnRvSlNPTih0cnVlKVxuICAgICk7XG5cbiAgICAvLyBBUEkgY2FsbCB0byBzZXR1cCByZXNldCByZXF1ZXN0XG4gICAgY29uc3QgcmVxdWVzdFJlc2V0UmVzdWx0ID0gYXdhaXQgdGhpcy5odHRwXG4gICAgICAucG9zdDxSZXF1ZXN0UmVzZXRSZXN1bHQ+KFxuICAgICAgICBgJHt0aGlzLmNvbmZpZy5hdXRoVXJsfXRwL3Bhc3N3b3JkLXJlc2V0L3JlcXVlc3QvYCxcbiAgICAgICAge1xuICAgICAgICAgIGNsYWltSWQsXG4gICAgICAgICAgY2xhaW1Ub2tlbixcbiAgICAgICAgICBwYXNzX2tleV9wYXJhbXM6IHBhc3NLZXlCdW5kbGUucGFzc0tleVBhcmFtcyxcbiAgICAgICAgICBwYXNzX2lkcF9wYXJhbXM6IHBhc3NLZXlCdW5kbGUucGFzc0lkcFBhcmFtcyxcbiAgICAgICAgICBwYXNzX2lkcF92ZXJpZmllcl9wYms6IHBhc3NLZXlCdW5kbGUucGFzc0lkcFZlcmlmaWVyLnRvSlNPTigpLCAvLyBwdWJsaWMga2V5XG4gICAgICAgICAgd3JhcHBlZF9wYXNzX2lkcF92ZXJpZmllcl9wcms6XG4gICAgICAgICAgICBwYXNzS2V5QnVuZGxlLndyYXBwZWRQYXNzSWRwVmVyaWZpZXJQcmssXG4gICAgICAgICAgd3JhcHBlZF9tYXN0ZXJfa2V5OiB3cmFwcGVkTWFzdGVyS2V5LFxuICAgICAgICAgIHBiazogcHJrLnRvSlNPTigpLCAvLyBlcGhlbWVyYWwgcHVibGljIGtleVxuICAgICAgICAgIG1hc3Rlcl9rZXlfd3JhcHBlZF9wcms6IG1hc3RlcktleVdyYXBwZWRQcmssXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgIC50b1Byb21pc2UoKTtcblxuICAgIGNvbnNvbGUubG9nKHJlcXVlc3RSZXNldFJlc3VsdCk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICAnVXNpbmcgbmV3IHBhc3N3b3JkOiAnLFxuICAgICAgdGhpcy5wYXNzd29yZFNlcnZpY2UuZ2V0UGFzc0lkcFN0cmluZyhwYXNzS2V5QnVuZGxlLnBhc3NJZHApXG4gICAgKTtcblxuICAgIC8vIEFQSSBjYWxsIHRvIGNyZWF0ZSB1c2VyIG9uIGNvZ25pdG9cbiAgICBjb25zdCBzaWduVXBSZXN1bHQgPSBhd2FpdCB0aGlzLmF1dGguc2lnblVwKHtcbiAgICAgIHVzZXJuYW1lOiByZXF1ZXN0UmVzZXRSZXN1bHQucmVzZXRfdXNlcm5hbWUsXG4gICAgICBwYXNzd29yZDogdGhpcy5wYXNzd29yZFNlcnZpY2UuZ2V0UGFzc0lkcFN0cmluZyhwYXNzS2V5QnVuZGxlLnBhc3NJZHApLFxuICAgICAgY2xpZW50TWV0YWRhdGE6IHtcbiAgICAgICAgdHBfcGFzc3dvcmRfcmVzZXRfcmVxdWVzdDogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIGlkOiByZXF1ZXN0UmVzZXRSZXN1bHQuaWQsXG4gICAgICAgICAgYXNzb2NpYXRlX3Jlc2V0X3VzZXJfdG9rZW46XG4gICAgICAgICAgICByZXF1ZXN0UmVzZXRSZXN1bHQuYXNzb2NpYXRlX3Jlc2V0X3VzZXJfdG9rZW4sXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnNvbGUubG9nKCdyZXF1ZXN0UmVzdCBkb25lOiAnLCBzaWduVXBSZXN1bHQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHJlcXVlc3RSZXNldFJlc3VsdCxcbiAgICAgIHNpZ25VcFJlc3VsdCxcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -1,4 +0,0 @@
1
- export const TP_PASSWORD_RESET_CLIENT_NONCE_LENGTH = 32;
2
- export const TP_PASSWORD_RESET_SLIP39_PASSPHRASE = 'lifeready';
3
- export const TP_PASSWORD_RESET_USERNAME_SUFFIX = '.tp_password_reset';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAtcGFzc3dvcmQtcmVzZXQuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6Ii9vcHQvYXRsYXNzaWFuL3BpcGVsaW5lcy9hZ2VudC9idWlsZC9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi90cnVzdGVkLXBhcnRpZXMvdHAtcGFzc3dvcmQtcmVzZXQuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLEVBQUUsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxXQUFXLENBQUM7QUFDL0QsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgVFBfUEFTU1dPUkRfUkVTRVRfQ0xJRU5UX05PTkNFX0xFTkdUSCA9IDMyO1xuZXhwb3J0IGNvbnN0IFRQX1BBU1NXT1JEX1JFU0VUX1NMSVAzOV9QQVNTUEhSQVNFID0gJ2xpZmVyZWFkeSc7XG5leHBvcnQgY29uc3QgVFBfUEFTU1dPUkRfUkVTRVRfVVNFUk5BTUVfU1VGRklYID0gJy50cF9wYXNzd29yZF9yZXNldCc7XG4iXX0=
@@ -1,34 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable, Injector, NgZone } from '@angular/core';
3
- import { RunOutsideAngular } from '../_common/run-outside-angular';
4
- import { TpAssemblyController } from './tp-assembly';
5
- import { TP_PASSWORD_RESET_SLIP39_PASSPHRASE } from './tp-password-reset.constants';
6
- import * as i0 from "@angular/core";
7
- let TpPasswordResetAssemblyController = class TpPasswordResetAssemblyController extends TpAssemblyController {
8
- constructor(ngZone, injector) {
9
- super(injector);
10
- this.ngZone = ngZone;
11
- this.injector = injector;
12
- this.slip39Passphrase = TP_PASSWORD_RESET_SLIP39_PASSPHRASE;
13
- }
14
- getTpWrappingKeyId(tp) {
15
- return tp.currentUserSharedKey.userSharedKey.mkSharedKey.id;
16
- }
17
- };
18
- TpPasswordResetAssemblyController.ɵprov = i0.ɵɵdefineInjectable({ factory: function TpPasswordResetAssemblyController_Factory() { return new TpPasswordResetAssemblyController(i0.ɵɵinject(i0.NgZone), i0.ɵɵinject(i0.INJECTOR)); }, token: TpPasswordResetAssemblyController, providedIn: "root" });
19
- TpPasswordResetAssemblyController.decorators = [
20
- { type: Injectable, args: [{
21
- providedIn: 'root',
22
- },] }
23
- ];
24
- TpPasswordResetAssemblyController.ctorParameters = () => [
25
- { type: NgZone },
26
- { type: Injector }
27
- ];
28
- TpPasswordResetAssemblyController = __decorate([
29
- RunOutsideAngular({
30
- ngZoneName: 'ngZone',
31
- })
32
- ], TpPasswordResetAssemblyController);
33
- export { TpPasswordResetAssemblyController };
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAtcGFzc3dvcmQtcmVzZXQuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIvb3B0L2F0bGFzc2lhbi9waXBlbGluZXMvYWdlbnQvYnVpbGQvcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvdHJ1c3RlZC1wYXJ0aWVzL3RwLXBhc3N3b3JkLXJlc2V0LmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0lBUXZFLGlDQUFpQyxTQUFqQyxpQ0FBa0MsU0FBUSxvQkFBb0I7SUFHekUsWUFBb0IsTUFBYyxFQUFVLFFBQWtCO1FBQzVELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQURFLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRjlELHFCQUFnQixHQUFHLG1DQUFtQyxDQUFDO0lBSXZELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7Q0FDRixDQUFBOzs7WUFiQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVg4QixNQUFNO1lBQWhCLFFBQVE7O0FBWWhCLGlDQUFpQztJQU43QyxpQkFBaUIsQ0FBQztRQUNqQixVQUFVLEVBQUUsUUFBUTtLQUNyQixDQUFDO0dBSVcsaUNBQWlDLENBVTdDO1NBVlksaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHBOb2RlIH0gZnJvbSAnLi4vYXBpL3R5cGVzJztcbmltcG9ydCB7IFJ1bk91dHNpZGVBbmd1bGFyIH0gZnJvbSAnLi4vX2NvbW1vbi9ydW4tb3V0c2lkZS1hbmd1bGFyJztcbmltcG9ydCB7IFRwQXNzZW1ibHlDb250cm9sbGVyIH0gZnJvbSAnLi90cC1hc3NlbWJseSc7XG5pbXBvcnQgeyBUUF9QQVNTV09SRF9SRVNFVF9TTElQMzlfUEFTU1BIUkFTRSB9IGZyb20gJy4vdHAtcGFzc3dvcmQtcmVzZXQuY29uc3RhbnRzJztcblxuQFJ1bk91dHNpZGVBbmd1bGFyKHtcbiAgbmdab25lTmFtZTogJ25nWm9uZScsXG59KVxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRwUGFzc3dvcmRSZXNldEFzc2VtYmx5Q29udHJvbGxlciBleHRlbmRzIFRwQXNzZW1ibHlDb250cm9sbGVyIHtcbiAgc2xpcDM5UGFzc3BocmFzZSA9IFRQX1BBU1NXT1JEX1JFU0VUX1NMSVAzOV9QQVNTUEhSQVNFO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IpO1xuICB9XG5cbiAgZ2V0VHBXcmFwcGluZ0tleUlkKHRwOiBUcE5vZGUpIHtcbiAgICByZXR1cm4gdHAuY3VycmVudFVzZXJTaGFyZWRLZXkudXNlclNoYXJlZEtleS5ta1NoYXJlZEtleS5pZDtcbiAgfVxufVxuIl19
@@ -1,237 +0,0 @@
1
- import { gqlTyped } from '../_common/ast';
2
- const SharedTpPasswordResetFragment = gqlTyped `
3
- fragment SharedTpPasswordResetFragment on SharedTpPasswordResetNode {
4
- id
5
- tp {
6
- id
7
- other {
8
- username
9
- }
10
- }
11
- assembly {
12
- asApprovers {
13
- edges {
14
- node {
15
- id
16
- sharedKey {
17
- id
18
- }
19
- sharedCipherData
20
- }
21
- }
22
- }
23
- }
24
- sharedRequest {
25
- id
26
- pxk {
27
- id
28
- pbk
29
- }
30
- claim {
31
- id
32
- state
33
- asClaimApprovers {
34
- edges {
35
- node {
36
- id
37
- state
38
- sharedKey {
39
- id
40
- }
41
- sharedCipherApprovalData
42
- sharedCipherPartialAssemblyKey
43
- receiverApprovals {
44
- edges {
45
- node {
46
- id
47
- }
48
- }
49
- }
50
- }
51
- }
52
- }
53
- }
54
- }
55
- }`;
56
- export const SharedTpPasswordResetsQuery = gqlTyped `
57
- query SharedTpPasswordResetsQuery {
58
- sharedTpPasswordResets {
59
- edges {
60
- node {
61
- ...SharedTpPasswordResetFragment
62
- }
63
- }
64
- }
65
- }
66
- ${SharedTpPasswordResetFragment}
67
- `;
68
- export const SharedTpPasswordResetQuery = gqlTyped `
69
- query SharedTpPasswordResetQuery($id: LrRelayIdInput!) {
70
- sharedTpPasswordReset(id: $id) {
71
- ...SharedTpPasswordResetFragment
72
- }
73
- }
74
- ${SharedTpPasswordResetFragment}
75
- `;
76
- export const CancelTpPasswordResetRequestMutation = gqlTyped `
77
- mutation CancelTpPasswordResetRequestMutation {
78
- cancelTpPasswordResetRequest(input: {}) {
79
- id
80
- }
81
- }`;
82
- export const CreateTpAssemblyKeyChallengeMutation = gqlTyped `
83
- mutation CreateTpAssemblyKeyChallengeMutation(
84
- $input: CreateTpAssemblyKeyChallengeInput!
85
- ) {
86
- createTpAssemblyKeyChallenge(input: $input) {
87
- challenge
88
- }
89
- }`;
90
- export const PreCompleteTpPasswordResetRequestMutation = gqlTyped `
91
- mutation PreCompleteTpPasswordResetRequestMutation(
92
- $input: PreCompleteTpPasswordResetRequestInput!
93
- ) {
94
- preCompleteTpPasswordResetRequest(input: $input) {
95
- idpPassword
96
- }
97
- }`;
98
- export const CompleteTpPasswordResetRequestMutation = gqlTyped `
99
- mutation CompleteTpPasswordResetRequestMutation(
100
- $input: CompleteTpPasswordResetRequestInput!
101
- ) {
102
- completeTpPasswordResetRequest(input: $input) {
103
- id
104
- }
105
- }`;
106
- export const ApproveTpPasswordResetRequestMutation = gqlTyped `
107
- mutation ApproveTpPasswordResetRequestMutation(
108
- $input: ApproveTpPasswordResetRequestInput!
109
- ) {
110
- approveTpPasswordResetRequest(input: $input) {
111
- claimApprover {
112
- id
113
- }
114
- }
115
- }`;
116
- export const RejectTpPasswordResetRequestMutation = gqlTyped `
117
- mutation RejectTpPasswordResetRequestMutation(
118
- $input: RejectTpPasswordResetRequestInput!
119
- ) {
120
- rejectTpPasswordResetRequest(input: $input) {
121
- claimApprover {
122
- id
123
- }
124
- }
125
- }`;
126
- export const TpPasswordResetUserQuery = gqlTyped `
127
- query TpPasswordResetUserQuery {
128
- tpPasswordResetUser {
129
- username
130
- resetUsername
131
- state
132
- passKey {
133
- id
134
- passKeyParams
135
- passIdpParams
136
- }
137
- masterKey {
138
- id
139
- }
140
- pxk {
141
- id
142
- }
143
- sessionEncryptionKey
144
- assembly {
145
- singleReject
146
- quorum
147
- subAssemblies {
148
- singleReject
149
- quorum
150
- approvers {
151
- name
152
- email
153
- state
154
- }
155
- }
156
- }
157
- approvals {
158
- id
159
- modified
160
- approverEmail
161
- receiverCipher
162
- receiverCipherPartialAssemblyKey
163
- }
164
- assemblyCipherData
165
- wrappedAssemblyKeyVerifierPrk
166
- }
167
- }`;
168
- export const TpPasswordResetQuery = gqlTyped `
169
- query TpPasswordResetQuery {
170
- tpPasswordReset {
171
- id
172
- applied
173
- assembly {
174
- singleReject
175
- quorum
176
- canMeetQuorum
177
- subjectCipherData
178
- subjectKey {
179
- id
180
- }
181
- assemblyKey {
182
- id
183
- }
184
- assemblyCipherData
185
- subAssemblies {
186
- edges {
187
- node {
188
- id
189
- singleReject
190
- quorum
191
- subjectCipherData
192
- subjectKey {
193
- id
194
- }
195
- approvers {
196
- edges {
197
- node {
198
- id
199
- tp {
200
- id
201
- }
202
- sharedKey {
203
- id
204
- }
205
- sharedCipherData
206
- }
207
- }
208
- }
209
- }
210
- }
211
- }
212
- }
213
- }
214
- }`;
215
- export const CreateTpPasswordResetMutation = gqlTyped `
216
- mutation CreateTpPasswordResetMutation($input: CreateTpPasswordResetInput!) {
217
- createTpPasswordReset(input: $input) {
218
- tpPasswordReset {
219
- id
220
- }
221
- }
222
- }`;
223
- export const DeleteTpPasswordResetMutation = gqlTyped `
224
- mutation DeleteTpPasswordResetMutation {
225
- deleteTpPasswordReset(input: {}) {
226
- id
227
- }
228
- }`;
229
- export const UpdateTpPasswordResetMutation = gqlTyped `
230
- mutation UpdateTpPasswordResetMutation($input: UpdateTpPasswordResetInput!) {
231
- updateTpPasswordReset(input: $input) {
232
- tpPasswordReset {
233
- id
234
- }
235
- }
236
- }`;
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAtcGFzc3dvcmQtcmVzZXQuZ3FsLmpzIiwic291cmNlUm9vdCI6Ii9vcHQvYXRsYXNzaWFuL3BpcGVsaW5lcy9hZ2VudC9idWlsZC9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi90cnVzdGVkLXBhcnRpZXMvdHAtcGFzc3dvcmQtcmVzZXQuZ3FsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQStEMUMsTUFBTSw2QkFBNkIsR0FBRyxRQUFRLENBQXFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXFEakYsQ0FBQztBQVNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFFBQVEsQ0FBbUM7Ozs7Ozs7Ozs7RUFVcEYsNkJBQTZCO0NBQzlCLENBQUM7QUFLRixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxRQUFRLENBQWtDOzs7Ozs7RUFNbEYsNkJBQTZCO0NBQzlCLENBQUM7QUFPRixNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxRQUFRLENBQTRDOzs7OztFQUt0RyxDQUFDO0FBT0gsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUcsUUFBUSxDQUE0Qzs7Ozs7OztFQU90RyxDQUFDO0FBT0gsTUFBTSxDQUFDLE1BQU0seUNBQXlDLEdBQUcsUUFBUSxDQUFpRDs7Ozs7OztFQU9oSCxDQUFDO0FBT0gsTUFBTSxDQUFDLE1BQU0sc0NBQXNDLEdBQUcsUUFBUSxDQUE4Qzs7Ozs7OztFQU8xRyxDQUFDO0FBU0gsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsUUFBUSxDQUE2Qzs7Ozs7Ozs7O0VBU3hHLENBQUM7QUFTSCxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxRQUFRLENBQTRDOzs7Ozs7Ozs7RUFTdEcsQ0FBQztBQTJDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxRQUFRLENBQWdDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXlDOUUsQ0FBQztBQWtESCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxRQUFRLENBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBOEN0RSxDQUFDO0FBU0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsUUFBUSxDQUFxQzs7Ozs7OztFQU94RixDQUFDO0FBT0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsUUFBUSxDQUFxQzs7Ozs7RUFLeEYsQ0FBQztBQVNILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLFFBQVEsQ0FBcUM7Ozs7Ozs7RUFPeEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyaWNTY2FsYXIsIElEIH0gZnJvbSAnLi4vYXBpL3R5cGVzJztcbmltcG9ydCB7IGdxbFR5cGVkIH0gZnJvbSAnLi4vX2NvbW1vbi9hc3QnO1xuaW1wb3J0IHtcbiAgVHBDbGFpbVN0YXRlLFxuICBUcENsYWltQXBwcm92ZXJTdGF0ZSxcbn0gZnJvbSAnLi4vYXBpL3R5cGVzL2xyLWdyYXBocWwudHlwZXMnO1xuaW1wb3J0IHsgRGF0ZVRpbWUsIEpTT05PYmplY3QgfSBmcm9tICcuLi9hcGkvdHlwZXMvZ3JhcGhxbC50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkVHBQYXNzd29yZFJlc2V0RnJhZ21lbnRSZXN1bHQge1xuICBpZDogSUQ7XG4gIHRwOiB7XG4gICAgaWQ6IElEO1xuICAgIG90aGVyOiB7XG4gICAgICB1c2VybmFtZTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIGFzc2VtYmx5OiB7XG4gICAgYXNBcHByb3ZlcnM6IHtcbiAgICAgIGVkZ2VzOiB7XG4gICAgICAgIG5vZGU6IHtcbiAgICAgICAgICBpZDogSUQ7XG4gICAgICAgICAgc2hhcmVkS2V5OiB7XG4gICAgICAgICAgICBpZDogSUQ7XG4gICAgICAgICAgfTtcbiAgICAgICAgICBzaGFyZWRDaXBoZXJEYXRhOiBzdHJpbmc7XG4gICAgICAgICAgc2hhcmVkQ2lwaGVyRGF0YUNsZWFySnNvbjogSlNPTk9iamVjdDtcbiAgICAgICAgfTtcbiAgICAgIH1bXTtcbiAgICB9O1xuICB9O1xuICBzaGFyZWRSZXF1ZXN0OiB7XG4gICAgaWQ6IElEO1xuICAgIHB4azoge1xuICAgICAgaWQ6IElEO1xuICAgICAgcGJrOiBzdHJpbmc7XG4gICAgfTtcbiAgICBjbGFpbToge1xuICAgICAgaWQ6IElEO1xuICAgICAgc3RhdGU6IFRwQ2xhaW1TdGF0ZTtcbiAgICAgIGFzQ2xhaW1BcHByb3ZlcnM6IHtcbiAgICAgICAgZWRnZXM6IHtcbiAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICBpZDogSUQ7XG4gICAgICAgICAgICBzdGF0ZTogVHBDbGFpbUFwcHJvdmVyU3RhdGU7XG4gICAgICAgICAgICBzaGFyZWRLZXk6IHtcbiAgICAgICAgICAgICAgaWQ6IElEO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHNoYXJlZENpcGhlckFwcHJvdmFsRGF0YTogc3RyaW5nO1xuICAgICAgICAgICAgc2hhcmVkQ2lwaGVyQXBwcm92YWxEYXRhQ2xlYXJKc29uOiBKU09OT2JqZWN0O1xuICAgICAgICAgICAgc2hhcmVkQ2lwaGVyUGFydGlhbEFzc2VtYmx5S2V5OiBzdHJpbmc7XG4gICAgICAgICAgICBzaGFyZWRDaXBoZXJQYXJ0aWFsQXNzZW1ibHlLZXlDbGVhckpzb246IEpTT05PYmplY3Q7XG4gICAgICAgICAgICByZWNlaXZlckFwcHJvdmFsczoge1xuICAgICAgICAgICAgICBlZGdlczoge1xuICAgICAgICAgICAgICAgIG5vZGU6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiBJRDtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9W107XG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH07XG4gICAgICAgIH1bXTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn1cbmNvbnN0IFNoYXJlZFRwUGFzc3dvcmRSZXNldEZyYWdtZW50ID0gZ3FsVHlwZWQ8U2hhcmVkVHBQYXNzd29yZFJlc2V0RnJhZ21lbnRSZXN1bHQ+YFxuZnJhZ21lbnQgU2hhcmVkVHBQYXNzd29yZFJlc2V0RnJhZ21lbnQgb24gU2hhcmVkVHBQYXNzd29yZFJlc2V0Tm9kZSB7XG4gIGlkXG4gIHRwIHtcbiAgICBpZFxuICAgIG90aGVyIHtcbiAgICAgIHVzZXJuYW1lXG4gICAgfVxuICB9XG4gIGFzc2VtYmx5IHtcbiAgICBhc0FwcHJvdmVycyB7XG4gICAgICBlZGdlcyB7XG4gICAgICAgIG5vZGUge1xuICAgICAgICAgIGlkXG4gICAgICAgICAgc2hhcmVkS2V5IHtcbiAgICAgICAgICAgIGlkXG4gICAgICAgICAgfVxuICAgICAgICAgIHNoYXJlZENpcGhlckRhdGFcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBzaGFyZWRSZXF1ZXN0IHtcbiAgICBpZFxuICAgIHB4ayB7XG4gICAgICBpZFxuICAgICAgcGJrXG4gICAgfVxuICAgIGNsYWltIHtcbiAgICAgIGlkXG4gICAgICBzdGF0ZVxuICAgICAgYXNDbGFpbUFwcHJvdmVycyB7XG4gICAgICAgIGVkZ2VzIHtcbiAgICAgICAgICBub2RlIHtcbiAgICAgICAgICAgIGlkXG4gICAgICAgICAgICBzdGF0ZVxuICAgICAgICAgICAgc2hhcmVkS2V5IHtcbiAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNoYXJlZENpcGhlckFwcHJvdmFsRGF0YVxuICAgICAgICAgICAgc2hhcmVkQ2lwaGVyUGFydGlhbEFzc2VtYmx5S2V5XG4gICAgICAgICAgICByZWNlaXZlckFwcHJvdmFscyB7XG4gICAgICAgICAgICAgIGVkZ2VzIHtcbiAgICAgICAgICAgICAgICBub2RlIHtcbiAgICAgICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59YDtcblxuZXhwb3J0IGludGVyZmFjZSBTaGFyZWRUcFBhc3N3b3JkUmVzZXRzUXVlcnlSZXN1bHQge1xuICBzaGFyZWRUcFBhc3N3b3JkUmVzZXRzOiB7XG4gICAgZWRnZXM6IHtcbiAgICAgIG5vZGU6IFNoYXJlZFRwUGFzc3dvcmRSZXNldEZyYWdtZW50UmVzdWx0O1xuICAgIH1bXTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBTaGFyZWRUcFBhc3N3b3JkUmVzZXRzUXVlcnkgPSBncWxUeXBlZDxTaGFyZWRUcFBhc3N3b3JkUmVzZXRzUXVlcnlSZXN1bHQ+YFxucXVlcnkgU2hhcmVkVHBQYXNzd29yZFJlc2V0c1F1ZXJ5IHtcbiAgc2hhcmVkVHBQYXNzd29yZFJlc2V0cyB7XG4gICAgZWRnZXMge1xuICAgICAgbm9kZSB7XG4gICAgICAgIC4uLlNoYXJlZFRwUGFzc3dvcmRSZXNldEZyYWdtZW50XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ke1NoYXJlZFRwUGFzc3dvcmRSZXNldEZyYWdtZW50fVxuYDtcblxuZXhwb3J0IGludGVyZmFjZSBTaGFyZWRUcFBhc3N3b3JkUmVzZXRRdWVyeVJlc3VsdCB7XG4gIHNoYXJlZFRwUGFzc3dvcmRSZXNldDogU2hhcmVkVHBQYXNzd29yZFJlc2V0RnJhZ21lbnRSZXN1bHQ7XG59XG5leHBvcnQgY29uc3QgU2hhcmVkVHBQYXNzd29yZFJlc2V0UXVlcnkgPSBncWxUeXBlZDxTaGFyZWRUcFBhc3N3b3JkUmVzZXRRdWVyeVJlc3VsdD5gXG5xdWVyeSBTaGFyZWRUcFBhc3N3b3JkUmVzZXRRdWVyeSgkaWQ6IExyUmVsYXlJZElucHV0ISkge1xuICBzaGFyZWRUcFBhc3N3b3JkUmVzZXQoaWQ6ICRpZCkge1xuICAgIC4uLlNoYXJlZFRwUGFzc3dvcmRSZXNldEZyYWdtZW50XG4gIH1cbn1cbiR7U2hhcmVkVHBQYXNzd29yZFJlc2V0RnJhZ21lbnR9XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIENhbmNlbFRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvblJlc3VsdCB7XG4gIGNhbmNlbFRwUGFzc3dvcmRSZXNldFJlcXVlc3Q6IHtcbiAgICBpZDogSUQ7XG4gIH07XG59XG5leHBvcnQgY29uc3QgQ2FuY2VsVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uID0gZ3FsVHlwZWQ8Q2FuY2VsVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uUmVzdWx0PmBcbm11dGF0aW9uIENhbmNlbFRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvbiB7XG4gIGNhbmNlbFRwUGFzc3dvcmRSZXNldFJlcXVlc3QoaW5wdXQ6IHt9KSB7XG4gICAgaWRcbiAgfVxufWA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlVHBBc3NlbWJseUtleUNoYWxsZW5nZU11dGF0aW9uUmVzdWx0IHtcbiAgY3JlYXRlVHBBc3NlbWJseUtleUNoYWxsZW5nZToge1xuICAgIGNoYWxsZW5nZTogYW55O1xuICB9O1xufVxuZXhwb3J0IGNvbnN0IENyZWF0ZVRwQXNzZW1ibHlLZXlDaGFsbGVuZ2VNdXRhdGlvbiA9IGdxbFR5cGVkPENyZWF0ZVRwQXNzZW1ibHlLZXlDaGFsbGVuZ2VNdXRhdGlvblJlc3VsdD5gXG5tdXRhdGlvbiBDcmVhdGVUcEFzc2VtYmx5S2V5Q2hhbGxlbmdlTXV0YXRpb24oXG4gICRpbnB1dDogQ3JlYXRlVHBBc3NlbWJseUtleUNoYWxsZW5nZUlucHV0IVxuKSB7XG4gIGNyZWF0ZVRwQXNzZW1ibHlLZXlDaGFsbGVuZ2UoaW5wdXQ6ICRpbnB1dCkge1xuICAgIGNoYWxsZW5nZVxuICB9XG59YDtcblxuZXhwb3J0IGludGVyZmFjZSBQcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvblJlc3VsdCB7XG4gIHByZUNvbXBsZXRlVHBQYXNzd29yZFJlc2V0UmVxdWVzdDoge1xuICAgIGlkcFBhc3N3b3JkOiBzdHJpbmc7XG4gIH07XG59XG5leHBvcnQgY29uc3QgUHJlQ29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0TXV0YXRpb24gPSBncWxUeXBlZDxQcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvblJlc3VsdD5gXG5tdXRhdGlvbiBQcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvbihcbiAgJGlucHV0OiBQcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RJbnB1dCFcbikge1xuICBwcmVDb21wbGV0ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3QoaW5wdXQ6ICRpbnB1dCkge1xuICAgIGlkcFBhc3N3b3JkXG4gIH1cbn1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsZXRlVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uUmVzdWx0IHtcbiAgY29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0OiB7XG4gICAgaWQ6IElEO1xuICB9O1xufVxuZXhwb3J0IGNvbnN0IENvbXBsZXRlVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uID0gZ3FsVHlwZWQ8Q29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0TXV0YXRpb25SZXN1bHQ+YFxubXV0YXRpb24gQ29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0TXV0YXRpb24oXG4gICRpbnB1dDogQ29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0SW5wdXQhXG4pIHtcbiAgY29tcGxldGVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0KGlucHV0OiAkaW5wdXQpIHtcbiAgICBpZFxuICB9XG59YDtcblxuZXhwb3J0IGludGVyZmFjZSBBcHByb3ZlVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uUmVzdWx0IHtcbiAgYXBwcm92ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3Q6IHtcbiAgICBjbGFpbUFwcHJvdmVyOiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBBcHByb3ZlVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uID0gZ3FsVHlwZWQ8QXBwcm92ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvblJlc3VsdD5gXG5tdXRhdGlvbiBBcHByb3ZlVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uKFxuICAkaW5wdXQ6IEFwcHJvdmVUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0SW5wdXQhXG4pIHtcbiAgYXBwcm92ZVRwUGFzc3dvcmRSZXNldFJlcXVlc3QoaW5wdXQ6ICRpbnB1dCkge1xuICAgIGNsYWltQXBwcm92ZXIge1xuICAgICAgaWRcbiAgICB9XG4gIH1cbn1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlamVjdFRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvblJlc3VsdCB7XG4gIHJlamVjdFRwUGFzc3dvcmRSZXNldFJlcXVlc3Q6IHtcbiAgICBjbGFpbUFwcHJvdmVyOiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBSZWplY3RUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0TXV0YXRpb24gPSBncWxUeXBlZDxSZWplY3RUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0TXV0YXRpb25SZXN1bHQ+YFxubXV0YXRpb24gUmVqZWN0VHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uKFxuICAkaW5wdXQ6IFJlamVjdFRwUGFzc3dvcmRSZXNldFJlcXVlc3RJbnB1dCFcbikge1xuICByZWplY3RUcFBhc3N3b3JkUmVzZXRSZXF1ZXN0KGlucHV0OiAkaW5wdXQpIHtcbiAgICBjbGFpbUFwcHJvdmVyIHtcbiAgICAgIGlkXG4gICAgfVxuICB9XG59YDtcblxuZXhwb3J0IGludGVyZmFjZSBUcFBhc3N3b3JkUmVzZXRVc2VyUXVlcnlSZXN1bHQge1xuICB0cFBhc3N3b3JkUmVzZXRVc2VyOiB7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICByZXNldFVzZXJuYW1lOiBzdHJpbmc7XG4gICAgc3RhdGU6IFRwQ2xhaW1TdGF0ZTtcbiAgICBwYXNzS2V5OiB7XG4gICAgICBpZDogSUQ7XG4gICAgICBwYXNzS2V5UGFyYW1zOiBHZW5lcmljU2NhbGFyO1xuICAgICAgcGFzc0lkcFBhcmFtczogR2VuZXJpY1NjYWxhcjtcbiAgICB9O1xuICAgIG1hc3RlcktleToge1xuICAgICAgaWQ6IElEO1xuICAgIH07XG4gICAgcHhrOiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgICBzZXNzaW9uRW5jcnlwdGlvbktleTogc3RyaW5nO1xuICAgIGFzc2VtYmx5OiB7XG4gICAgICBzaW5nbGVSZWplY3Q6IGJvb2xlYW47XG4gICAgICBxdW9ydW06IG51bWJlcjtcbiAgICAgIHN1YkFzc2VtYmxpZXM6IHtcbiAgICAgICAgc2luZ2xlUmVqZWN0OiBib29sZWFuO1xuICAgICAgICBxdW9ydW06IG51bWJlcjtcbiAgICAgICAgYXBwcm92ZXJzOiB7XG4gICAgICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgICAgIGVtYWlsOiBzdHJpbmc7XG4gICAgICAgICAgc3RhdGU6IFRwQ2xhaW1BcHByb3ZlclN0YXRlO1xuICAgICAgICB9W107XG4gICAgICB9W107XG4gICAgfTtcbiAgICBhcHByb3ZhbHM6IHtcbiAgICAgIGlkOiBJRDtcbiAgICAgIG1vZGlmaWVkOiBEYXRlVGltZTtcbiAgICAgIGFwcHJvdmVyRW1haWw6IHN0cmluZztcbiAgICAgIHJlY2VpdmVyQ2lwaGVyOiBzdHJpbmc7XG4gICAgICByZWNlaXZlckNpcGhlclBhcnRpYWxBc3NlbWJseUtleTogc3RyaW5nO1xuICAgIH1bXTtcbiAgICBhc3NlbWJseUNpcGhlckRhdGE6IHN0cmluZztcbiAgICB3cmFwcGVkQXNzZW1ibHlLZXlWZXJpZmllclByazogc3RyaW5nO1xuICB9O1xufVxuZXhwb3J0IGNvbnN0IFRwUGFzc3dvcmRSZXNldFVzZXJRdWVyeSA9IGdxbFR5cGVkPFRwUGFzc3dvcmRSZXNldFVzZXJRdWVyeVJlc3VsdD5gXG5xdWVyeSBUcFBhc3N3b3JkUmVzZXRVc2VyUXVlcnkge1xuICB0cFBhc3N3b3JkUmVzZXRVc2VyIHtcbiAgICB1c2VybmFtZVxuICAgIHJlc2V0VXNlcm5hbWVcbiAgICBzdGF0ZVxuICAgIHBhc3NLZXkge1xuICAgICAgaWRcbiAgICAgIHBhc3NLZXlQYXJhbXNcbiAgICAgIHBhc3NJZHBQYXJhbXNcbiAgICB9XG4gICAgbWFzdGVyS2V5IHtcbiAgICAgIGlkXG4gICAgfVxuICAgIHB4ayB7XG4gICAgICBpZFxuICAgIH1cbiAgICBzZXNzaW9uRW5jcnlwdGlvbktleVxuICAgIGFzc2VtYmx5IHtcbiAgICAgIHNpbmdsZVJlamVjdFxuICAgICAgcXVvcnVtXG4gICAgICBzdWJBc3NlbWJsaWVzIHtcbiAgICAgICAgc2luZ2xlUmVqZWN0XG4gICAgICAgIHF1b3J1bVxuICAgICAgICBhcHByb3ZlcnMge1xuICAgICAgICAgIG5hbWVcbiAgICAgICAgICBlbWFpbFxuICAgICAgICAgIHN0YXRlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgYXBwcm92YWxzIHtcbiAgICAgIGlkXG4gICAgICBtb2RpZmllZFxuICAgICAgYXBwcm92ZXJFbWFpbFxuICAgICAgcmVjZWl2ZXJDaXBoZXJcbiAgICAgIHJlY2VpdmVyQ2lwaGVyUGFydGlhbEFzc2VtYmx5S2V5XG4gICAgfVxuICAgIGFzc2VtYmx5Q2lwaGVyRGF0YVxuICAgIHdyYXBwZWRBc3NlbWJseUtleVZlcmlmaWVyUHJrXG4gIH1cbn1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRwUGFzc3dvcmRSZXNldFF1ZXJ5UmVzdWx0IHtcbiAgdHBQYXNzd29yZFJlc2V0OiB7XG4gICAgaWQ6IElEO1xuICAgIGFwcGxpZWQ6IGJvb2xlYW47XG4gICAgYXNzZW1ibHk6IHtcbiAgICAgIHNpbmdsZVJlamVjdDogYm9vbGVhbjtcbiAgICAgIHF1b3J1bTogbnVtYmVyO1xuICAgICAgY2FuTWVldFF1b3J1bTogYm9vbGVhbjtcbiAgICAgIHN1YmplY3RDaXBoZXJEYXRhOiBzdHJpbmc7XG4gICAgICBzdWJqZWN0Q2lwaGVyRGF0YUNsZWFySnNvbjogSlNPTk9iamVjdDtcbiAgICAgIHN1YmplY3RLZXk6IHtcbiAgICAgICAgaWQ6IElEO1xuICAgICAgfTtcbiAgICAgIGFzc2VtYmx5S2V5OiB7XG4gICAgICAgIGlkOiBJRDtcbiAgICAgIH07XG4gICAgICBhc3NlbWJseUNpcGhlckRhdGE6IHN0cmluZztcbiAgICAgIHN1YkFzc2VtYmxpZXM6IHtcbiAgICAgICAgZWRnZXM6IHtcbiAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICBpZDogSUQ7XG4gICAgICAgICAgICBzaW5nbGVSZWplY3Q6IGJvb2xlYW47XG4gICAgICAgICAgICBxdW9ydW06IG51bWJlcjtcbiAgICAgICAgICAgIHN1YmplY3RDaXBoZXJEYXRhOiBzdHJpbmc7XG4gICAgICAgICAgICBzdWJqZWN0Q2lwaGVyRGF0YUNsZWFySnNvbjogSlNPTk9iamVjdDtcbiAgICAgICAgICAgIHN1YmplY3RLZXk6IHtcbiAgICAgICAgICAgICAgaWQ6IElEO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGFwcHJvdmVyczoge1xuICAgICAgICAgICAgICBlZGdlczoge1xuICAgICAgICAgICAgICAgIG5vZGU6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiBJRDtcbiAgICAgICAgICAgICAgICAgIHRwOiB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBJRDtcbiAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICBzaGFyZWRLZXk6IHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IElEO1xuICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgIHNoYXJlZENpcGhlckRhdGE6IHN0cmluZztcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9W107XG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH07XG4gICAgICAgIH1bXTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBUcFBhc3N3b3JkUmVzZXRRdWVyeSA9IGdxbFR5cGVkPFRwUGFzc3dvcmRSZXNldFF1ZXJ5UmVzdWx0PmBcbnF1ZXJ5IFRwUGFzc3dvcmRSZXNldFF1ZXJ5IHtcbiAgdHBQYXNzd29yZFJlc2V0IHtcbiAgICBpZFxuICAgIGFwcGxpZWRcbiAgICBhc3NlbWJseSB7XG4gICAgICBzaW5nbGVSZWplY3RcbiAgICAgIHF1b3J1bVxuICAgICAgY2FuTWVldFF1b3J1bVxuICAgICAgc3ViamVjdENpcGhlckRhdGFcbiAgICAgIHN1YmplY3RLZXkge1xuICAgICAgICBpZFxuICAgICAgfVxuICAgICAgYXNzZW1ibHlLZXkge1xuICAgICAgICBpZFxuICAgICAgfVxuICAgICAgYXNzZW1ibHlDaXBoZXJEYXRhXG4gICAgICBzdWJBc3NlbWJsaWVzIHtcbiAgICAgICAgZWRnZXMge1xuICAgICAgICAgIG5vZGUge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIHNpbmdsZVJlamVjdFxuICAgICAgICAgICAgcXVvcnVtXG4gICAgICAgICAgICBzdWJqZWN0Q2lwaGVyRGF0YVxuICAgICAgICAgICAgc3ViamVjdEtleSB7XG4gICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcHByb3ZlcnMge1xuICAgICAgICAgICAgICBlZGdlcyB7XG4gICAgICAgICAgICAgICAgbm9kZSB7XG4gICAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgICAgdHAge1xuICAgICAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgc2hhcmVkS2V5IHtcbiAgICAgICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHNoYXJlZENpcGhlckRhdGFcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uUmVzdWx0IHtcbiAgY3JlYXRlVHBQYXNzd29yZFJlc2V0OiB7XG4gICAgdHBQYXNzd29yZFJlc2V0OiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBDcmVhdGVUcFBhc3N3b3JkUmVzZXRNdXRhdGlvbiA9IGdxbFR5cGVkPENyZWF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uUmVzdWx0PmBcbm11dGF0aW9uIENyZWF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uKCRpbnB1dDogQ3JlYXRlVHBQYXNzd29yZFJlc2V0SW5wdXQhKSB7XG4gIGNyZWF0ZVRwUGFzc3dvcmRSZXNldChpbnB1dDogJGlucHV0KSB7XG4gICAgdHBQYXNzd29yZFJlc2V0IHtcbiAgICAgIGlkXG4gICAgfVxuICB9XG59YDtcblxuZXhwb3J0IGludGVyZmFjZSBEZWxldGVUcFBhc3N3b3JkUmVzZXRNdXRhdGlvblJlc3VsdCB7XG4gIGRlbGV0ZVRwUGFzc3dvcmRSZXNldDoge1xuICAgIGlkOiBJRDtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBEZWxldGVUcFBhc3N3b3JkUmVzZXRNdXRhdGlvbiA9IGdxbFR5cGVkPERlbGV0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uUmVzdWx0PmBcbm11dGF0aW9uIERlbGV0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uIHtcbiAgZGVsZXRlVHBQYXNzd29yZFJlc2V0KGlucHV0OiB7fSkge1xuICAgIGlkXG4gIH1cbn1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uUmVzdWx0IHtcbiAgdXBkYXRlVHBQYXNzd29yZFJlc2V0OiB7XG4gICAgdHBQYXNzd29yZFJlc2V0OiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBVcGRhdGVUcFBhc3N3b3JkUmVzZXRNdXRhdGlvbiA9IGdxbFR5cGVkPFVwZGF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uUmVzdWx0PmBcbm11dGF0aW9uIFVwZGF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uKCRpbnB1dDogVXBkYXRlVHBQYXNzd29yZFJlc2V0SW5wdXQhKSB7XG4gIHVwZGF0ZVRwUGFzc3dvcmRSZXNldChpbnB1dDogJGlucHV0KSB7XG4gICAgdHBQYXNzd29yZFJlc2V0IHtcbiAgICAgIGlkXG4gICAgfVxuICB9XG59YDtcbiJdfQ==
@@ -1,95 +0,0 @@
1
- import { __awaiter, __decorate } from "tslib";
2
- import { Injectable, Injector, NgZone } from '@angular/core';
3
- import { CreateTpPasswordResetMutation, DeleteTpPasswordResetMutation, TpPasswordResetQuery, UpdateTpPasswordResetMutation, CancelTpPasswordResetRequestMutation, } from './tp-password-reset.gql';
4
- import { RunOutsideAngular } from '../_common/run-outside-angular';
5
- import { TP_PASSWORD_RESET_SLIP39_PASSPHRASE } from './tp-password-reset.constants';
6
- import { TpPasswordResetAssemblyController } from './tp-password-reset.controller';
7
- import { LrMutation, LrService } from '../api/lr-graphql';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "./tp-password-reset.controller";
10
- let TpPasswordResetService = class TpPasswordResetService extends LrService {
11
- constructor(ngZone, injector, assemblyController) {
12
- super(injector);
13
- this.ngZone = ngZone;
14
- this.injector = injector;
15
- this.assemblyController = assemblyController;
16
- this.slip39Passphrase = TP_PASSWORD_RESET_SLIP39_PASSPHRASE;
17
- }
18
- getReset() {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- return (yield this.query({
21
- query: TpPasswordResetQuery,
22
- })).tpPasswordReset;
23
- });
24
- }
25
- cancelResetRequest() {
26
- return this.mutate(this.cancelResetRequestMutation());
27
- }
28
- cancelResetRequestMutation() {
29
- return new LrMutation({
30
- mutation: CancelTpPasswordResetRequestMutation,
31
- });
32
- }
33
- deleteReset() {
34
- return this.mutate(this.deleteResetMutation());
35
- }
36
- deleteResetMutation() {
37
- return new LrMutation({
38
- mutation: DeleteTpPasswordResetMutation,
39
- });
40
- }
41
- validateApprovers(approvers) {
42
- return this.assemblyController.validateApprovers(approvers);
43
- }
44
- createReset(input) {
45
- return this.mutate(this.createResetMutation(input));
46
- }
47
- createResetMutation(input) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const { mutationInput } = yield this.assemblyController.prepareCreate(input);
50
- return new LrMutation({
51
- mutation: CreateTpPasswordResetMutation,
52
- variables: {
53
- input: {
54
- assembly: Object.assign({}, mutationInput),
55
- },
56
- },
57
- });
58
- });
59
- }
60
- updateReset(input) {
61
- return this.mutate(this.updateResetMutation(input));
62
- }
63
- updateResetMutation(input) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- const passwordReset = yield this.getReset();
66
- const { mutationInput } = yield this.assemblyController.prepareUpdate(input, passwordReset.assembly);
67
- return new LrMutation({
68
- mutation: UpdateTpPasswordResetMutation,
69
- variables: {
70
- input: {
71
- assembly: Object.assign({}, mutationInput),
72
- },
73
- },
74
- });
75
- });
76
- }
77
- };
78
- TpPasswordResetService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TpPasswordResetService_Factory() { return new TpPasswordResetService(i0.ɵɵinject(i0.NgZone), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i1.TpPasswordResetAssemblyController)); }, token: TpPasswordResetService, providedIn: "root" });
79
- TpPasswordResetService.decorators = [
80
- { type: Injectable, args: [{
81
- providedIn: 'root',
82
- },] }
83
- ];
84
- TpPasswordResetService.ctorParameters = () => [
85
- { type: NgZone },
86
- { type: Injector },
87
- { type: TpPasswordResetAssemblyController }
88
- ];
89
- TpPasswordResetService = __decorate([
90
- RunOutsideAngular({
91
- ngZoneName: 'ngZone',
92
- })
93
- ], TpPasswordResetService);
94
- export { TpPasswordResetService };
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAtcGFzc3dvcmQtcmVzZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvb3B0L2F0bGFzc2lhbi9waXBlbGluZXMvYWdlbnQvYnVpbGQvcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvdHJ1c3RlZC1wYXJ0aWVzL3RwLXBhc3N3b3JkLXJlc2V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLDZCQUE2QixFQUM3QixvQkFBb0IsRUFDcEIsNkJBQTZCLEVBQzdCLG9DQUFvQyxHQUNyQyxNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztJQXdEN0Msc0JBQXNCLFNBQXRCLHNCQUF1QixTQUFRLFNBQVM7SUFHbkQsWUFDVSxNQUFjLEVBQ2QsUUFBa0IsRUFDbEIsa0JBQXFEO1FBRTdELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUpSLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUM7UUFML0QscUJBQWdCLEdBQUcsbUNBQW1DLENBQUM7SUFRdkQsQ0FBQztJQUVLLFFBQVE7O1lBQ1osT0FBTyxDQUNMLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDZixLQUFLLEVBQUUsb0JBQW9CO2FBQzVCLENBQUMsQ0FDSCxDQUFDLGVBQWUsQ0FBQztRQUNwQixDQUFDO0tBQUE7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixPQUFPLElBQUksVUFBVSxDQUFDO1lBQ3BCLFFBQVEsRUFBRSxvQ0FBb0M7U0FDL0MsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxVQUFVLENBQUM7WUFDcEIsUUFBUSxFQUFFLDZCQUE2QjtTQUN4QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsU0FBbUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUE0QjtRQUN0QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVLLG1CQUFtQixDQUFDLEtBQTRCOztZQUNwRCxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUNuRSxLQUFLLENBQ04sQ0FBQztZQUVGLE9BQU8sSUFBSSxVQUFVLENBQUM7Z0JBQ3BCLFFBQVEsRUFBRSw2QkFBNkI7Z0JBQ3ZDLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsUUFBUSxvQkFDSCxhQUFhLENBQ2pCO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUFBO0lBRUQsV0FBVyxDQUFDLEtBQTRCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUssbUJBQW1CLENBQUMsS0FBNEI7O1lBQ3BELE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRTVDLE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQ25FLEtBQUssRUFDTCxhQUFhLENBQUMsUUFBUSxDQUN2QixDQUFDO1lBRUYsT0FBTyxJQUFJLFVBQVUsQ0FBQztnQkFDcEIsUUFBUSxFQUFFLDZCQUE2QjtnQkFDdkMsU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRTt3QkFDTCxRQUFRLG9CQUNILGFBQWEsQ0FDakI7cUJBQ0Y7aUJBQ0Y7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDO0tBQUE7Q0FDRixDQUFBOzs7WUExRkEsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFuRThCLE1BQU07WUFBaEIsUUFBUTtZQVdwQixpQ0FBaUM7O0FBeUQ3QixzQkFBc0I7SUFObEMsaUJBQWlCLENBQUM7UUFDakIsVUFBVSxFQUFFLFFBQVE7S0FDckIsQ0FBQztHQUlXLHNCQUFzQixDQXVGbEM7U0F2Rlksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ3JlYXRlVHBQYXNzd29yZFJlc2V0TXV0YXRpb24sXG4gIERlbGV0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uLFxuICBUcFBhc3N3b3JkUmVzZXRRdWVyeSxcbiAgVXBkYXRlVHBQYXNzd29yZFJlc2V0TXV0YXRpb24sXG4gIENhbmNlbFRwUGFzc3dvcmRSZXNldFJlcXVlc3RNdXRhdGlvbixcbn0gZnJvbSAnLi90cC1wYXNzd29yZC1yZXNldC5ncWwnO1xuaW1wb3J0IHsgS2V5IH0gZnJvbSAnLi4vY3J5cHRvZ3JhcGh5L2NyeXB0b2dyYXBoeS50eXBlcyc7XG5pbXBvcnQgeyBSdW5PdXRzaWRlQW5ndWxhciB9IGZyb20gJy4uL19jb21tb24vcnVuLW91dHNpZGUtYW5ndWxhcic7XG5pbXBvcnQgeyBUUF9QQVNTV09SRF9SRVNFVF9TTElQMzlfUEFTU1BIUkFTRSB9IGZyb20gJy4vdHAtcGFzc3dvcmQtcmVzZXQuY29uc3RhbnRzJztcbmltcG9ydCB7IFRwUGFzc3dvcmRSZXNldEFzc2VtYmx5Q29udHJvbGxlciB9IGZyb20gJy4vdHAtcGFzc3dvcmQtcmVzZXQuY29udHJvbGxlcic7XG5pbXBvcnQgeyBMck11dGF0aW9uLCBMclNlcnZpY2UgfSBmcm9tICcuLi9hcGkvbHItZ3JhcGhxbCc7XG5pbXBvcnQgeyBKU09OT2JqZWN0LCBUcE5vZGUgfSBmcm9tICcuLi9hcGkvdHlwZXMnO1xuaW1wb3J0IHtcbiAgQ3JlYXRlVHBBc3NlbWJseUlucHV0LFxuICBVcGRhdGVUcEFzc2VtYmx5SW5wdXQsXG59IGZyb20gJy4vdHAtYXNzZW1ibHkudHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRwQXNzZW1ibHlBcHByb3ZlcnMge1xuICBpZDogc3RyaW5nO1xuICB0cDoge1xuICAgIGlkOiBzdHJpbmc7XG4gIH07XG4gIHNoYXJlZEtleTogS2V5O1xuICBzaGFyZWRDaXBoZXJEYXRhPzogc3RyaW5nO1xuICBzaGFyZWRDaXBoZXJEYXRhQ2xlYXJKc29uPzogSlNPTk9iamVjdDtcbiAgc2hhcmVkQ2lwaGVyQXBwcm92YWxEYXRhPzogc3RyaW5nO1xuICBzaGFyZWRDaXBoZXJBcHByb3ZhbERhdGFDbGVhckpzb24/OiBKU09OT2JqZWN0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRwU3ViQXNzZW1ibHkge1xuICBpZDogc3RyaW5nO1xuICBzaW5nbGVSZWplY3Q6IGJvb2xlYW47XG4gIHF1b3J1bTogbnVtYmVyO1xuICBzdWJqZWN0Q2lwaGVyRGF0YTogc3RyaW5nO1xuICBwbGFpblN1YmplY3RDaXBoZXJEYXRhOiBhbnk7XG4gIGFwcHJvdmVyczogVHBBc3NlbWJseUFwcHJvdmVyc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRwQXNzZW1ibHkge1xuICBzaW5nbGVSZWplY3Q6IGJvb2xlYW47XG4gIHF1b3J1bTogbnVtYmVyO1xuICBzdWJqZWN0S2V5OiBLZXk7XG4gIGFzc2VtYmx5S2V5OiBLZXk7XG4gIGFzc2VtYmx5Q2lwaGVyRGF0YTogc3RyaW5nO1xuICBwbGFpbkFzc2VtYmx5Q2lwaGVyRGF0YTogYW55O1xuICBzdWJBc3NlbWJsaWVzOiBUcFN1YkFzc2VtYmx5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHBQYXNzd29yZFJlc2V0IHtcbiAgaWQ6IHN0cmluZztcbiAgYXNzZW1ibHk6IFRwQXNzZW1ibHk7XG4gIGFwcGxpZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdFJlc2V0UmVzdWx0IHtcbiAgaWQ6IHN0cmluZztcbiAgYXNzb2NpYXRlX3Jlc2V0X3VzZXJfdG9rZW46IHN0cmluZztcbiAgcmVzZXRfdXNlcm5hbWU6IHN0cmluZztcbn1cblxuQFJ1bk91dHNpZGVBbmd1bGFyKHtcbiAgbmdab25lTmFtZTogJ25nWm9uZScsXG59KVxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRwUGFzc3dvcmRSZXNldFNlcnZpY2UgZXh0ZW5kcyBMclNlcnZpY2Uge1xuICBzbGlwMzlQYXNzcGhyYXNlID0gVFBfUEFTU1dPUkRfUkVTRVRfU0xJUDM5X1BBU1NQSFJBU0U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGFzc2VtYmx5Q29udHJvbGxlcjogVHBQYXNzd29yZFJlc2V0QXNzZW1ibHlDb250cm9sbGVyXG4gICkge1xuICAgIHN1cGVyKGluamVjdG9yKTtcbiAgfVxuXG4gIGFzeW5jIGdldFJlc2V0KCkge1xuICAgIHJldHVybiAoXG4gICAgICBhd2FpdCB0aGlzLnF1ZXJ5KHtcbiAgICAgICAgcXVlcnk6IFRwUGFzc3dvcmRSZXNldFF1ZXJ5LFxuICAgICAgfSlcbiAgICApLnRwUGFzc3dvcmRSZXNldDtcbiAgfVxuXG4gIGNhbmNlbFJlc2V0UmVxdWVzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5tdXRhdGUodGhpcy5jYW5jZWxSZXNldFJlcXVlc3RNdXRhdGlvbigpKTtcbiAgfVxuXG4gIGNhbmNlbFJlc2V0UmVxdWVzdE11dGF0aW9uKCkge1xuICAgIHJldHVybiBuZXcgTHJNdXRhdGlvbih7XG4gICAgICBtdXRhdGlvbjogQ2FuY2VsVHBQYXNzd29yZFJlc2V0UmVxdWVzdE11dGF0aW9uLFxuICAgIH0pO1xuICB9XG5cbiAgZGVsZXRlUmVzZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMubXV0YXRlKHRoaXMuZGVsZXRlUmVzZXRNdXRhdGlvbigpKTtcbiAgfVxuXG4gIGRlbGV0ZVJlc2V0TXV0YXRpb24oKSB7XG4gICAgcmV0dXJuIG5ldyBMck11dGF0aW9uKHtcbiAgICAgIG11dGF0aW9uOiBEZWxldGVUcFBhc3N3b3JkUmVzZXRNdXRhdGlvbixcbiAgICB9KTtcbiAgfVxuXG4gIHZhbGlkYXRlQXBwcm92ZXJzKGFwcHJvdmVyczogVHBOb2RlW10pOiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy5hc3NlbWJseUNvbnRyb2xsZXIudmFsaWRhdGVBcHByb3ZlcnMoYXBwcm92ZXJzKTtcbiAgfVxuXG4gIGNyZWF0ZVJlc2V0KGlucHV0OiBDcmVhdGVUcEFzc2VtYmx5SW5wdXQpIHtcbiAgICByZXR1cm4gdGhpcy5tdXRhdGUodGhpcy5jcmVhdGVSZXNldE11dGF0aW9uKGlucHV0KSk7XG4gIH1cblxuICBhc3luYyBjcmVhdGVSZXNldE11dGF0aW9uKGlucHV0OiBDcmVhdGVUcEFzc2VtYmx5SW5wdXQpIHtcbiAgICBjb25zdCB7IG11dGF0aW9uSW5wdXQgfSA9IGF3YWl0IHRoaXMuYXNzZW1ibHlDb250cm9sbGVyLnByZXBhcmVDcmVhdGUoXG4gICAgICBpbnB1dFxuICAgICk7XG5cbiAgICByZXR1cm4gbmV3IExyTXV0YXRpb24oe1xuICAgICAgbXV0YXRpb246IENyZWF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uLFxuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgYXNzZW1ibHk6IHtcbiAgICAgICAgICAgIC4uLm11dGF0aW9uSW5wdXQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICB1cGRhdGVSZXNldChpbnB1dDogVXBkYXRlVHBBc3NlbWJseUlucHV0KSB7XG4gICAgcmV0dXJuIHRoaXMubXV0YXRlKHRoaXMudXBkYXRlUmVzZXRNdXRhdGlvbihpbnB1dCkpO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlUmVzZXRNdXRhdGlvbihpbnB1dDogVXBkYXRlVHBBc3NlbWJseUlucHV0KSB7XG4gICAgY29uc3QgcGFzc3dvcmRSZXNldCA9IGF3YWl0IHRoaXMuZ2V0UmVzZXQoKTtcblxuICAgIGNvbnN0IHsgbXV0YXRpb25JbnB1dCB9ID0gYXdhaXQgdGhpcy5hc3NlbWJseUNvbnRyb2xsZXIucHJlcGFyZVVwZGF0ZShcbiAgICAgIGlucHV0LFxuICAgICAgcGFzc3dvcmRSZXNldC5hc3NlbWJseVxuICAgICk7XG5cbiAgICByZXR1cm4gbmV3IExyTXV0YXRpb24oe1xuICAgICAgbXV0YXRpb246IFVwZGF0ZVRwUGFzc3dvcmRSZXNldE11dGF0aW9uLFxuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgYXNzZW1ibHk6IHtcbiAgICAgICAgICAgIC4uLm11dGF0aW9uSW5wdXQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==