@verana-labs/vs-agent-sdk 2.0.0-dev.5 → 2.0.0-dev.50

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 (118) hide show
  1. package/build/agent/VsAgent.d.ts +11 -16
  2. package/build/agent/VsAgent.js +82 -172
  3. package/build/agent/VsAgent.js.map +1 -1
  4. package/build/agent/createVsAgent.d.ts +5 -0
  5. package/build/agent/createVsAgent.js +3 -0
  6. package/build/agent/createVsAgent.js.map +1 -1
  7. package/build/blockchain/AnonCredsTrustService.d.ts +53 -0
  8. package/build/blockchain/AnonCredsTrustService.js +238 -0
  9. package/build/blockchain/AnonCredsTrustService.js.map +1 -0
  10. package/build/blockchain/AuthorizationService.d.ts +0 -2
  11. package/build/blockchain/AuthorizationService.js +0 -18
  12. package/build/blockchain/AuthorizationService.js.map +1 -1
  13. package/build/blockchain/IndexerWebSocketService.d.ts +7 -1
  14. package/build/blockchain/IndexerWebSocketService.js +68 -36
  15. package/build/blockchain/IndexerWebSocketService.js.map +1 -1
  16. package/build/blockchain/VeranaChainService.d.ts +4 -1
  17. package/build/blockchain/VeranaChainService.js +44 -7
  18. package/build/blockchain/VeranaChainService.js.map +1 -1
  19. package/build/blockchain/VeranaIndexerService.d.ts +6 -0
  20. package/build/blockchain/VeranaIndexerService.js +20 -8
  21. package/build/blockchain/VeranaIndexerService.js.map +1 -1
  22. package/build/blockchain/handlers/defaultHandlers.js +2 -0
  23. package/build/blockchain/handlers/defaultHandlers.js.map +1 -1
  24. package/build/blockchain/handlers/index.d.ts +1 -0
  25. package/build/blockchain/handlers/index.js +1 -0
  26. package/build/blockchain/handlers/index.js.map +1 -1
  27. package/build/blockchain/handlers/selfIssuanceHandlers.d.ts +13 -0
  28. package/build/blockchain/handlers/selfIssuanceHandlers.js +71 -0
  29. package/build/blockchain/handlers/selfIssuanceHandlers.js.map +1 -0
  30. package/build/blockchain/handlers/stateMutations.d.ts +21 -2
  31. package/build/blockchain/handlers/stateMutations.js +271 -29
  32. package/build/blockchain/handlers/stateMutations.js.map +1 -1
  33. package/build/blockchain/index.d.ts +1 -0
  34. package/build/blockchain/index.js +1 -0
  35. package/build/blockchain/index.js.map +1 -1
  36. package/build/blockchain/types.d.ts +19 -1
  37. package/build/blockchain/types.js.map +1 -1
  38. package/build/bootstrap/EcsBootstrapService.d.ts +16 -3
  39. package/build/bootstrap/EcsBootstrapService.js +195 -74
  40. package/build/bootstrap/EcsBootstrapService.js.map +1 -1
  41. package/build/did/CachedWebDidResolver.d.ts +0 -4
  42. package/build/did/CachedWebDidResolver.js +1 -5
  43. package/build/did/CachedWebDidResolver.js.map +1 -1
  44. package/build/did/artifactServices.d.ts +11 -0
  45. package/build/did/artifactServices.js +48 -0
  46. package/build/did/artifactServices.js.map +1 -0
  47. package/build/did/legacyDidWeb.d.ts +6 -4
  48. package/build/did/legacyDidWeb.js +17 -14
  49. package/build/did/legacyDidWeb.js.map +1 -1
  50. package/build/did/migrations/index.d.ts +22 -0
  51. package/build/did/migrations/index.js +103 -0
  52. package/build/did/migrations/index.js.map +1 -0
  53. package/build/did/migrations/migrateWebVhLog.js.map +1 -0
  54. package/build/did/migrations/migrateWebVhVersionTime.js.map +1 -0
  55. package/build/events/BaseMessageEvents.js +109 -0
  56. package/build/events/BaseMessageEvents.js.map +1 -1
  57. package/build/events/ConnectionEvents.js +110 -82
  58. package/build/events/ConnectionEvents.js.map +1 -1
  59. package/build/events/VsAgentEvents.d.ts +1 -8
  60. package/build/events/VsAgentEvents.js +0 -1
  61. package/build/events/VsAgentEvents.js.map +1 -1
  62. package/build/events/VtFlowEvents.d.ts +1 -1
  63. package/build/events/VtFlowEvents.js +2 -19
  64. package/build/events/VtFlowEvents.js.map +1 -1
  65. package/build/index.d.ts +2 -0
  66. package/build/index.js +5 -1
  67. package/build/index.js.map +1 -1
  68. package/build/plugins/setupBaseDidComm.js +4 -6
  69. package/build/plugins/setupBaseDidComm.js.map +1 -1
  70. package/build/transports/VsAgentWsInboundTransport.d.ts +1 -1
  71. package/build/transports/VsAgentWsInboundTransport.js +20 -14
  72. package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
  73. package/build/utils/agent.d.ts +27 -3
  74. package/build/utils/agent.js +78 -19
  75. package/build/utils/agent.js.map +1 -1
  76. package/build/utils/didReadiness.d.ts +9 -0
  77. package/build/utils/didReadiness.js +42 -0
  78. package/build/utils/didReadiness.js.map +1 -0
  79. package/build/utils/ecsClaims.d.ts +47 -0
  80. package/build/utils/ecsClaims.js +120 -0
  81. package/build/utils/ecsClaims.js.map +1 -0
  82. package/build/utils/index.d.ts +2 -0
  83. package/build/utils/index.js +2 -0
  84. package/build/utils/index.js.map +1 -1
  85. package/build/utils/selfIssuedEcsCredential.d.ts +4 -0
  86. package/build/utils/selfIssuedEcsCredential.js +140 -0
  87. package/build/utils/selfIssuedEcsCredential.js.map +1 -0
  88. package/build/utils/setupSelfTr.d.ts +3 -56
  89. package/build/utils/setupSelfTr.js +41 -249
  90. package/build/utils/setupSelfTr.js.map +1 -1
  91. package/build/utils/trustCredentialStore.d.ts +32 -6
  92. package/build/utils/trustCredentialStore.js +182 -82
  93. package/build/utils/trustCredentialStore.js.map +1 -1
  94. package/build/utils/util.d.ts +10 -0
  95. package/build/utils/util.js +16 -0
  96. package/build/utils/util.js.map +1 -1
  97. package/build/utils/vtjscResolver.d.ts +18 -0
  98. package/build/utils/vtjscResolver.js +54 -0
  99. package/build/utils/vtjscResolver.js.map +1 -0
  100. package/build/vtFlow/VtFlowOrchestrator.d.ts +47 -9
  101. package/build/vtFlow/VtFlowOrchestrator.js +96 -55
  102. package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
  103. package/build/vtFlow/assertVerifiableService.d.ts +1 -0
  104. package/build/vtFlow/assertVerifiableService.js +45 -5
  105. package/build/vtFlow/assertVerifiableService.js.map +1 -1
  106. package/build/vtFlow/ecsIssuanceExemption.d.ts +12 -0
  107. package/build/vtFlow/ecsIssuanceExemption.js +84 -0
  108. package/build/vtFlow/ecsIssuanceExemption.js.map +1 -0
  109. package/build/vtFlow/index.d.ts +1 -0
  110. package/build/vtFlow/index.js +1 -0
  111. package/build/vtFlow/index.js.map +1 -1
  112. package/package.json +11 -11
  113. package/build/did/migrateWebVhLog.js.map +0 -1
  114. package/build/did/migrateWebVhVersionTime.js.map +0 -1
  115. /package/build/did/{migrateWebVhLog.d.ts → migrations/migrateWebVhLog.d.ts} +0 -0
  116. /package/build/did/{migrateWebVhLog.js → migrations/migrateWebVhLog.js} +0 -0
  117. /package/build/did/{migrateWebVhVersionTime.d.ts → migrations/migrateWebVhVersionTime.d.ts} +0 -0
  118. /package/build/did/{migrateWebVhVersionTime.js → migrations/migrateWebVhVersionTime.js} +0 -0
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AnonCredsTrustService = exports.AnonCredsTrustError = exports.AnonCredsTrustErrorReason = exports.AnonCredsTrustProblemCode = exports.REQUESTED_CREDENTIAL_SCHEMAS_METADATA = void 0;
4
+ const core_1 = require("@credo-ts/core");
5
+ const util_1 = require("../utils/util");
6
+ const types_1 = require("./types");
7
+ const VTJSC_FETCH_TIMEOUT_MS = 30000;
8
+ const CREDENTIAL_SCHEMA_REFERENCE = /^vpr:verana:([^:/]+):cs:(\d+)$/;
9
+ const RELATED_JSON_SCHEMA_CREDENTIAL_ID_TAG = 'relatedJsonSchemaCredentialId';
10
+ exports.REQUESTED_CREDENTIAL_SCHEMAS_METADATA = '_2060/requestedCredentialSchemas';
11
+ var AnonCredsTrustProblemCode;
12
+ (function (AnonCredsTrustProblemCode) {
13
+ AnonCredsTrustProblemCode["IssuerNotAuthorized"] = "e.p.issuer-not-authorized";
14
+ AnonCredsTrustProblemCode["TrustResolutionUnavailable"] = "e.p.trust-resolution-unavailable";
15
+ })(AnonCredsTrustProblemCode || (exports.AnonCredsTrustProblemCode = AnonCredsTrustProblemCode = {}));
16
+ var AnonCredsTrustErrorReason;
17
+ (function (AnonCredsTrustErrorReason) {
18
+ AnonCredsTrustErrorReason["NotDerivable"] = "not-derivable";
19
+ AnonCredsTrustErrorReason["NotAuthorized"] = "not-authorized";
20
+ AnonCredsTrustErrorReason["Unavailable"] = "unavailable";
21
+ })(AnonCredsTrustErrorReason || (exports.AnonCredsTrustErrorReason = AnonCredsTrustErrorReason = {}));
22
+ class AnonCredsTrustError extends Error {
23
+ constructor(reason, message) {
24
+ super(message);
25
+ this.reason = reason;
26
+ this.name = 'AnonCredsTrustError';
27
+ }
28
+ }
29
+ exports.AnonCredsTrustError = AnonCredsTrustError;
30
+ function notDerivable(message) {
31
+ return new AnonCredsTrustError(AnonCredsTrustErrorReason.NotDerivable, message);
32
+ }
33
+ function notAuthorized(message) {
34
+ return new AnonCredsTrustError(AnonCredsTrustErrorReason.NotAuthorized, message);
35
+ }
36
+ function unavailable(message) {
37
+ return new AnonCredsTrustError(AnonCredsTrustErrorReason.Unavailable, message);
38
+ }
39
+ function relatedJsonSchemaCredentialIdOf(metadata) {
40
+ const value = metadata[RELATED_JSON_SCHEMA_CREDENTIAL_ID_TAG];
41
+ return typeof value === 'string' && value.length > 0 ? value : undefined;
42
+ }
43
+ class AnonCredsTrustService {
44
+ constructor(agent) {
45
+ this.agent = agent;
46
+ this.derivations = new Map();
47
+ this.credentialSchemaLinks = new Map();
48
+ }
49
+ async deriveCredentialSchema(reference) {
50
+ const key = 'credentialDefinitionId' in reference
51
+ ? `credentialDefinition:${reference.credentialDefinitionId}`
52
+ : `schema:${reference.schemaId}`;
53
+ const cached = this.derivations.get(key);
54
+ if (cached)
55
+ return cached;
56
+ const object = await this.resolveAnonCredsObject(reference);
57
+ const link = await this.resolveCredentialSchemaLink(object.jsonSchemaCredentialId);
58
+ const derived = {
59
+ credentialSchemaId: link.credentialSchemaId,
60
+ ecosystemDid: link.ecosystemDid,
61
+ jsonSchemaCredentialId: object.jsonSchemaCredentialId,
62
+ anonCredsSchemaId: object.anonCredsSchemaId,
63
+ issuerId: object.issuerId,
64
+ };
65
+ this.derivations.set(key, derived);
66
+ return derived;
67
+ }
68
+ async assertAuthorized(options) {
69
+ const { did, role, credentialSchemaId } = options;
70
+ let participants;
71
+ try {
72
+ participants = await this.agent.indexer.listParticipants({
73
+ did,
74
+ role,
75
+ schemaId: credentialSchemaId,
76
+ participantState: types_1.ParticipantState.Active,
77
+ });
78
+ }
79
+ catch (error) {
80
+ throw unavailable(`the agent cannot read the Participant entries of "${did}" for the CredentialSchema ${credentialSchemaId}: ${error}`);
81
+ }
82
+ const authorized = (participants !== null && participants !== void 0 ? participants : []).some(participant => participant.did === did &&
83
+ participant.role === role &&
84
+ Number(participant.schema_id) === credentialSchemaId &&
85
+ participant.participant_state === types_1.ParticipantState.Active);
86
+ if (!authorized) {
87
+ throw notAuthorized(`"${did}" holds no active ${role} Participant for the CredentialSchema ${credentialSchemaId}`);
88
+ }
89
+ }
90
+ async assertOwnAuthorization(options) {
91
+ if (!this.agent.did) {
92
+ throw unavailable('the agent has no public DID, so it cannot check its own Participant entry');
93
+ }
94
+ await this.assertAuthorized(Object.assign({ did: this.agent.did }, options));
95
+ }
96
+ async findUnaccreditedDids(dids, role, credentialSchemaId) {
97
+ const unaccredited = [];
98
+ const unchecked = [];
99
+ for (const did of new Set(dids)) {
100
+ try {
101
+ await this.assertAuthorized({ did, role, credentialSchemaId });
102
+ }
103
+ catch (error) {
104
+ if (!(error instanceof AnonCredsTrustError))
105
+ throw error;
106
+ if (error.reason === AnonCredsTrustErrorReason.Unavailable)
107
+ unchecked.push(did);
108
+ else
109
+ unaccredited.push(did);
110
+ }
111
+ }
112
+ return { unaccredited, unchecked };
113
+ }
114
+ async resolveAnonCredsObject(reference) {
115
+ var _a, _b;
116
+ const anoncreds = this.agent.modules.anoncreds;
117
+ if ('credentialDefinitionId' in reference) {
118
+ const { credentialDefinitionId } = reference;
119
+ const [record] = await anoncreds.getCreatedCredentialDefinitions({ credentialDefinitionId });
120
+ const localId = record === null || record === void 0 ? void 0 : record.getTag(RELATED_JSON_SCHEMA_CREDENTIAL_ID_TAG);
121
+ if (record && typeof localId === 'string' && localId.length > 0) {
122
+ return {
123
+ jsonSchemaCredentialId: localId,
124
+ anonCredsSchemaId: record.credentialDefinition.schemaId,
125
+ issuerId: record.credentialDefinition.issuerId,
126
+ };
127
+ }
128
+ const result = await anoncreds.getCredentialDefinition(credentialDefinitionId, {
129
+ useLocalRecord: false,
130
+ });
131
+ if (!result.credentialDefinition) {
132
+ throw unavailable(`the agent cannot resolve the credential definition "${credentialDefinitionId}": ${(_a = result.resolutionMetadata.message) !== null && _a !== void 0 ? _a : result.resolutionMetadata.error}`);
133
+ }
134
+ const jsonSchemaCredentialId = relatedJsonSchemaCredentialIdOf(result.credentialDefinitionMetadata);
135
+ if (!jsonSchemaCredentialId) {
136
+ throw notDerivable(`the credential definition "${credentialDefinitionId}" carries no relatedJsonSchemaCredentialId, so it binds to no CredentialSchema`);
137
+ }
138
+ return {
139
+ jsonSchemaCredentialId,
140
+ anonCredsSchemaId: result.credentialDefinition.schemaId,
141
+ issuerId: result.credentialDefinition.issuerId,
142
+ };
143
+ }
144
+ const { schemaId } = reference;
145
+ const [record] = await anoncreds.getCreatedSchemas({ schemaId });
146
+ const localId = record === null || record === void 0 ? void 0 : record.getTag(RELATED_JSON_SCHEMA_CREDENTIAL_ID_TAG);
147
+ if (record && typeof localId === 'string' && localId.length > 0) {
148
+ return { jsonSchemaCredentialId: localId, anonCredsSchemaId: schemaId };
149
+ }
150
+ const result = await anoncreds.getSchema(schemaId, { useLocalRecord: false });
151
+ if (!result.schema) {
152
+ throw unavailable(`the agent cannot resolve the AnonCreds schema "${schemaId}": ${(_b = result.resolutionMetadata.message) !== null && _b !== void 0 ? _b : result.resolutionMetadata.error}`);
153
+ }
154
+ const jsonSchemaCredentialId = relatedJsonSchemaCredentialIdOf(result.schemaMetadata);
155
+ if (!jsonSchemaCredentialId) {
156
+ throw notDerivable(`the AnonCreds schema "${schemaId}" carries no relatedJsonSchemaCredentialId, so it binds to no CredentialSchema`);
157
+ }
158
+ return { jsonSchemaCredentialId, anonCredsSchemaId: schemaId };
159
+ }
160
+ async resolveCredentialSchemaLink(jsonSchemaCredentialId) {
161
+ var _a, _b, _c;
162
+ const cached = this.credentialSchemaLinks.get(jsonSchemaCredentialId);
163
+ if (cached)
164
+ return cached;
165
+ let document;
166
+ try {
167
+ document = await (0, util_1.fetchJson)(jsonSchemaCredentialId, VTJSC_FETCH_TIMEOUT_MS);
168
+ }
169
+ catch (error) {
170
+ throw unavailable(`the agent cannot read the VTJSC "${jsonSchemaCredentialId}": ${error}`);
171
+ }
172
+ await this.verifyVtjscProof(jsonSchemaCredentialId, document);
173
+ const subject = Array.isArray(document.credentialSubject)
174
+ ? document.credentialSubject[0]
175
+ : document.credentialSubject;
176
+ const schemaReference = (_a = subject === null || subject === void 0 ? void 0 : subject.jsonSchema) === null || _a === void 0 ? void 0 : _a.$ref;
177
+ const parsed = schemaReference === null || schemaReference === void 0 ? void 0 : schemaReference.match(CREDENTIAL_SCHEMA_REFERENCE);
178
+ if (!parsed) {
179
+ throw notDerivable(`the VTJSC "${jsonSchemaCredentialId}" names "${schemaReference !== null && schemaReference !== void 0 ? schemaReference : 'no'}" in credentialSubject.jsonSchema.$ref, which is no "vpr:verana:<chain>:cs:<id>" reference`);
180
+ }
181
+ const chainId = (_b = this.agent.veranaChain) === null || _b === void 0 ? void 0 : _b.getChainId;
182
+ if (!chainId) {
183
+ throw unavailable(`the agent runs on no chain, so it cannot read the CredentialSchema of the VTJSC "${jsonSchemaCredentialId}"`);
184
+ }
185
+ if (parsed[1] !== chainId) {
186
+ throw notDerivable(`the VTJSC "${jsonSchemaCredentialId}" names the chain "${parsed[1]}", and the agent runs on "${chainId}"`);
187
+ }
188
+ const credentialSchemaId = Number(parsed[2]);
189
+ const credentialSchema = await this.requireFromIndexer(() => this.agent.indexer.getCredentialSchema(credentialSchemaId, { allowNotFound: true }), `CredentialSchema ${credentialSchemaId}, which the VTJSC "${jsonSchemaCredentialId}" names`);
190
+ const ecosystem = await this.requireFromIndexer(() => this.agent.indexer.getEcosystem(credentialSchema.ecosystem_id, { allowNotFound: true }), `Ecosystem ${credentialSchema.ecosystem_id}, which the CredentialSchema ${credentialSchemaId} names`);
191
+ const ecosystemDid = ecosystem.did;
192
+ if (!ecosystemDid) {
193
+ throw notDerivable(`the Ecosystem of the CredentialSchema ${credentialSchemaId} carries no DID`);
194
+ }
195
+ const issuer = typeof document.issuer === 'string' ? document.issuer : (_c = document.issuer) === null || _c === void 0 ? void 0 : _c.id;
196
+ if (issuer !== ecosystemDid) {
197
+ throw notDerivable(`the VTJSC "${jsonSchemaCredentialId}" carries the issuer "${issuer}", and the Ecosystem of the CredentialSchema ${credentialSchemaId} is "${ecosystemDid}"`);
198
+ }
199
+ const link = { credentialSchemaId, ecosystemDid };
200
+ this.credentialSchemaLinks.set(jsonSchemaCredentialId, link);
201
+ return link;
202
+ }
203
+ async requireFromIndexer(read, describe) {
204
+ let value;
205
+ try {
206
+ value = await read();
207
+ }
208
+ catch (error) {
209
+ throw unavailable(`the agent cannot read the ${describe}: ${error}`);
210
+ }
211
+ if (!value)
212
+ throw notDerivable(`the VPR holds no ${describe}`);
213
+ return value;
214
+ }
215
+ async verifyVtjscProof(jsonSchemaCredentialId, document) {
216
+ var _a;
217
+ let credential;
218
+ try {
219
+ credential = core_1.JsonTransformer.fromJSON(document, core_1.W3cJsonLdVerifiableCredential);
220
+ }
221
+ catch (error) {
222
+ throw notDerivable(`the document at "${jsonSchemaCredentialId}" is no verifiable credential: ${error}`);
223
+ }
224
+ try {
225
+ const result = await this.agent.w3cCredentials.verifyCredential({ credential });
226
+ if (result.isValid)
227
+ return;
228
+ throw notDerivable(`the proof of the VTJSC "${jsonSchemaCredentialId}" is invalid: ${(_a = result.error) !== null && _a !== void 0 ? _a : 'the verification failed'}`);
229
+ }
230
+ catch (error) {
231
+ if (error instanceof AnonCredsTrustError)
232
+ throw error;
233
+ throw unavailable(`the agent cannot verify the proof of the VTJSC "${jsonSchemaCredentialId}": ${error}`);
234
+ }
235
+ }
236
+ }
237
+ exports.AnonCredsTrustService = AnonCredsTrustService;
238
+ //# sourceMappingURL=AnonCredsTrustService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnonCredsTrustService.js","sourceRoot":"","sources":["../../src/blockchain/AnonCredsTrustService.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,4 @@ export declare class AuthorizationService {
25
25
  hasFeegrant(participantId: number): boolean;
26
26
  agentHoldsOperatorGrant(msgType: string): Promise<boolean>;
27
27
  callerHoldsOperatorGrant(account: string, msgType: string): Promise<boolean>;
28
- callerHoldsAnyVsOperatorGrant(account: string, msgType: string): Promise<boolean>;
29
- callerHoldsVsOperatorGrant(account: string, participantId: number, msgType: string): Promise<boolean>;
30
28
  }
@@ -77,24 +77,6 @@ class AuthorizationService {
77
77
  a.msgTypes.includes(msgType) &&
78
78
  isOperatorAuthorizationActive(a.expiration, a.period));
79
79
  }
80
- async callerHoldsAnyVsOperatorGrant(account, msgType) {
81
- if (!account.trim())
82
- return false;
83
- const vsoas = await this.chain.listVsOperatorAuthorizations(account);
84
- return vsoas.some(vsoa => this.inScope(vsoa.corporationId) &&
85
- vsoa.records.some(r => this.vsoaByParticipant.has(r.participantId) &&
86
- r.msgTypes.includes(msgType) &&
87
- isVsoaRecordActive(r.expiration, r.period)));
88
- }
89
- async callerHoldsVsOperatorGrant(account, participantId, msgType) {
90
- if (!account.trim())
91
- return false;
92
- const vsoas = await this.chain.listVsOperatorAuthorizations(account);
93
- return vsoas.some(vsoa => this.inScope(vsoa.corporationId) &&
94
- vsoa.records.some(r => r.participantId === participantId &&
95
- r.msgTypes.includes(msgType) &&
96
- isVsoaRecordActive(r.expiration, r.period)));
97
- }
98
80
  }
99
81
  exports.AuthorizationService = AuthorizationService;
100
82
  //# sourceMappingURL=AuthorizationService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorizationService.js","sourceRoot":"","sources":["../../src/blockchain/AuthorizationService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorizationService.js","sourceRoot":"","sources":["../../src/blockchain/AuthorizationService.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export interface IndexerWebSocketServiceOptions {
7
7
  corporationId?: number;
8
8
  agentCorporationId?: number;
9
9
  }
10
+ export type IndexerSyncStatus = 'never-synced' | 'catching-up' | 'disconnected' | 'synced';
10
11
  export declare class IndexerWebSocketService {
11
12
  private readonly options;
12
13
  private ws;
@@ -15,18 +16,22 @@ export declare class IndexerWebSocketService {
15
16
  private watchdog;
16
17
  private stopped;
17
18
  private syncing;
19
+ private phase;
20
+ private everSynced;
18
21
  private generation;
19
22
  private chain;
20
23
  private syncBuffer;
21
- private subscribeSent;
24
+ private settleSubscribed;
22
25
  private readonly indexer;
23
26
  private readonly handlerRegistry;
24
27
  constructor(options: IndexerWebSocketServiceOptions);
25
28
  start(): Promise<void>;
29
+ get syncStatus(): IndexerSyncStatus;
26
30
  stop(): void;
27
31
  private get logger();
28
32
  private connect;
29
33
  private openWebSocket;
34
+ private resolveSubscribed;
30
35
  private handleMessage;
31
36
  private syncRest;
32
37
  private drainSyncBuffer;
@@ -34,6 +39,7 @@ export declare class IndexerWebSocketService {
34
39
  private runExclusive;
35
40
  private applyEvent;
36
41
  private applyChanges;
42
+ private emitNotification;
37
43
  private fetchActivity;
38
44
  private fetchEntity;
39
45
  private armWatchdog;
@@ -29,10 +29,12 @@ class IndexerWebSocketService {
29
29
  this.watchdog = null;
30
30
  this.stopped = false;
31
31
  this.syncing = false;
32
+ this.phase = 'connecting';
33
+ this.everSynced = false;
32
34
  this.generation = 0;
33
35
  this.chain = Promise.resolve();
34
36
  this.syncBuffer = [];
35
- this.subscribeSent = null;
37
+ this.settleSubscribed = null;
36
38
  this.indexer = new VeranaIndexerService_1.VeranaIndexerService({
37
39
  baseUrl: options.indexerUrl,
38
40
  logger: options.agent.config.logger,
@@ -43,6 +45,13 @@ class IndexerWebSocketService {
43
45
  this.stopped = false;
44
46
  await this.connect();
45
47
  }
48
+ get syncStatus() {
49
+ if (this.phase === 'catching-up')
50
+ return 'catching-up';
51
+ if (this.phase === 'synced')
52
+ return 'synced';
53
+ return this.everSynced ? 'disconnected' : 'never-synced';
54
+ }
46
55
  stop() {
47
56
  var _a;
48
57
  this.stopped = true;
@@ -62,14 +71,24 @@ class IndexerWebSocketService {
62
71
  return;
63
72
  const generation = ++this.generation;
64
73
  this.syncing = true;
74
+ this.phase = 'connecting';
65
75
  this.syncBuffer = [];
66
76
  const subscribed = new Promise(resolve => {
67
- this.subscribeSent = resolve;
77
+ this.settleSubscribed = resolve;
68
78
  });
69
79
  this.openWebSocket();
70
- await Promise.race([subscribed, delay(SUBSCRIBE_TIMEOUT_MS)]);
80
+ const outcome = await Promise.race([
81
+ subscribed,
82
+ delay(SUBSCRIBE_TIMEOUT_MS).then(() => 'timed-out'),
83
+ ]);
71
84
  if (this.stopped || generation !== this.generation)
72
85
  return;
86
+ if (outcome === 'disconnected')
87
+ return;
88
+ if (outcome === 'timed-out') {
89
+ this.logger.warn(`[IndexerWS] No 'subscribed' acknowledgement within ${SUBSCRIBE_TIMEOUT_MS}ms; starting the catch-up anyway. Events landing before the subscription becomes active may be missed.`);
90
+ }
91
+ this.phase = 'catching-up';
73
92
  try {
74
93
  await this.syncRest(generation);
75
94
  }
@@ -82,6 +101,8 @@ class IndexerWebSocketService {
82
101
  if (this.stopped || generation !== this.generation)
83
102
  return;
84
103
  this.syncing = false;
104
+ this.phase = 'synced';
105
+ this.everSynced = true;
85
106
  this.drainSyncBuffer(generation);
86
107
  }
87
108
  openWebSocket() {
@@ -98,13 +119,9 @@ class IndexerWebSocketService {
98
119
  if (ws === this.ws)
99
120
  this.logger.info(`[IndexerWS] Connected to indexer`);
100
121
  });
101
- const releaseSubscribeWait = () => {
102
- var _a;
103
- (_a = this.subscribeSent) === null || _a === void 0 ? void 0 : _a.call(this);
104
- this.subscribeSent = null;
105
- };
106
- ws.on('error', releaseSubscribeWait);
107
- ws.on('close', releaseSubscribeWait);
122
+ const abandonSubscribeWait = () => this.resolveSubscribed('disconnected');
123
+ ws.on('error', abandonSubscribeWait);
124
+ ws.on('close', abandonSubscribeWait);
108
125
  ws.on('ping', () => {
109
126
  if (ws === this.ws)
110
127
  this.armWatchdog();
@@ -119,6 +136,7 @@ class IndexerWebSocketService {
119
136
  if (ws !== this.ws)
120
137
  return;
121
138
  this.clearWatchdog();
139
+ this.phase = 'connecting';
122
140
  if (!this.stopped)
123
141
  this.scheduleReconnect();
124
142
  });
@@ -126,6 +144,11 @@ class IndexerWebSocketService {
126
144
  this.logger.error(`[IndexerWS] Error: ${error.message}`);
127
145
  });
128
146
  }
147
+ resolveSubscribed(outcome) {
148
+ var _a;
149
+ (_a = this.settleSubscribed) === null || _a === void 0 ? void 0 : _a.call(this, outcome);
150
+ this.settleSubscribed = null;
151
+ }
129
152
  handleMessage(ws, data) {
130
153
  let message;
131
154
  try {
@@ -140,11 +163,12 @@ class IndexerWebSocketService {
140
163
  const subscribe = this.options.corporationId != null
141
164
  ? { action: 'subscribe', corporationId: this.options.corporationId }
142
165
  : { action: 'subscribe', dids: this.options.agent.did ? [this.options.agent.did] : undefined };
143
- ws.send(JSON.stringify(subscribe), () => {
144
- var _a;
145
- (_a = this.subscribeSent) === null || _a === void 0 ? void 0 : _a.call(this);
146
- this.subscribeSent = null;
147
- });
166
+ ws.send(JSON.stringify(subscribe));
167
+ return;
168
+ }
169
+ if (message.type === 'subscribed') {
170
+ this.logger.debug(`[IndexerWS] Subscription active, delivery starts at block ${message.block}`);
171
+ this.resolveSubscribed('acknowledged');
148
172
  return;
149
173
  }
150
174
  if (message.type !== 'block')
@@ -222,8 +246,7 @@ class IndexerWebSocketService {
222
246
  const activity = await this.fetchActivity(event);
223
247
  if (this.stopped || generation !== this.generation)
224
248
  return;
225
- if (activity)
226
- await this.applyChanges(event, activity, state);
249
+ await this.applyChanges(event, activity, state);
227
250
  if (state.partialBlock === undefined || block > state.partialBlock) {
228
251
  state.partialBlock = block;
229
252
  state.partialKeys = [key];
@@ -238,30 +261,38 @@ class IndexerWebSocketService {
238
261
  async applyChanges(event, activity, state) {
239
262
  const syncState = state !== null && state !== void 0 ? state : (await (0, VeranaHelpers_1.loadSyncState)(this.options.agent));
240
263
  const block = event.block_height;
241
- (0, handlers_1.applyStateMutation)(syncState, activity);
242
- await this.handlerRegistry.dispatch(activity, {
243
- agent: this.options.agent,
244
- blockHeight: block,
245
- operatorAddress: event.payload.sender,
246
- agentCorporationId: this.options.agentCorporationId,
247
- state: syncState,
248
- txHash: event.tx_hash,
249
- });
264
+ if (activity) {
265
+ (0, handlers_1.applyStateMutation)(syncState, activity);
266
+ await this.handlerRegistry.dispatch(activity, {
267
+ agent: this.options.agent,
268
+ blockHeight: block,
269
+ operatorAddress: event.payload.sender,
270
+ agentCorporationId: this.options.agentCorporationId,
271
+ state: syncState,
272
+ txHash: event.tx_hash,
273
+ });
274
+ }
250
275
  if (!state) {
251
276
  syncState.lastBlockHeight = Math.max(syncState.lastBlockHeight, block);
252
277
  await (0, VeranaHelpers_1.saveSyncState)(this.options.agent, syncState);
253
278
  }
279
+ this.emitNotification(event, activity === null || activity === void 0 ? void 0 : activity.changes);
280
+ }
281
+ emitNotification(event, changes) {
282
+ const { payload } = event;
283
+ const resolved = changes && Object.keys(changes).length > 0;
254
284
  try {
255
- (0, events_1.emitVsAgentEvent)(this.options.agent, events_1.VsAgentEventTypes.IndexerNotification, new vs_agent_model_1.IndexerNotification({
256
- msg: activity.msg,
257
- entityType: String(activity.entity_type),
258
- entityId: String(activity.entity_id),
259
- changes: activity.changes,
260
- blockHeight: block,
261
- txHash: event.tx_hash,
262
- operatorAddress: event.payload.sender,
263
- timestamp: new Date(event.timestamp),
264
- }));
285
+ (0, events_1.emitVsAgentEvent)(this.options.agent, events_1.VsAgentEventTypes.IndexerNotification, new vs_agent_model_1.IndexerNotification(Object.assign({ eventType: event.event_type, did: event.did, blockHeight: event.block_height, txHash: event.tx_hash, timestamp: new Date(event.timestamp), payload: {
286
+ module: payload.module,
287
+ action: payload.action,
288
+ messageType: payload.message_type,
289
+ txIndex: payload.tx_index,
290
+ messageIndex: payload.message_index,
291
+ sender: payload.sender,
292
+ relatedDids: payload.related_dids,
293
+ entityType: payload.entity_type,
294
+ entityId: payload.entity_id,
295
+ } }, (resolved ? { changes } : {}))));
265
296
  }
266
297
  catch (err) {
267
298
  this.logger.error(`[IndexerWS] Failed to emit indexer notification: ${err.message}`);
@@ -314,6 +345,7 @@ class IndexerWebSocketService {
314
345
  if (this.stopped)
315
346
  return;
316
347
  this.logger.warn(`[IndexerWS] Forcing reconnect: ${reason}`);
348
+ this.phase = 'connecting';
317
349
  this.generation++; // stops queued work so it cannot move the height past the failed event
318
350
  this.clearWatchdog();
319
351
  const ws = this.ws;
@@ -1 +1 @@
1
- {"version":3,"file":"IndexerWebSocketService.js","sourceRoot":"","sources":["../../src/blockchain/IndexerWebSocketService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndexerWebSocketService.js","sourceRoot":"","sources":["../../src/blockchain/IndexerWebSocketService.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,17 @@
1
1
  import { type DeliverTxResponse } from '@cosmjs/stargate';
2
- import { Coin, CreateOrUpdateParticipantSessionParams, CredentialSchema, Ecosystem, OperatorAuthorization, Participant, SelfCreateParticipantParams, SetParticipantOPToValidatedParams, StartParticipantOPParams, VeranaChainConfig, VsOperatorAuthorization } from './types';
2
+ import { Coin, CreateOrUpdateParticipantSessionParams, CredentialSchema, Ecosystem, OperatorAuthorization, Participant, SelfCreateParticipantParams, SetParticipantOPToValidatedParams, StartParticipantOPParams, StoredDigest, VeranaChainConfig, VsOperatorAuthorization } from './types';
3
3
  export declare class VeranaChainService {
4
4
  private readonly config;
5
5
  private signingClient;
6
6
  private operatorAddress;
7
7
  private chainId;
8
8
  private corporationAddress;
9
+ private gasAdjustment;
9
10
  private ppQuery;
10
11
  private deQuery;
11
12
  private ecQuery;
12
13
  private csQuery;
14
+ private diQuery;
13
15
  constructor(config: VeranaChainConfig);
14
16
  get address(): string;
15
17
  get getChainId(): string;
@@ -23,6 +25,7 @@ export declare class VeranaChainService {
23
25
  listVsOperatorAuthorizations(vsOperator?: string): Promise<VsOperatorAuthorization[]>;
24
26
  getEcosystem(id: number): Promise<Ecosystem | undefined>;
25
27
  getCredentialSchema(id: number): Promise<CredentialSchema | undefined>;
28
+ getDigest(digest: string): Promise<StoredDigest | undefined>;
26
29
  startParticipantOP(params: StartParticipantOPParams): Promise<{
27
30
  participantId: number;
28
31
  txHash: string;