@lifeready/core 6.1.3 → 6.1.5

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 (77) hide show
  1. package/bundles/lifeready-core.umd.js +303 -295
  2. package/bundles/lifeready-core.umd.js.map +1 -1
  3. package/bundles/lifeready-core.umd.min.js +1 -1
  4. package/bundles/lifeready-core.umd.min.js.map +1 -1
  5. package/esm2015/lib/auth/auth.config.js +57 -0
  6. package/esm2015/lib/auth/auth.gql.private.js +85 -0
  7. package/esm2015/lib/auth/auth.service.js +602 -0
  8. package/esm2015/lib/auth/auth.types.js +21 -0
  9. package/esm2015/lib/idle/idle.service.js +3 -3
  10. package/esm2015/lib/item/item.gql.js +164 -0
  11. package/esm2015/lib/item/item.gql.private.js +23 -0
  12. package/esm2015/lib/item/item.service.js +592 -0
  13. package/esm2015/lib/item/item.types.js +2 -0
  14. package/esm2015/lib/key-exchange/key-exchange.gql.js +174 -0
  15. package/esm2015/lib/key-exchange/key-exchange.service.js +480 -0
  16. package/esm2015/lib/lbop/lbop.service.js +7 -15
  17. package/esm2015/lib/life-ready.module.js +2 -2
  18. package/esm2015/lib/password/password.service.js +1 -1
  19. package/esm2015/lib/plan/plan.gql.js +91 -0
  20. package/esm2015/lib/plan/plan.service.js +191 -0
  21. package/esm2015/lib/plan/plan.types.js +2 -0
  22. package/esm2015/lib/profile/profile.gql.js +2 -2
  23. package/esm2015/lib/profile/profile.service.js +1 -8
  24. package/esm2015/lib/profile/profile.types.js +1 -8
  25. package/esm2015/lib/scenario/scenario.service.js +8 -8
  26. package/esm2015/lib/shared-contact-card/shared-contact-card2.service.js +1 -1
  27. package/esm2015/lib/trusted-party/trusted-party.gql.js +64 -0
  28. package/esm2015/lib/trusted-party/trusted-party.gql.private.js +25 -0
  29. package/esm2015/lib/trusted-party/trusted-party.service.js +240 -0
  30. package/esm2015/lib/trusted-party/trusted-party.types.js +2 -0
  31. package/esm2015/public-api.js +17 -12
  32. package/fesm2015/lifeready-core.js +191 -213
  33. package/fesm2015/lifeready-core.js.map +1 -1
  34. package/lib/{auth2/auth2.service.d.ts → auth/auth.service.d.ts} +2 -2
  35. package/lib/idle/idle.service.d.ts +9 -2
  36. package/lib/{item2/item2.service.d.ts → item/item.service.d.ts} +39 -39
  37. package/lib/key-exchange/{key-exchange2.service.d.ts → key-exchange.service.d.ts} +2 -2
  38. package/lib/lbop/lbop.service.d.ts +1 -5
  39. package/lib/password/password.service.d.ts +1 -1
  40. package/lib/{plan2/plan2.service.d.ts → plan/plan.service.d.ts} +20 -20
  41. package/lib/profile/profile.service.d.ts +1 -2
  42. package/lib/profile/profile.types.d.ts +2 -15
  43. package/lib/scenario/scenario.service.d.ts +3 -3
  44. package/lib/shared-contact-card/shared-contact-card2.service.d.ts +1 -1
  45. package/lib/trusted-party/{trusted-party2.service.d.ts → trusted-party.service.d.ts} +6 -6
  46. package/lifeready-core.metadata.json +1 -1
  47. package/package.json +1 -1
  48. package/public-api.d.ts +16 -11
  49. package/esm2015/lib/auth2/auth.config.js +0 -57
  50. package/esm2015/lib/auth2/auth2.gql.private.js +0 -85
  51. package/esm2015/lib/auth2/auth2.service.js +0 -602
  52. package/esm2015/lib/auth2/auth2.types.js +0 -21
  53. package/esm2015/lib/item2/item2.gql.js +0 -164
  54. package/esm2015/lib/item2/item2.gql.private.js +0 -23
  55. package/esm2015/lib/item2/item2.service.js +0 -592
  56. package/esm2015/lib/item2/item2.types.js +0 -2
  57. package/esm2015/lib/key-exchange/key-exchange2.gql.js +0 -174
  58. package/esm2015/lib/key-exchange/key-exchange2.service.js +0 -480
  59. package/esm2015/lib/plan2/plan2.gql.js +0 -91
  60. package/esm2015/lib/plan2/plan2.service.js +0 -191
  61. package/esm2015/lib/plan2/plan2.types.js +0 -2
  62. package/esm2015/lib/trusted-party/trusted-party2.gql.js +0 -64
  63. package/esm2015/lib/trusted-party/trusted-party2.gql.private.js +0 -25
  64. package/esm2015/lib/trusted-party/trusted-party2.service.js +0 -240
  65. package/esm2015/lib/trusted-party/trusted-party2.types.js +0 -2
  66. /package/lib/{auth2 → auth}/auth.config.d.ts +0 -0
  67. /package/lib/{auth2/auth2.gql.private.d.ts → auth/auth.gql.private.d.ts} +0 -0
  68. /package/lib/{auth2/auth2.types.d.ts → auth/auth.types.d.ts} +0 -0
  69. /package/lib/{item2/item2.gql.d.ts → item/item.gql.d.ts} +0 -0
  70. /package/lib/{item2/item2.gql.private.d.ts → item/item.gql.private.d.ts} +0 -0
  71. /package/lib/{item2/item2.types.d.ts → item/item.types.d.ts} +0 -0
  72. /package/lib/key-exchange/{key-exchange2.gql.d.ts → key-exchange.gql.d.ts} +0 -0
  73. /package/lib/{plan2/plan2.gql.d.ts → plan/plan.gql.d.ts} +0 -0
  74. /package/lib/{plan2/plan2.types.d.ts → plan/plan.types.d.ts} +0 -0
  75. /package/lib/trusted-party/{trusted-party2.gql.d.ts → trusted-party.gql.d.ts} +0 -0
  76. /package/lib/trusted-party/{trusted-party2.gql.private.d.ts → trusted-party.gql.private.d.ts} +0 -0
  77. /package/lib/trusted-party/{trusted-party2.types.d.ts → trusted-party.types.d.ts} +0 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9pdGVtL2l0ZW0udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEpTT05PYmplY3QsIExpbmtUeXBlRmllbGQsIExyUmVsYXlJZElucHV0IH0gZnJvbSAnLi4vYXBpL3R5cGVzJztcbmltcG9ydCB7IFNvbWVSZXF1aXJlZCB9IGZyb20gJy4uL19jb21tb24vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElkS2V5UGFpciB7XG4gIGlkOiBzdHJpbmc7XG4gIGtleUlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElkS2V5SWQgPSBJZEtleVBhaXI7XG5cbi8vIFN1ZmZpeCBcIk9wdGlvbnNcIiBhcmUgd2hhdCdzIG5lZWQgYnkgdGhlIEtDIGNsaWVudC5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyZW50RGlyZWN0b3J5T3B0aW9ucyB7XG4gIGRpcmVjdG9yeUlkOiBMclJlbGF5SWRJbnB1dDtcbiAgLy8gSWYgd3JhcHBpbmcga2V5IHByb3ZpZGVkLCB0aGVuIHdlIGNhbiB0cnkgZmV0Y2hpbmcgaXQgZnJvbSB0aGVcbiAgLy8ga2V5IGdyYXBoLiBJZiBub3QgZm91bmQgaW4ga2V5IGdyYXBoLCB0aGVuIGZldGNoIHRoZSBkaXJlY3RvcnkuXG4gIHdyYXBwaW5nS2V5SWQ/OiBMclJlbGF5SWRJbnB1dDtcbiAgLy8gVE9ETzogdGhpcyBjYW4gYmUgb3RoZXIgdHlwZXMsIGJ1dCBzZXJ2ZXIgc2lkZSBpbXBsZW1lbnRhdGlvbiBoYXMgbm90IGJlZW5cbiAgLy8gdGhvcm91Z2hseSB0ZXN0ZWQuIFNvIGJlc3Qgbm90IHVzZSBhbnl0aGluZyBlbHNlIGFuZCBqdXN0IGxlYXZlIGl0IG91dCBzb1xuICAvLyBzZXJ2ZXIgdXNlcyB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBcIkhBUkRcIlxuICBsaW5rVHlwZT86IExpbmtUeXBlRmllbGQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyZW50Um9vdERpcmVjdG9yeUlucHV0IHtcbiAgd3JhcHBlZEtleTogc3RyaW5nO1xuICB3cmFwcGluZ0tleUlkOiBMclJlbGF5SWRJbnB1dDtcbn1cblxuLy8gU3VmZml4IFwiSW5wdXRcIiBtYXRjaGVkIHdpdGggdGhlIGdyYXBocWwgdHlwZXNcbi8vIFRPRE8gdGhlc2Ugc2hvdWxkIGJlIGNoYW5nZSB0byBiZSBleGFjdGx5IHRoZSBzYW1lIG9uIHRoZSBzZXJ2ZXIgc2luY2UgYWxsIHRoYXQgZGlmZmVyc1xuLy8gaXMgdGhlIHdyYXBwZWRLZXkvd3JhcHBlZEZpbGVLZXkgbmFtZVxuZXhwb3J0IGludGVyZmFjZSBQYXJlbnREaXJlY3RvcnlJbnB1dEJhc2Uge1xuICBkaXJlY3RvcnlJZDogTHJSZWxheUlkSW5wdXQ7XG4gIHdyYXBwaW5nS2V5SWQ6IExyUmVsYXlJZElucHV0O1xuICBsaW5rVHlwZT86IExpbmtUeXBlRmllbGQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyZW50RGlyZWN0b3J5SW5wdXQgZXh0ZW5kcyBQYXJlbnREaXJlY3RvcnlJbnB1dEJhc2Uge1xuICB3cmFwcGVkS2V5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZVBhcmVudERpcmVjdG9yeUlucHV0IGV4dGVuZHMgUGFyZW50RGlyZWN0b3J5SW5wdXRCYXNlIHtcbiAgd3JhcHBlZEZpbGVLZXk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEb3dubG9hZEZpbGVDb250ZW50T3B0aW9ucyB7XG4gIGZpbGVTdGF0ZU5vZGVJZDogTHJSZWxheUlkSW5wdXQ7XG4gIGZpbGVTdGF0ZUtleUlkPzogTHJSZWxheUlkSW5wdXQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbW9uRGlyZWN0b3J5T3B0aW9ucyB7XG4gIHBsYWluTWV0YUpzb24/OiBKU09OT2JqZWN0O1xuICBjaXBoZXJNZXRhQ2xlYXJKc29uPzogSlNPTk9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVEaXJlY3RvcnlPcHRpb25zIGV4dGVuZHMgQ29tbW9uRGlyZWN0b3J5T3B0aW9ucyB7XG4gIGFzUm9vdERpcmVjdG9yeT86IGJvb2xlYW47XG4gIHBhcmVudERpcmVjdG9yaWVzPzogUGFyZW50RGlyZWN0b3J5T3B0aW9uc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZURpcmVjdG9yeU9wdGlvbnMgZXh0ZW5kcyBDb21tb25EaXJlY3RvcnlPcHRpb25zIHtcbiAgZGlyZWN0b3J5SWQ6IExyUmVsYXlJZElucHV0O1xuICBkaXJlY3RvcnlLZXlJZD86IExyUmVsYXlJZElucHV0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vbkZpbGVPcHRpb25zIHtcbiAgcGxhaW5NZXRhSnNvbj86IEpTT05PYmplY3Q7XG4gIGNpcGhlck1ldGFDbGVhckpzb24/OiBKU09OT2JqZWN0O1xuICBmaWxlPzogRmlsZSB8IEFycmF5QnVmZmVyO1xuICAvLyBjdXN0b20gdXBsb2FkZXJcbiAgdXBsb2FkPzogKGNpcGhlckZpbGVDb250ZW50OiBzdHJpbmcpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVGaWxlT3B0aW9ucyBleHRlbmRzIENvbW1vbkZpbGVPcHRpb25zIHtcbiAgcGFyZW50RGlyZWN0b3JpZXM6IFBhcmVudERpcmVjdG9yeU9wdGlvbnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVGaWxlT3B0aW9ucyBleHRlbmRzIENvbW1vbkZpbGVPcHRpb25zIHtcbiAgZmlsZUlkOiBMclJlbGF5SWRJbnB1dDtcbiAgZmlsZUtleUlkPzogTHJSZWxheUlkSW5wdXQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmV2ZXJ0RmlsZU9wdGlvbnMge1xuICBmaWxlSWQ6IExyUmVsYXlJZElucHV0O1xuICB2ZXJzaW9uSWQ6IExyUmVsYXlJZElucHV0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYW5nZUl0ZW1QYXJlbnRzT3B0aW9ucyB7XG4gIHBhcmVudHNUb1JlbW92ZT86IExyUmVsYXlJZElucHV0W107XG4gIHBhcmVudHNUb0FkZD86IFBhcmVudERpcmVjdG9yeU9wdGlvbnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VEaXJlY3RvcnlQYXJlbnRzT3B0aW9uc1xuICBleHRlbmRzIENoYW5nZUl0ZW1QYXJlbnRzT3B0aW9ucyB7XG4gIGRpcmVjdG9yeUlkOiBMclJlbGF5SWRJbnB1dDtcbiAgZGlyZWN0b3J5S2V5SWQ/OiBMclJlbGF5SWRJbnB1dDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VGaWxlUGFyZW50c09wdGlvbnMgZXh0ZW5kcyBDaGFuZ2VJdGVtUGFyZW50c09wdGlvbnMge1xuICBmaWxlSWQ6IExyUmVsYXlJZElucHV0O1xuICBmaWxlS2V5SWQ/OiBMclJlbGF5SWRJbnB1dDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCZWdpbkRlbGV0ZUNoaWxkSXRlbUxpbmtzV2luZG93T3B0aW9ucyB7XG4gIGRpcmVjdG9yeUlkOiBMclJlbGF5SWRJbnB1dDtcbiAgcmVxdWVzdFdpbmRvd01zOiBudW1iZXI7XG59XG5cbi8vIENyZWF0aW5nIGRpcmVjdG9yeSB0cmVlIGFzIHJvb3QgZGlyZWN0b3J5IGlzIG5vdCBjdXJyZW50bHkgc3VwcG9ydGVkLCBoZW5jZSBvbWl0dGluZyBhc1Jvb3REaXJlY3RvcnlcbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlRGlyZWN0b3J5VHJlZU9wdGlvbnNcbiAgZXh0ZW5kcyBPbWl0PFxuICAgIFNvbWVSZXF1aXJlZDxDcmVhdGVEaXJlY3RvcnlPcHRpb25zLCAncGFyZW50RGlyZWN0b3JpZXMnPixcbiAgICAnYXNSb290RGlyZWN0b3J5J1xuICA+IHtcbiAgcmVxdWVzdFdpbmRvd01zOiBudW1iZXI7XG4gIGNyZWF0ZUNvbnRlbnQ6IChkaXJlY3Rvcnk6IElkS2V5UGFpcikgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRGaWxlQ29uZmlkZW50aWFsT3B0aW9ucyB7XG4gIGZpbGVJZDogTHJSZWxheUlkSW5wdXQ7XG4gIGNvbmZpZGVudGlhbDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXREaXJlY3RvcnlDb25maWRlbnRpYWxPcHRpb25zIHtcbiAgZGlyZWN0b3J5SWQ6IExyUmVsYXlJZElucHV0O1xuICBjb25maWRlbnRpYWw6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJjaGl2ZURpcmVjdG9yeU9wdGlvbnMge1xuICByZWN1cnNpdmU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5hcmNoaXZlRGlyZWN0b3J5T3B0aW9ucyB7XG4gIHJlY3Vyc2l2ZTogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -0,0 +1,174 @@
1
+ import { gqlTyped } from '../_common/ast';
2
+ export const KeyExchangeFields = `
3
+ id
4
+ token
5
+ state
6
+ mode
7
+ isInitiator
8
+ initiator {
9
+ id
10
+ username
11
+ config
12
+ }
13
+ responder {
14
+ id
15
+ username
16
+ }
17
+ created
18
+ modified
19
+ tokenExpiryTime
20
+ isExpired
21
+ initiatorRootKeyCipher
22
+ initiatorActionRequired
23
+ responderActionRequired
24
+ responderEmailAddress
25
+ otk {
26
+ state
27
+ otKeyParams
28
+ otKeyCipher
29
+ sharedKey {
30
+ id
31
+ }
32
+ mkSharedKey {
33
+ id
34
+ }
35
+ initiatorSigPxk {
36
+ id
37
+ }
38
+ responderSigPxk {
39
+ id
40
+ }
41
+ initiatorOneTimePbkCipher
42
+ responderPbkCipher
43
+ }
44
+ `;
45
+ export const UserSharedKeyFields = `
46
+ userSigPrk {
47
+ id
48
+ }
49
+ otherSigPbk {
50
+ id
51
+ }
52
+ sharedKey {
53
+ id
54
+ }
55
+ mkSharedKey {
56
+ id
57
+ }
58
+ mkPxk {
59
+ id
60
+ pbk
61
+ }
62
+ mkReshareRequestCipher
63
+ mkReshareResponseCipher
64
+ mkReshareRequestSent
65
+ mkReshareResponseSent
66
+ `;
67
+ export const KeyExchangesQuery2 = gqlTyped `
68
+ query KeyExchangesQuery2($state: String) {
69
+ keyExchanges(state: $state) {
70
+ edges {
71
+ node {
72
+ ${KeyExchangeFields}
73
+ }
74
+ }
75
+ }
76
+ }
77
+ `;
78
+ export const KeyExchangeQuery2 = gqlTyped `
79
+ query KeyExchangeQuery2($id: LrRelayIdInput!) {
80
+ keyExchange(id: $id) {
81
+ ${KeyExchangeFields}
82
+ }
83
+ }
84
+ `;
85
+ export const KeyExchangeTokenQuery2 = gqlTyped `
86
+ query KeyExchangeTokenQuery2($id: LrRelayIdInput!, $token: String) {
87
+ keyExchange(id: $id, token: $token) {
88
+ ${KeyExchangeFields}
89
+ }
90
+ }
91
+ `;
92
+ export const CancelKeyExchangeMutation = gqlTyped `
93
+ mutation CancelKeyExchangeMutation($input: CancelKeyExchangeInput!) {
94
+ cancelKeyExchange(input: $input) {
95
+ keyExchange {
96
+ id
97
+ }
98
+ }
99
+ }
100
+ `;
101
+ export const DeclineKeyExchangeMutation = gqlTyped `
102
+ mutation DeclineKeyExchangeMutation($input: DeclineKeyExchangeInput!) {
103
+ declineKeyExchange(input: $input) {
104
+ keyExchange {
105
+ id
106
+ }
107
+ }
108
+ }
109
+ `;
110
+ export const InitiateKeyExchangeOtkMutation = gqlTyped `
111
+ mutation InitiateKeyExchangeOtkMutation(
112
+ $input: InitiateKeyExchangeOtkInput!
113
+ ) {
114
+ initiateKeyExchangeOtk(input: $input) {
115
+ keyExchange {
116
+ ${KeyExchangeFields}
117
+ }
118
+ }
119
+ }
120
+ `;
121
+ export const RespondKeyExchangeOtkMutation = gqlTyped `
122
+ mutation RespondKeyExchangeOtkMutation($input: RespondKeyExchangeOtkInput!) {
123
+ respondKeyExchangeOtk(input: $input) {
124
+ keyExchange {
125
+ ${KeyExchangeFields}
126
+ }
127
+ userSharedKey {
128
+ ${UserSharedKeyFields}
129
+ }
130
+ tp {
131
+ id
132
+ user {
133
+ config
134
+ }
135
+ }
136
+ }
137
+ }
138
+ `;
139
+ export const CompleteKeyExchangeOtkMutation = gqlTyped `
140
+ mutation CompleteKeyExchangeOtkMutation(
141
+ $input: CompleteKeyExchangeOtkInput!
142
+ ) {
143
+ completeKeyExchangeOtk(input: $input) {
144
+ keyExchange {
145
+ ${KeyExchangeFields}
146
+ }
147
+ userSharedKey {
148
+ ${UserSharedKeyFields}
149
+ }
150
+ tp {
151
+ id
152
+ user {
153
+ config
154
+ }
155
+ }
156
+ }
157
+ }
158
+ `;
159
+ export const CurrentUserSharedKeyQuery2 = gqlTyped `
160
+ query CurrentUserSharedKeyQuery2(
161
+ $username: String
162
+ $userId: LrRelayIdInput
163
+ ) {
164
+ currentUserSharedKey(
165
+ username: $username
166
+ userId: $userId
167
+ ) {
168
+ userSharedKey {
169
+ ${UserSharedKeyFields}
170
+ }
171
+ }
172
+ }
173
+ `;
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LWV4Y2hhbmdlLmdxbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9rZXktZXhjaGFuZ2Uva2V5LWV4Y2hhbmdlLmdxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUEwRDFDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0EwQ2hDLENBQUM7QUF3QkYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXFCbEMsQ0FBQztBQUtGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLFFBQVEsQ0FBb0I7Ozs7O1VBS3BELGlCQUFpQjs7Ozs7Q0FLMUIsQ0FBQztBQUtGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLFFBQVEsQ0FBbUI7OztNQUd0RCxpQkFBaUI7OztDQUd0QixDQUFDO0FBT0YsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsUUFBUSxDQUF3Qjs7O01BR2hFLGlCQUFpQjs7O0NBR3RCLENBQUM7QUFTRixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxRQUFRLENBQTJCOzs7Ozs7OztDQVEzRSxDQUFDO0FBU0YsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsUUFBUSxDQUE0Qjs7Ozs7Ozs7Q0FRN0UsQ0FBQztBQU9GLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLFFBQVEsQ0FBZ0M7Ozs7OztRQU05RSxpQkFBaUI7Ozs7Q0FJeEIsQ0FBQztBQWNGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLFFBQVEsQ0FBK0I7Ozs7UUFJNUUsaUJBQWlCOzs7UUFHakIsbUJBQW1COzs7Ozs7Ozs7O0NBVTFCLENBQUM7QUFjRixNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxRQUFRLENBQWdDOzs7Ozs7UUFNOUUsaUJBQWlCOzs7UUFHakIsbUJBQW1COzs7Ozs7Ozs7O0NBVTFCLENBQUM7QUFPRixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxRQUFRLENBQTRCOzs7Ozs7Ozs7O1FBVXRFLG1CQUFtQjs7OztDQUkxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSldLIH0gZnJvbSAnbm9kZS1qb3NlJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb24sXG4gIERhdGVUaW1lLFxuICBJRCxcbiAgSlNPTk9iamVjdCxcbiAgSlNPTlN0cmluZyxcbiAgTHJFbWFpbCxcbiAgT3RLZXlDaXBoZXJDbGVhckpzb24yLFxufSBmcm9tICcuLi9hcGkvdHlwZXMnO1xuaW1wb3J0IHsgZ3FsVHlwZWQgfSBmcm9tICcuLi9fY29tbW9uL2FzdCc7XG5cbmV4cG9ydCB0eXBlIEtleUV4Y2hhbmdlU3RhdGUyID1cbiAgfCAnSU5fUFJPR1JFU1MnXG4gIHwgJ0NPTVBMRVRFRCdcbiAgfCAnREVDTElORUQnXG4gIHwgJ0NBTkNFTExFRCdcbiAgfCAnREVMRVRFRCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5RXhjaGFuZ2VGaWVsZHNSZXN1bHQge1xuICBpZDogSUQ7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHN0YXRlOiBLZXlFeGNoYW5nZVN0YXRlMjtcbiAgbW9kZTogJ09USyc7XG4gIGlzSW5pdGlhdG9yOiBib29sZWFuO1xuICBpbml0aWF0b3I6IHtcbiAgICBpZDogSUQ7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICBjb25maWc6IEpTT05TdHJpbmc7XG4gICAgY29uZmlnSnNvbjogSlNPTk9iamVjdDtcbiAgfTtcbiAgcmVzcG9uZGVyOiB7XG4gICAgaWQ6IElEO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gIH07XG4gIGNyZWF0ZWQ6IERhdGVUaW1lO1xuICBtb2RpZmllZDogRGF0ZVRpbWU7XG4gIHRva2VuRXhwaXJ5VGltZTogRGF0ZVRpbWU7XG4gIGlzRXhwaXJlZDogYm9vbGVhbjtcbiAgaW5pdGlhdG9yUm9vdEtleUNpcGhlcjogc3RyaW5nO1xuICBpbml0aWF0b3JSb290S2V5Q2lwaGVyQ2xlYXJKc29uOiBKU09OT2JqZWN0O1xuICBpbml0aWF0b3JBY3Rpb25SZXF1aXJlZDogYm9vbGVhbjtcbiAgcmVzcG9uZGVyQWN0aW9uUmVxdWlyZWQ6IGJvb2xlYW47XG4gIHJlc3BvbmRlckVtYWlsQWRkcmVzczogTHJFbWFpbDtcbiAgb3RrOiB7XG4gICAgc3RhdGU6ICdPVEtfSU5JVElBVEVEJyB8ICdPVEtfQUNDRVBURUQnIHwgJ09US19DT01QTEVURUQnO1xuICAgIG90S2V5UGFyYW1zOiBzdHJpbmc7XG4gICAgb3RLZXlDaXBoZXI6IHN0cmluZztcbiAgICBvdEtleT86IEpXSy5LZXk7XG4gICAgb3RLZXlDaXBoZXJDbGVhckpzb24/OiBPdEtleUNpcGhlckNsZWFySnNvbjI7XG4gICAgc2hhcmVkS2V5OiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgICBta1NoYXJlZEtleToge1xuICAgICAgaWQ6IElEO1xuICAgIH07XG4gICAgaW5pdGlhdG9yU2lnUHhrOiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgICByZXNwb25kZXJTaWdQeGs6IHtcbiAgICAgIGlkOiBJRDtcbiAgICB9O1xuICAgIGluaXRpYXRvck9uZVRpbWVQYmtDaXBoZXI6IHN0cmluZztcbiAgICBpbml0aWF0b3JPbmVUaW1lUGJrQ2lwaGVyQ2xlYXJKc29uOiBKU09OT2JqZWN0O1xuICAgIHJlc3BvbmRlclBia0NpcGhlcjogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgS2V5RXhjaGFuZ2VGaWVsZHMgPSBgXG4gIGlkXG4gIHRva2VuXG4gIHN0YXRlXG4gIG1vZGVcbiAgaXNJbml0aWF0b3JcbiAgaW5pdGlhdG9yIHtcbiAgICBpZFxuICAgIHVzZXJuYW1lXG4gICAgY29uZmlnXG4gIH1cbiAgcmVzcG9uZGVyIHtcbiAgICBpZFxuICAgIHVzZXJuYW1lXG4gIH1cbiAgY3JlYXRlZFxuICBtb2RpZmllZFxuICB0b2tlbkV4cGlyeVRpbWVcbiAgaXNFeHBpcmVkXG4gIGluaXRpYXRvclJvb3RLZXlDaXBoZXJcbiAgaW5pdGlhdG9yQWN0aW9uUmVxdWlyZWRcbiAgcmVzcG9uZGVyQWN0aW9uUmVxdWlyZWRcbiAgcmVzcG9uZGVyRW1haWxBZGRyZXNzXG4gIG90ayB7XG4gICAgc3RhdGVcbiAgICBvdEtleVBhcmFtc1xuICAgIG90S2V5Q2lwaGVyXG4gICAgc2hhcmVkS2V5IHtcbiAgICAgIGlkXG4gICAgfVxuICAgIG1rU2hhcmVkS2V5IHtcbiAgICAgIGlkXG4gICAgfVxuICAgIGluaXRpYXRvclNpZ1B4ayB7XG4gICAgICBpZFxuICAgIH1cbiAgICByZXNwb25kZXJTaWdQeGsge1xuICAgICAgaWRcbiAgICB9XG4gICAgaW5pdGlhdG9yT25lVGltZVBia0NpcGhlclxuICAgIHJlc3BvbmRlclBia0NpcGhlclxuICB9XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJTaGFyZWRLZXlGaWVsZHNSZXN1bHQge1xuICB1c2VyU2lnUHJrOiB7XG4gICAgaWQ6IElEO1xuICB9O1xuICBvdGhlclNpZ1Biazoge1xuICAgIGlkOiBJRDtcbiAgfTtcbiAgc2hhcmVkS2V5OiB7XG4gICAgaWQ6IElEO1xuICB9O1xuICBta1NoYXJlZEtleToge1xuICAgIGlkOiBJRDtcbiAgfTtcbiAgbWtQeGs6IHtcbiAgICBpZDogSUQ7XG4gICAgcGJrOiBKU09OT2JqZWN0O1xuICB9O1xuICBta1Jlc2hhcmVSZXF1ZXN0Q2lwaGVyOiBzdHJpbmc7XG4gIG1rUmVzaGFyZVJlc3BvbnNlQ2lwaGVyOiBzdHJpbmc7XG4gIG1rUmVzaGFyZVJlcXVlc3RTZW50OiBib29sZWFuO1xuICBta1Jlc2hhcmVSZXNwb25zZVNlbnQ6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgVXNlclNoYXJlZEtleUZpZWxkcyA9IGBcbiAgdXNlclNpZ1ByayB7XG4gICAgaWRcbiAgfVxuICBvdGhlclNpZ1BiayB7XG4gICAgaWRcbiAgfVxuICBzaGFyZWRLZXkge1xuICAgIGlkXG4gIH1cbiAgbWtTaGFyZWRLZXkge1xuICAgIGlkXG4gIH1cbiAgbWtQeGsge1xuICAgIGlkXG4gICAgcGJrXG4gIH1cbiAgbWtSZXNoYXJlUmVxdWVzdENpcGhlclxuICBta1Jlc2hhcmVSZXNwb25zZUNpcGhlclxuICBta1Jlc2hhcmVSZXF1ZXN0U2VudFxuICBta1Jlc2hhcmVSZXNwb25zZVNlbnRcbmA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5RXhjaGFuZ2VzUXVlcnkyIHtcbiAga2V5RXhjaGFuZ2VzOiBDb25uZWN0aW9uPEtleUV4Y2hhbmdlRmllbGRzUmVzdWx0Pjtcbn1cbmV4cG9ydCBjb25zdCBLZXlFeGNoYW5nZXNRdWVyeTIgPSBncWxUeXBlZDxLZXlFeGNoYW5nZXNRdWVyeTI+YFxucXVlcnkgS2V5RXhjaGFuZ2VzUXVlcnkyKCRzdGF0ZTogU3RyaW5nKSB7XG4gIGtleUV4Y2hhbmdlcyhzdGF0ZTogJHN0YXRlKSB7XG4gICAgZWRnZXMge1xuICAgICAgbm9kZSB7XG4gICAgICAgICR7S2V5RXhjaGFuZ2VGaWVsZHN9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIEtleUV4Y2hhbmdlUXVlcnkyIHtcbiAga2V5RXhjaGFuZ2U6IEtleUV4Y2hhbmdlRmllbGRzUmVzdWx0O1xufVxuZXhwb3J0IGNvbnN0IEtleUV4Y2hhbmdlUXVlcnkyID0gZ3FsVHlwZWQ8S2V5RXhjaGFuZ2VRdWVyeTI+YFxucXVlcnkgS2V5RXhjaGFuZ2VRdWVyeTIoJGlkOiBMclJlbGF5SWRJbnB1dCEpIHtcbiAga2V5RXhjaGFuZ2UoaWQ6ICRpZCkge1xuICAgICR7S2V5RXhjaGFuZ2VGaWVsZHN9XG4gIH1cbn1cbmA7XG5cbi8vIEtleSBncmFwaCBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgYXV0aGVudGljYXRlZCB1c2Vycy4gVGhpcyBxdWVyeVxuLy8gaXMgZm9yIHVuYXV0aGVudGljYXRlZCB1c2Vycy5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5RXhjaGFuZ2VUb2tlblF1ZXJ5MiB7XG4gIGtleUV4Y2hhbmdlOiBLZXlFeGNoYW5nZUZpZWxkc1Jlc3VsdDtcbn1cbmV4cG9ydCBjb25zdCBLZXlFeGNoYW5nZVRva2VuUXVlcnkyID0gZ3FsVHlwZWQ8S2V5RXhjaGFuZ2VUb2tlblF1ZXJ5Mj5gXG5xdWVyeSBLZXlFeGNoYW5nZVRva2VuUXVlcnkyKCRpZDogTHJSZWxheUlkSW5wdXQhLCAkdG9rZW46IFN0cmluZykge1xuICBrZXlFeGNoYW5nZShpZDogJGlkLCB0b2tlbjogJHRva2VuKSB7XG4gICAgJHtLZXlFeGNoYW5nZUZpZWxkc31cbiAgfVxufVxuYDtcblxuZXhwb3J0IGludGVyZmFjZSBDYW5jZWxLZXlFeGNoYW5nZU11dGF0aW9uIHtcbiAgY2FuY2VsS2V5RXhjaGFuZ2U6IHtcbiAgICBrZXlFeGNoYW5nZToge1xuICAgICAgaWQ6IElEO1xuICAgIH07XG4gIH07XG59XG5leHBvcnQgY29uc3QgQ2FuY2VsS2V5RXhjaGFuZ2VNdXRhdGlvbiA9IGdxbFR5cGVkPENhbmNlbEtleUV4Y2hhbmdlTXV0YXRpb24+YFxubXV0YXRpb24gQ2FuY2VsS2V5RXhjaGFuZ2VNdXRhdGlvbigkaW5wdXQ6IENhbmNlbEtleUV4Y2hhbmdlSW5wdXQhKSB7XG4gIGNhbmNlbEtleUV4Y2hhbmdlKGlucHV0OiAkaW5wdXQpIHtcbiAgICBrZXlFeGNoYW5nZSB7XG4gICAgICBpZFxuICAgIH1cbiAgfVxufVxuYDtcblxuZXhwb3J0IGludGVyZmFjZSBEZWNsaW5lS2V5RXhjaGFuZ2VNdXRhdGlvbiB7XG4gIGRlY2xpbmVLZXlFeGNoYW5nZToge1xuICAgIGtleUV4Y2hhbmdlOiB7XG4gICAgICBpZDogSUQ7XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBEZWNsaW5lS2V5RXhjaGFuZ2VNdXRhdGlvbiA9IGdxbFR5cGVkPERlY2xpbmVLZXlFeGNoYW5nZU11dGF0aW9uPmBcbm11dGF0aW9uIERlY2xpbmVLZXlFeGNoYW5nZU11dGF0aW9uKCRpbnB1dDogRGVjbGluZUtleUV4Y2hhbmdlSW5wdXQhKSB7XG4gIGRlY2xpbmVLZXlFeGNoYW5nZShpbnB1dDogJGlucHV0KSB7XG4gICAga2V5RXhjaGFuZ2Uge1xuICAgICAgaWRcbiAgICB9XG4gIH1cbn1cbmA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5pdGlhdGVLZXlFeGNoYW5nZU90a011dGF0aW9uIHtcbiAgaW5pdGlhdGVLZXlFeGNoYW5nZU90azoge1xuICAgIGtleUV4Y2hhbmdlOiBLZXlFeGNoYW5nZUZpZWxkc1Jlc3VsdDtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBJbml0aWF0ZUtleUV4Y2hhbmdlT3RrTXV0YXRpb24gPSBncWxUeXBlZDxJbml0aWF0ZUtleUV4Y2hhbmdlT3RrTXV0YXRpb24+YFxubXV0YXRpb24gSW5pdGlhdGVLZXlFeGNoYW5nZU90a011dGF0aW9uKFxuICAkaW5wdXQ6IEluaXRpYXRlS2V5RXhjaGFuZ2VPdGtJbnB1dCFcbikge1xuICBpbml0aWF0ZUtleUV4Y2hhbmdlT3RrKGlucHV0OiAkaW5wdXQpIHtcbiAgICBrZXlFeGNoYW5nZSB7XG4gICAgICAke0tleUV4Y2hhbmdlRmllbGRzfVxuICAgIH1cbiAgfVxufVxuYDtcblxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25kS2V5RXhjaGFuZ2VPdGtNdXRhdGlvbiB7XG4gIHJlc3BvbmRLZXlFeGNoYW5nZU90azoge1xuICAgIGtleUV4Y2hhbmdlOiBLZXlFeGNoYW5nZUZpZWxkc1Jlc3VsdDtcbiAgICB1c2VyU2hhcmVkS2V5OiBVc2VyU2hhcmVkS2V5RmllbGRzUmVzdWx0O1xuICAgIHRwOiB7XG4gICAgICBpZDogSUQ7XG4gICAgICB1c2VyOiB7XG4gICAgICAgIGNvbmZpZzogdW5rbm93bjtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBSZXNwb25kS2V5RXhjaGFuZ2VPdGtNdXRhdGlvbiA9IGdxbFR5cGVkPFJlc3BvbmRLZXlFeGNoYW5nZU90a011dGF0aW9uPmBcbm11dGF0aW9uIFJlc3BvbmRLZXlFeGNoYW5nZU90a011dGF0aW9uKCRpbnB1dDogUmVzcG9uZEtleUV4Y2hhbmdlT3RrSW5wdXQhKSB7XG4gIHJlc3BvbmRLZXlFeGNoYW5nZU90ayhpbnB1dDogJGlucHV0KSB7XG4gICAga2V5RXhjaGFuZ2Uge1xuICAgICAgJHtLZXlFeGNoYW5nZUZpZWxkc31cbiAgICB9XG4gICAgdXNlclNoYXJlZEtleSB7XG4gICAgICAke1VzZXJTaGFyZWRLZXlGaWVsZHN9XG4gICAgfVxuICAgIHRwIHtcbiAgICAgIGlkXG4gICAgICB1c2VyIHtcbiAgICAgICAgY29uZmlnXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsZXRlS2V5RXhjaGFuZ2VPdGtNdXRhdGlvbiB7XG4gIGNvbXBsZXRlS2V5RXhjaGFuZ2VPdGs6IHtcbiAgICBrZXlFeGNoYW5nZTogS2V5RXhjaGFuZ2VGaWVsZHNSZXN1bHQ7XG4gICAgdXNlclNoYXJlZEtleTogVXNlclNoYXJlZEtleUZpZWxkc1Jlc3VsdDtcbiAgICB0cDoge1xuICAgICAgaWQ6IElEO1xuICAgICAgdXNlcjoge1xuICAgICAgICBjb25maWc6IHVua25vd247XG4gICAgICB9O1xuICAgIH07XG4gIH07XG59XG5leHBvcnQgY29uc3QgQ29tcGxldGVLZXlFeGNoYW5nZU90a011dGF0aW9uID0gZ3FsVHlwZWQ8Q29tcGxldGVLZXlFeGNoYW5nZU90a011dGF0aW9uPmBcbm11dGF0aW9uIENvbXBsZXRlS2V5RXhjaGFuZ2VPdGtNdXRhdGlvbihcbiAgJGlucHV0OiBDb21wbGV0ZUtleUV4Y2hhbmdlT3RrSW5wdXQhXG4pIHtcbiAgY29tcGxldGVLZXlFeGNoYW5nZU90ayhpbnB1dDogJGlucHV0KSB7XG4gICAga2V5RXhjaGFuZ2Uge1xuICAgICAgJHtLZXlFeGNoYW5nZUZpZWxkc31cbiAgICB9XG4gICAgdXNlclNoYXJlZEtleSB7XG4gICAgICAke1VzZXJTaGFyZWRLZXlGaWVsZHN9XG4gICAgfVxuICAgIHRwIHtcbiAgICAgIGlkXG4gICAgICB1c2VyIHtcbiAgICAgICAgY29uZmlnXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5gO1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1cnJlbnRVc2VyU2hhcmVkS2V5UXVlcnkyIHtcbiAgY3VycmVudFVzZXJTaGFyZWRLZXk6IHtcbiAgICB1c2VyU2hhcmVkS2V5OiBVc2VyU2hhcmVkS2V5RmllbGRzUmVzdWx0O1xuICB9O1xufVxuZXhwb3J0IGNvbnN0IEN1cnJlbnRVc2VyU2hhcmVkS2V5UXVlcnkyID0gZ3FsVHlwZWQ8Q3VycmVudFVzZXJTaGFyZWRLZXlRdWVyeTI+YFxucXVlcnkgQ3VycmVudFVzZXJTaGFyZWRLZXlRdWVyeTIoXG4gICR1c2VybmFtZTogU3RyaW5nXG4gICR1c2VySWQ6IExyUmVsYXlJZElucHV0XG4pIHtcbiAgY3VycmVudFVzZXJTaGFyZWRLZXkoXG4gICAgdXNlcm5hbWU6ICR1c2VybmFtZVxuICAgIHVzZXJJZDogJHVzZXJJZFxuICApIHtcbiAgICB1c2VyU2hhcmVkS2V5IHtcbiAgICAgICR7VXNlclNoYXJlZEtleUZpZWxkc31cbiAgICB9XG4gIH1cbn1cbmA7XG4iXX0=