@verana-labs/vs-agent-sdk 2.0.0-dev.3 → 2.0.0-dev.31

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 (67) hide show
  1. package/build/agent/VsAgent.d.ts +5 -0
  2. package/build/agent/VsAgent.js +49 -27
  3. package/build/agent/VsAgent.js.map +1 -1
  4. package/build/agent/createVsAgent.d.ts +3 -0
  5. package/build/agent/createVsAgent.js +2 -0
  6. package/build/agent/createVsAgent.js.map +1 -1
  7. package/build/blockchain/IndexerWebSocketService.d.ts +7 -1
  8. package/build/blockchain/IndexerWebSocketService.js +41 -15
  9. package/build/blockchain/IndexerWebSocketService.js.map +1 -1
  10. package/build/blockchain/VeranaChainService.d.ts +5 -1
  11. package/build/blockchain/VeranaChainService.js +54 -5
  12. package/build/blockchain/VeranaChainService.js.map +1 -1
  13. package/build/blockchain/VeranaIndexerService.js +4 -4
  14. package/build/blockchain/VeranaIndexerService.js.map +1 -1
  15. package/build/blockchain/handlers/IndexerHandlerRegistry.d.ts +1 -0
  16. package/build/blockchain/handlers/IndexerHandlerRegistry.js.map +1 -1
  17. package/build/blockchain/handlers/defaultHandlers.js +3 -1
  18. package/build/blockchain/handlers/defaultHandlers.js.map +1 -1
  19. package/build/blockchain/handlers/index.d.ts +1 -0
  20. package/build/blockchain/handlers/index.js +1 -0
  21. package/build/blockchain/handlers/index.js.map +1 -1
  22. package/build/blockchain/handlers/selfIssuanceHandlers.d.ts +13 -0
  23. package/build/blockchain/handlers/selfIssuanceHandlers.js +71 -0
  24. package/build/blockchain/handlers/selfIssuanceHandlers.js.map +1 -0
  25. package/build/blockchain/handlers/stateMutations.d.ts +15 -1
  26. package/build/blockchain/handlers/stateMutations.js +190 -26
  27. package/build/blockchain/handlers/stateMutations.js.map +1 -1
  28. package/build/blockchain/types.d.ts +20 -1
  29. package/build/blockchain/types.js.map +1 -1
  30. package/build/bootstrap/EcsBootstrapService.d.ts +15 -3
  31. package/build/bootstrap/EcsBootstrapService.js +184 -74
  32. package/build/bootstrap/EcsBootstrapService.js.map +1 -1
  33. package/build/plugins/setupBaseDidComm.js +3 -2
  34. package/build/plugins/setupBaseDidComm.js.map +1 -1
  35. package/build/transports/VsAgentWsInboundTransport.d.ts +1 -1
  36. package/build/transports/VsAgentWsInboundTransport.js +20 -14
  37. package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
  38. package/build/utils/agent.d.ts +15 -0
  39. package/build/utils/agent.js +53 -4
  40. package/build/utils/agent.js.map +1 -1
  41. package/build/utils/didReadiness.d.ts +9 -0
  42. package/build/utils/didReadiness.js +42 -0
  43. package/build/utils/didReadiness.js.map +1 -0
  44. package/build/utils/index.d.ts +1 -0
  45. package/build/utils/index.js +1 -0
  46. package/build/utils/index.js.map +1 -1
  47. package/build/utils/setupSelfTr.d.ts +3 -1
  48. package/build/utils/setupSelfTr.js +89 -19
  49. package/build/utils/setupSelfTr.js.map +1 -1
  50. package/build/utils/trustCredentialStore.d.ts +27 -1
  51. package/build/utils/trustCredentialStore.js +170 -23
  52. package/build/utils/trustCredentialStore.js.map +1 -1
  53. package/build/utils/vtjscResolver.d.ts +18 -0
  54. package/build/utils/vtjscResolver.js +54 -0
  55. package/build/utils/vtjscResolver.js.map +1 -0
  56. package/build/vtFlow/VtFlowOrchestrator.d.ts +47 -9
  57. package/build/vtFlow/VtFlowOrchestrator.js +95 -54
  58. package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
  59. package/build/vtFlow/assertVerifiableService.js +4 -3
  60. package/build/vtFlow/assertVerifiableService.js.map +1 -1
  61. package/build/vtFlow/ecsIssuanceExemption.d.ts +12 -0
  62. package/build/vtFlow/ecsIssuanceExemption.js +84 -0
  63. package/build/vtFlow/ecsIssuanceExemption.js.map +1 -0
  64. package/build/vtFlow/index.d.ts +1 -0
  65. package/build/vtFlow/index.js +1 -0
  66. package/build/vtFlow/index.js.map +1 -1
  67. package/package.json +4 -4
@@ -4,6 +4,7 @@ exports.VtFlowOrchestrator = void 0;
4
4
  const core_1 = require("@credo-ts/core");
5
5
  const credo_ts_didcomm_vt_flow_1 = require("@verana-labs/credo-ts-didcomm-vt-flow");
6
6
  const verre_1 = require("@verana-labs/verre");
7
+ const ecsIssuanceExemption_1 = require("./ecsIssuanceExemption");
7
8
  const types_1 = require("../blockchain/types");
8
9
  const types_2 = require("../types");
9
10
  const utils_1 = require("../utils");
@@ -65,16 +66,7 @@ class VtFlowOrchestrator {
65
66
  connectionId = connection.id;
66
67
  }
67
68
  if (!connectionId) {
68
- const { connectionRecord } = await this.agent.didcomm.oob.receiveImplicitInvitation({
69
- did: validatorParticipant.did,
70
- ourDid: this.agent.did,
71
- label: this.agent.label,
72
- didCommVersion: 'v2',
73
- });
74
- if (!connectionRecord)
75
- throw new Error('Failed to establish DIDComm connection to validator');
76
- const ready = await this.agent.didcomm.connections.returnWhenIsConnected(connectionRecord.id);
77
- connectionId = ready.id;
69
+ connectionId = await (0, utils_1.connectToPublicDid)(this.agent, validatorParticipant.did);
78
70
  }
79
71
  return vtFlowApi.sendOnboardingRequest({
80
72
  connectionId,
@@ -85,8 +77,21 @@ class VtFlowOrchestrator {
85
77
  claims: input.claims,
86
78
  });
87
79
  }
88
- async validateAndOfferCredential(input) {
89
- var _a;
80
+ /**
81
+ * Validate an onboarding process: record the outcome on-chain, accept the onboarding request and
82
+ * move the record to VALIDATED. It sends no credential. Only a HOLDER takes part in a credential
83
+ * exchange; an ISSUER, a VERIFIER or a grantor joins the Ecosystem, and SetParticipantOPToValidated
84
+ * is the whole of it. The caller decides what follows, from the role of the returned participant.
85
+ *
86
+ * For a HOLDER it builds the credential before the chain write, and returns it for
87
+ * offerOnboardingCredential. Claims that do not satisfy the schema, or a schema fetch that fails,
88
+ * must stop the process while the chain holds no outcome yet and the caller can repeat the call.
89
+ *
90
+ * A record that is already VALIDATED and has no credential exchange keeps the chain outcome and
91
+ * only builds the credential again. A repeat call thus re-drives an offer that did not complete.
92
+ */
93
+ async validateOnboardingProcess(input) {
94
+ var _a, _b;
90
95
  const chain = this.requireChain();
91
96
  if (!this.agent.did)
92
97
  throw new Error('Agent has no public DID');
@@ -99,34 +104,63 @@ class VtFlowOrchestrator {
99
104
  if (record.variant !== credo_ts_didcomm_vt_flow_1.VtFlowVariant.OnboardingProcess) {
100
105
  throw new Error(`Record variant is '${record.variant}', expected OnboardingProcess`);
101
106
  }
102
- if (record.state !== credo_ts_didcomm_vt_flow_1.VtFlowState.AwaitingOr) {
103
- throw new Error(`Record state is '${record.state}', expected '${credo_ts_didcomm_vt_flow_1.VtFlowState.AwaitingOr}'`);
107
+ const resumeOffer = record.state === credo_ts_didcomm_vt_flow_1.VtFlowState.Validated && !record.credentialExchangeRecordId;
108
+ if (record.state !== credo_ts_didcomm_vt_flow_1.VtFlowState.AwaitingOr && !resumeOffer) {
109
+ throw new Error(`Record state is '${record.state}', expected '${credo_ts_didcomm_vt_flow_1.VtFlowState.AwaitingOr}', or ` +
110
+ `'${credo_ts_didcomm_vt_flow_1.VtFlowState.Validated}' with no credential exchange`);
104
111
  }
105
112
  if (!record.participantId)
106
113
  throw new Error('Record has no participantId');
107
- const holderParticipantId = Number(record.participantId);
108
- const holderParticipant = await chain.getParticipant(holderParticipantId);
109
- if (!holderParticipant)
110
- throw new Error(`Holder participant ${holderParticipantId} not found on chain`);
111
- if (!holderParticipant.did)
112
- throw new Error('Holder participant has no DID');
113
- const unsignedCredentialJson = await this.buildCredential({
114
- credentialSchemaId: input.credentialSchemaId,
115
- subjectDid: holderParticipant.did,
116
- claims: ((_a = record.claims) !== null && _a !== void 0 ? _a : {}),
117
- credentialType: input.credentialType,
118
- credentialContext: input.credentialContext,
119
- });
114
+ const participantId = Number(record.participantId);
115
+ const participant = await chain.getParticipant(participantId);
116
+ if (!participant)
117
+ throw new Error(`Applicant participant ${participantId} not found on chain`);
118
+ if (!participant.did)
119
+ throw new Error('Applicant participant has no DID');
120
+ const credential = Number(participant.role) === types_2.HOLDER_PARTICIPANT_TYPE
121
+ ? await this.buildCredential({
122
+ credentialSchemaId: (_a = input.credentialSchemaId) !== null && _a !== void 0 ? _a : String(participant.schemaId),
123
+ subjectDid: participant.did,
124
+ claims: ((_b = record.claims) !== null && _b !== void 0 ? _b : {}),
125
+ credentialType: input.credentialType,
126
+ credentialContext: input.credentialContext,
127
+ })
128
+ : undefined;
129
+ if (resumeOffer)
130
+ return { record, participant, credential };
120
131
  // op_summary_digest (MOD-PP-MSG-3) digests the applicant's submission, not the credential
121
- await chain.setParticipantOPToValidated({
122
- id: holderParticipantId,
123
- corporation: holderParticipant.corporation,
124
- });
132
+ await chain.setParticipantOPToValidated({ id: participantId, corporation: participant.corporation });
125
133
  await vtFlowApi.acceptOnboardingRequest(record.id);
126
- await vtFlowApi.markValidated(record.id);
134
+ const validated = await vtFlowApi.markValidated(record.id);
135
+ return { record: validated, participant, credential };
136
+ }
137
+ /**
138
+ * Offer the credential of an onboarding process to its applicant. Call it only for a HOLDER, and
139
+ * only after validateOnboardingProcess has moved the record to VALIDATED. Give it the credential
140
+ * that validateOnboardingProcess built, so that the process does not build the credential twice.
141
+ */
142
+ async offerOnboardingCredential(input) {
143
+ var _a, _b, _c, _d;
144
+ const chain = this.requireChain();
145
+ const vtFlowApi = this.resolveVtFlowApi();
146
+ const record = await vtFlowApi.findById(input.vtFlowRecordId);
147
+ if (!record)
148
+ throw new Error(`vt-flow record ${input.vtFlowRecordId} not found`);
149
+ if (!record.participantId)
150
+ throw new Error('Record has no participantId');
151
+ const participant = (_a = input.participant) !== null && _a !== void 0 ? _a : (await chain.getParticipant(Number(record.participantId)));
152
+ if (!(participant === null || participant === void 0 ? void 0 : participant.did))
153
+ throw new Error('Applicant participant has no DID');
154
+ const unsignedCredentialJson = (_b = input.credential) !== null && _b !== void 0 ? _b : (await this.buildCredential({
155
+ credentialSchemaId: (_c = input.credentialSchemaId) !== null && _c !== void 0 ? _c : String(participant.schemaId),
156
+ subjectDid: participant.did,
157
+ claims: ((_d = record.claims) !== null && _d !== void 0 ? _d : {}),
158
+ credentialType: input.credentialType,
159
+ credentialContext: input.credentialContext,
160
+ }));
127
161
  const { record: offered } = await vtFlowApi.offerCredentialForSession({
128
162
  vtFlowRecordId: record.id,
129
- issuerParticipantId: Number(holderParticipant.validatorParticipantId),
163
+ issuerParticipantId: Number(participant.validatorParticipantId),
130
164
  credentialFormats: {
131
165
  jsonld: {
132
166
  credential: unsignedCredentialJson,
@@ -136,6 +170,13 @@ class VtFlowOrchestrator {
136
170
  });
137
171
  return offered;
138
172
  }
173
+ /**
174
+ * Close an onboarding process that carries no credential exchange, on the validator side. The
175
+ * applicant reaches the same state from the SetParticipantOPToValidated chain event.
176
+ */
177
+ async completeOnboardingProcess(vtFlowRecordId) {
178
+ return this.resolveVtFlowApi().markCompleted(vtFlowRecordId);
179
+ }
139
180
  async acceptCredential(input) {
140
181
  const vtFlowApi = this.resolveVtFlowApi();
141
182
  const record = await vtFlowApi.findById(input.vtFlowRecordId);
@@ -154,7 +195,7 @@ class VtFlowOrchestrator {
154
195
  const chain = this.requireChain();
155
196
  if (!this.agent.did)
156
197
  throw new Error('Agent has no public DID');
157
- const indexer = this.requireIndexer();
198
+ const indexer = this.agent.indexer;
158
199
  const vtFlowApi = this.resolveVtFlowApi();
159
200
  const record = await vtFlowApi.findById(vtFlowRecordId);
160
201
  if (!record)
@@ -194,17 +235,12 @@ class VtFlowOrchestrator {
194
235
  };
195
236
  }
196
237
  async buildCredential(input) {
197
- var _a, _b, _c;
198
- const chain = this.requireChain();
199
- const didRecords = await this.agent.dids.getCreatedDids({ did: this.agent.did });
200
- const didRecord = didRecords[0];
201
- if (!didRecord)
202
- throw new Error('Agent DID record not found');
203
- const schemaRef = `vpr:verana:${chain.getChainId}:cs:${input.credentialSchemaId}`;
204
- const entry = await (0, utils_1.findMetadataEntry)(didRecord, '_vt/jsc', '', schemaRef);
205
- if (!entry)
206
- throw new Error(`No stored VTJSC found for ${schemaRef}`);
207
- const { data } = entry;
238
+ var _a;
239
+ const jsonSchemaCredentialId = await this.resolveJsonSchemaCredentialId(input.credentialSchemaId);
240
+ // A credential whose claims don't satisfy the schema's required fields is not a valid
241
+ // instance of that credential type — reject it here rather than issue an empty shell.
242
+ const schema = await this.agent.indexer.getCredentialSchema(input.credentialSchemaId);
243
+ (0, utils_1.validateSchema)(JSON.parse(schema.json_schema), Object.assign({ id: input.subjectDid }, input.claims));
208
244
  const unsignedCredential = (0, utils_1.createCredential)({
209
245
  id: `${this.agent.did}#${core_1.utils.uuid()}`,
210
246
  type: (_a = input.credentialType) !== null && _a !== void 0 ? _a : ['VerifiableCredential', 'VerifiableTrustCredential'],
@@ -214,14 +250,17 @@ class VtFlowOrchestrator {
214
250
  if (input.credentialContext)
215
251
  unsignedCredential.context = input.credentialContext;
216
252
  unsignedCredential.credentialSchema = {
217
- id: (_c = (_b = data.verifiableCredential) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.id,
253
+ id: jsonSchemaCredentialId,
218
254
  type: 'JsonSchemaCredential',
219
255
  };
220
256
  return core_1.JsonTransformer.toJSON(unsignedCredential);
221
257
  }
258
+ async resolveJsonSchemaCredentialId(credentialSchemaId) {
259
+ return (0, utils_1.resolveJsonSchemaCredentialId)(this.agent, this.agent.indexer, credentialSchemaId, this.requireChain().getChainId);
260
+ }
222
261
  /** Per the spec the algorithm comes from the schema, never from the digest value. */
223
262
  async digestAlgorithmForSchema(schemaId) {
224
- const schema = await this.requireIndexer().getCredentialSchema(schemaId);
263
+ const schema = await this.agent.indexer.getCredentialSchema(schemaId);
225
264
  if (!schema.digest_algorithm) {
226
265
  throw new Error(`Credential schema ${schemaId} has no digest_algorithm`);
227
266
  }
@@ -238,7 +277,7 @@ class VtFlowOrchestrator {
238
277
  if (record.issuerParticipantId == null) {
239
278
  throw new Error(`vt-flow record ${vtFlowRecordId} has no issuerParticipantId to anchor against`);
240
279
  }
241
- const issuer = await this.requireIndexer().getParticipant(record.issuerParticipantId);
280
+ const issuer = await this.agent.indexer.getParticipant(record.issuerParticipantId);
242
281
  const algorithm = await this.digestAlgorithmForSchema(issuer.schema_id);
243
282
  const digest = (0, verre_1.computeCredentialDigestJCS)(signedCredential, algorithm);
244
283
  await chain.createOrUpdateParticipantSession({
@@ -261,7 +300,7 @@ class VtFlowOrchestrator {
261
300
  if (!record.credentialExchangeRecordId) {
262
301
  throw new Error('Record has no credentialExchangeRecordId; nothing to verify');
263
302
  }
264
- const indexer = this.requireIndexer();
303
+ const indexer = this.agent.indexer;
265
304
  const session = await indexer.getParticipantSession(record.participantSessionId);
266
305
  if (!session) {
267
306
  throw new Error(`ParticipantSession ${record.participantSessionId} not found on indexer`);
@@ -330,11 +369,13 @@ class VtFlowOrchestrator {
330
369
  throw new Error('Offered credential has no JSON-LD body to verify');
331
370
  return credentialJson;
332
371
  }
333
- requireIndexer() {
334
- if (!this.options.indexer) {
335
- throw new Error('Agent has no indexer configured (set VERANA_INDEXER_BASE_URL)');
336
- }
337
- return this.options.indexer;
372
+ // VS-CONN-VS gate: consulted only after trust resolution rejected the peer.
373
+ async checkEcsIssuanceExemption(context) {
374
+ return (0, ecsIssuanceExemption_1.isEcsIssuanceExempt)({
375
+ indexer: this.agent.indexer,
376
+ agent: this.agent,
377
+ trustedEcosystemDids: this.agent.trustedEcosystemDids,
378
+ }, context);
338
379
  }
339
380
  async publishCredentialAsLinkedVp(vtFlowRecordId) {
340
381
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"VtFlowOrchestrator.js","sourceRoot":"","sources":["../../src/vtFlow/VtFlowOrchestrator.ts"],"names":[],"mappings":";;;AAEA,yCAAsF;AAMtF,oFAO8C;AAC9C,8CAA+D;AAI/D,+CAAuE;AACvE,oCAMiB;AACjB,oCAAsG;AA4BtG,MAAa,kBAAkB;IAC7B,YACmB,KAAgC,EAChC,UAAqC,EAAE;QADvC,UAAK,GAAL,KAAK,CAA2B;QAChC,YAAO,GAAP,OAAO,CAAgC;IACvD,CAAC;IAEJ,KAAK,CAAC,sBAAsB,CAAC,KAAkC;;QAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAE/D,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAClF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,sBAAsB,qBAAqB,CAAC,CAAA;QAC7F,CAAC;QACD,IAAI,iBAAiB,CAAC,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,sBAAsB,gCAAgC,CAAC,CAAA;QACxG,CAAC;QACD,MAAM,cAAc,GAAG;YACrB,+BAAuB;YACvB,iCAAyB;YACzB,uCAA+B;YAC/B,yCAAiC;YACjC,+BAAuB;SACxB,CAAA;QACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,CAAC,sBAAsB,gCAAgC,CAAC,CAAA;QAC9F,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,sBAAsB,kCAAkC,CAAC,CAAA;QAC1G,CAAC;QAED,MAAM,oBAAoB,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,CAAC,CAAA;QACzG,IAAI,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,GAAG,CAAA,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,iBAAiB,CAAC,sBAAsB,iBAAiB,CAAC,CAAA;QACrG,CAAC;QACD,IAAI,oBAAoB,CAAC,OAAO,IAAI,oBAAoB,CAAC,OAAO,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,yBAAyB,oBAAoB,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACnF,CAAC;QAED,kGAAkG;QAClG,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,CAAC,MAAM,CAAC,GAAG,CACf,MAAM,SAAS,CAAC,cAAc,CAAC;YAC7B,aAAa,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC3C,IAAI,EAAE,qCAAU,CAAC,SAAS;YAC1B,WAAW,EAAE,wCAAa,CAAC,iBAAiB;SAC7C,CAAC,CACH;aACE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAA,gDAAqB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACtD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAA;QAEhE,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,WAAW,EAAE,CAAC;YACjG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAC3B,6BAA6B,MAAM,CAAC,EAAE,oBAAoB,iBAAiB,CAAC,EAAE,kCAAkC,MAAM,CAAC,KAAK,kBAAkB,CAC/I,CAAA;YACD,OAAO,MAAM,CAAA;QACf,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAA;QAEvB,IAAI,YAAgC,CAAA;QACpC,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YACvF,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO;gBAAE,YAAY,GAAG,UAAU,CAAC,EAAE,CAAA;QACvD,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;gBAClF,GAAG,EAAE,oBAAoB,CAAC,GAAG;gBAC7B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;gBACtB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACvB,cAAc,EAAE,IAAI;aACrB,CAAC,CAAA;YACF,IAAI,CAAC,gBAAgB;gBAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YAC7F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;YAC7F,YAAY,GAAG,KAAK,CAAC,EAAE,CAAA;QACzB,CAAC;QAED,OAAO,SAAS,CAAC,qBAAqB,CAAC;YACrC,YAAY;YACZ,oBAAoB,EAAE,MAAA,MAAA,KAAK,CAAC,oBAAoB,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,oBAAoB,mCAAI,YAAK,CAAC,IAAI,EAAE;YAClG,aAAa,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC3C,kBAAkB,EAAE,MAAM,CAAC,MAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,mCAAI,CAAC,CAAC;YAChE,wBAAwB,EAAE,MAAM,CAAC,MAAA,IAAI,CAAC,OAAO,CAAC,wBAAwB,mCAAI,CAAC,CAAC;YAC5E,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,KAAsC;;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAE/D,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,CAAC,cAAc,YAAY,CAAC,CAAA;QAChF,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACzF,IAAI,MAAM,CAAC,OAAO,KAAK,wCAAa,CAAC,iBAAiB,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,OAAO,+BAA+B,CAAC,CAAA;QACtF,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,UAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,KAAK,gBAAgB,sCAAW,CAAC,UAAU,GAAG,CAAC,CAAA;QAC5F,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAEzE,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QACxD,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAA;QACzE,IAAI,CAAC,iBAAiB;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,mBAAmB,qBAAqB,CAAC,CAAA;QACvG,IAAI,CAAC,iBAAiB,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAE5E,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC;YACxD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,UAAU,EAAE,iBAAiB,CAAC,GAAG;YACjC,MAAM,EAAE,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAe;YAC3C,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;SAC3C,CAAC,CAAA;QAEF,0FAA0F;QAC1F,MAAM,KAAK,CAAC,2BAA2B,CAAC;YACtC,EAAE,EAAE,mBAAmB;YACvB,WAAW,EAAE,iBAAiB,CAAC,WAAW;SAC3C,CAAC,CAAA;QAEF,MAAM,SAAS,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClD,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAExC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,yBAAyB,CAAC;YACpE,cAAc,EAAE,MAAM,CAAC,EAAE;YACzB,mBAAmB,EAAE,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,CAAC;YACrE,iBAAiB,EAAE;gBACjB,MAAM,EAAE;oBACN,UAAU,EAAE,sBAAsB;oBAClC,OAAO,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,YAAY,EAAE,iBAAiB,EAAE;iBAChF;aACF;SACF,CAAC,CAAA;QACF,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAA4B;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,CAAC,cAAc,YAAY,CAAC,CAAA;QAChF,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACzF,IAAI,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,KAAK,gBAAgB,sCAAW,CAAC,WAAW,GAAG,CAAC,CAAA;QAC7F,CAAC;QACD,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QACxD,OAAO,SAAS,CAAC,wBAAwB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IACjE,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,cAAsB;;QAInD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAErC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,YAAY,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,wCAAa,CAAC,cAAc,EAAE,CAAC;YAC5F,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QAE/D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC;YAC7C,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;YACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,EAAE,uBAAe,CAAC,MAAM;YAC5B,gBAAgB,EAAE,wBAAgB,CAAC,MAAM;SAC1C,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;QAC7F,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAC3B,2DAA2D,KAAK,CAAC,OAAO,eAAe,MAAM,CAAC,QAAQ,gBAAgB,CACvH,CAAA;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACrF,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAA;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QAE7E,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC;YACxD,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC3C,UAAU,EAAE,UAAU,CAAC,QAAQ;YAC/B,MAAM,EAAE,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAe;SAC5C,CAAC,CAAA;QAEF,OAAO;YACL,iBAAiB,EAAE;gBACjB,MAAM,EAAE;oBACN,UAAU,EAAE,sBAAsB;oBAClC,OAAO,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,YAAY,EAAE,iBAAiB,EAAE;iBAChF;aACF;YACD,mBAAmB,EAAE,MAAM,CAAC,EAAE;SAC/B,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,KAM7B;;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAI,EAAE,CAAC,CAAA;QACjF,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC7D,MAAM,SAAS,GAAG,cAAc,KAAK,CAAC,UAAU,OAAO,KAAK,CAAC,kBAAkB,EAAE,CAAA;QACjF,MAAM,KAAK,GAAG,MAAM,IAAA,yBAAiB,EAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QAC1E,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAA;QACrE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;QAEtB,MAAM,kBAAkB,GAAG,IAAA,wBAAgB,EAAC;YAC1C,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,YAAK,CAAC,IAAI,EAAE,EAAE;YACvC,IAAI,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,CAAC,sBAAsB,EAAE,2BAA2B,CAAC;YACnF,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAI;YACvB,iBAAiB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;SAClE,CAAC,CAAA;QACF,IAAI,KAAK,CAAC,iBAAiB;YAAE,kBAAkB,CAAC,OAAO,GAAG,KAAK,CAAC,iBAAiB,CAAA;QACjF,kBAAkB,CAAC,gBAAgB,GAAG;YACpC,EAAE,EAAE,MAAA,MAAA,IAAI,CAAC,oBAAoB,0CAAG,CAAC,CAAC,0CAAE,EAAE;YACtC,IAAI,EAAE,sBAAsB;SAC7B,CAAA;QAED,OAAO,sBAAe,CAAC,MAAM,CAAC,kBAAkB,CAAmB,CAAA;IACrE,CAAC;IAED,qFAAqF;IAC7E,KAAK,CAAC,wBAAwB,CAAC,QAAgB;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QACxE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,0BAA0B,CAAC,CAAA;QAC1E,CAAC;QACD,OAAO,MAAM,CAAC,gBAAgB,CAAA;IAChC,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,kBAAkB,CAAC,cAAsB,EAAE,gBAAgC;;QAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,YAAY,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,+CAA+C,CAAC,CAAA;QAClG,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;QACrF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvE,MAAM,MAAM,GAAG,IAAA,kCAA0B,EACvC,gBAAsD,EACtD,SAAS,CACV,CAAA;QACD,MAAM,KAAK,CAAC,gCAAgC,CAAC;YAC3C,EAAE,EAAE,MAAM,CAAC,oBAAoB;YAC/B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,kBAAkB,EAAE,MAAM,CAAC,MAAA,MAAM,CAAC,kBAAkB,mCAAI,CAAC,CAAC,IAAI,CAAC;YAC/D,wBAAwB,EAAE,MAAM,CAAC,MAAA,MAAM,CAAC,wBAAwB,mCAAI,CAAC,CAAC,IAAI,CAAC;YAC3E,MAAM;SACP,CAAC,CAAA;QACF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,cAAsB;;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,YAAY,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACzF,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAChF,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAErC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;QAChF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,oBAAoB,uBAAuB,CAAC,CAAA;QAC3F,CAAC;QACD,MAAM,mBAAmB,GAAG,MAAA,MAAA,OAAO,CAAC,eAAe,0CAAE,IAAI,CACvD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,IAAI,IAAI,CACrC,0CAAE,qBAAqB,CAAA;QACxB,IAAI,mBAAmB,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,oBAAoB,+BAA+B,CAAC,CAAA;QACnG,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAA;QAChE,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,mBAAmB,uBAAuB,CAAC,CAAA;QAC9F,IAAI,MAAM,CAAC,IAAI,KAAK,uBAAe,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,sBAAsB,mBAAmB,2BAA2B,MAAM,CAAC,IAAI,GAAG,CAAC,CAAA;QACrG,CAAC;QACD,IAAI,MAAM,CAAC,iBAAiB,KAAK,wBAAgB,CAAC,MAAM,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,sBAAsB,mBAAmB,yBAAyB,MAAM,CAAC,iBAAiB,GAAG,CAC9F,CAAA;QACH,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpF,MAAM,IAAI,KAAK,CACb,6BAA6B,MAAM,CAAC,SAAS,qCAAqC,MAAM,CAAC,QAAQ,EAAE,CACpG,CAAA;QACH,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QAC7F,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvE,MAAM,MAAM,GAAG,IAAA,kCAA0B,EAAC,cAAoD,EAAE,SAAS,CAAC,CAAA;QAC1G,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,2BAA2B,CAAC,CAAA;QACzE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,cAAsB;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,OAAM;QAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,0BAA0B;YAAE,OAAM;QAEhF,MAAM,YAAY,GAAG,MAAM,IAAA,mCAA2B,EACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAC7B,MAAM,CAAC,0BAA0B,CAClC,CAAA;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAC3B,2DAA2D,YAAY,GAAG,CAC3E,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,cAAsB;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,OAAM;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAAE,OAAM;QAE1C,MAAM,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAA;QACtD,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,MAAoB;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA;QACpC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,0BAA0B;YAAE,OAAM;QACvD,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI;YAAE,OAAM;QACxC,MAAM,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;IAC3D,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,0BAAkC;;QAElC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAA;QACjG,MAAM,cAAc,GAAG,MACrB,UAAU,CAAC,UACZ,0CAAE,MAAM,CAAA;QACT,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;QACxF,OAAO,cAAc,CAAA;IACvB,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,cAAsB;;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;QAC3F,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,YAAY,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QACzF,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,kBAAkB,cAAc,oCAAoC,CAAC,CAAA;QACvF,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAA;QACxG,MAAM,MAAM,GAAG,MAAC,UAAU,CAAC,UAA+C,0CAAE,MAAM,CAAA;QAClF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAA;QAC1F,CAAC;QACD,MAAM,SAAS,GAAG,MAAC,MAAiD,CAAC,gBAAgB,0CAAE,EAAE,CAAA;QACzF,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAChF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,+FAA+F,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,WAAW,GAAG,CAC3H,CAAA;QACH,CAAC;QACD,MAAM,aAAa,GAAG,sBAAe,CAAC,QAAQ,CAAC,MAAM,EAAE,oCAA6B,CAAC,CAAA;QACrF,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,EAAE,aAAa,CAAC,CAAA;IACzF,CAAC;IAEO,mBAAmB,CAAC,MAAc;;QACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAA;QACvE,OAAO,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,0CAAE,WAAW,EAAE,CAAA;IAClC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,YAAoB;QACjD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;IAC/D,CAAC;IAEO,gBAAgB;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,oCAAS,CAAC,CAAA;IACxD,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA;IAC/B,CAAC;CACF;AA5ZD,gDA4ZC"}
1
+ {"version":3,"file":"VtFlowOrchestrator.js","sourceRoot":"","sources":["../../src/vtFlow/VtFlowOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,11 @@ function assertVerifiableService(options) {
14
14
  verifiablePublicRegistries: options.verifiablePublicRegistries,
15
15
  cache,
16
16
  });
17
- if (!verified) {
18
- logger.warn(`[vt-flow] VS-CONN-VS rejected '${peerDid}': ${outcome} ${(_b = metadata === null || metadata === void 0 ? void 0 : metadata.errorMessage) !== null && _b !== void 0 ? _b : ''}`);
17
+ const trusted = verified && outcome === verre_1.TrustResolutionOutcome.VERIFIED;
18
+ if (!trusted) {
19
+ logger.warn(`[vt-flow] VS-CONN-VS rejected '${peerDid}': verified=${verified} outcome=${outcome} ${(_b = metadata === null || metadata === void 0 ? void 0 : metadata.errorMessage) !== null && _b !== void 0 ? _b : ''}`);
19
20
  }
20
- return verified;
21
+ return trusted;
21
22
  }
22
23
  catch (error) {
23
24
  logger.warn(`[vt-flow] VS-CONN-VS resolution failed for '${peerDid}': ${error.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"assertVerifiableService.js","sourceRoot":"","sources":["../../src/vtFlow/assertVerifiableService.ts"],"names":[],"mappings":";;AAYA,0DAqBC;AA7BD,8CAA8D;AAO9D,qFAAqF;AACrF,SAAgB,uBAAuB,CACrC,OAAuC;IAEvC,IAAI,KAA8B,CAAA;IAClC,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;;QACzC,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAA;QAC3D,IAAI,CAAC;YACH,KAAK,aAAL,KAAK,cAAL,KAAK,IAAL,KAAK,GAAK,IAAI,qBAAa,EAAE,EAAA;YAC7B,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,kBAAU,EAAC,OAAO,EAAE;gBAChE,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;gBAC9D,KAAK;aACN,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,kCAAkC,OAAO,MAAM,OAAO,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,mCAAI,EAAE,EAAE,CAAC,CAAA;YACvG,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,+CAA+C,OAAO,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;YACnG,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"assertVerifiableService.js","sourceRoot":"","sources":["../../src/vtFlow/assertVerifiableService.ts"],"names":[],"mappings":";;AAYA,0DAwBC;AAhCD,8CAAsF;AAOtF,qFAAqF;AACrF,SAAgB,uBAAuB,CACrC,OAAuC;IAEvC,IAAI,KAA8B,CAAA;IAClC,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;;QACzC,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAA;QAC3D,IAAI,CAAC;YACH,KAAK,aAAL,KAAK,cAAL,KAAK,IAAL,KAAK,GAAK,IAAI,qBAAa,EAAE,EAAA;YAC7B,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,kBAAU,EAAC,OAAO,EAAE;gBAChE,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;gBAC9D,KAAK;aACN,CAAC,CAAA;YACF,MAAM,OAAO,GAAG,QAAQ,IAAI,OAAO,KAAK,8BAAsB,CAAC,QAAQ,CAAA;YACvE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CACT,kCAAkC,OAAO,eAAe,QAAQ,YAAY,OAAO,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,mCAAI,EAAE,EAAE,CACtH,CAAA;YACH,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,+CAA+C,OAAO,MAAO,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;YACnG,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { BaseLogger } from '@credo-ts/core';
2
+ import type { VtFlowEcsIssuanceExemptionContext } from '@verana-labs/credo-ts-didcomm-vt-flow';
3
+ import { VeranaIndexerService } from '../blockchain/VeranaIndexerService';
4
+ export interface EcsIssuanceExemptionOptions {
5
+ indexer: VeranaIndexerService;
6
+ agent: {
7
+ readonly did?: string;
8
+ };
9
+ trustedEcosystemDids?: string[];
10
+ logger?: BaseLogger;
11
+ }
12
+ export declare function isEcsIssuanceExempt(options: EcsIssuanceExemptionOptions, { agentContext, peerDid, purpose }: VtFlowEcsIssuanceExemptionContext): Promise<boolean>;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isEcsIssuanceExempt = isEcsIssuanceExempt;
4
+ const vs_agent_model_1 = require("@verana-labs/vs-agent-model");
5
+ const types_1 = require("../blockchain/types");
6
+ const EXEMPT_ECS_TYPES = [vs_agent_model_1.ECS.ORG, vs_agent_model_1.ECS.PERSONA, vs_agent_model_1.ECS.SERVICE];
7
+ const PENDING_OP_STATE = 'PENDING';
8
+ // VS-CONN-VS exemption: an applicant onboarding for its first ECS credentials cannot be a Verifiable
9
+ // Service yet, so the peer is admitted on on-chain evidence instead of on its credentials.
10
+ async function isEcsIssuanceExempt(options, { agentContext, peerDid, purpose }) {
11
+ var _a;
12
+ const { indexer, agent, trustedEcosystemDids } = options;
13
+ const logger = (_a = options.logger) !== null && _a !== void 0 ? _a : agentContext.config.logger;
14
+ if (!agent.did)
15
+ return false;
16
+ try {
17
+ const schemaId = purpose.participantId
18
+ ? await schemaOfPendingOnboarding(indexer, purpose.participantId, peerDid, agent.did)
19
+ : await schemaOfDirectIssuance(indexer, purpose.schemaId, agent.did);
20
+ if (schemaId === undefined)
21
+ return false;
22
+ return await isTrustedEcsSchema(indexer, schemaId, trustedEcosystemDids);
23
+ }
24
+ catch (error) {
25
+ logger.warn(`[vt-flow] VS-CONN-VS exemption denied to '${peerDid}': ${error.message}`);
26
+ return false;
27
+ }
28
+ }
29
+ // The applicant paid for a PENDING Participant entry that names this agent as its validator; that
30
+ // entry, not a self-issued credential, is what earns the connection.
31
+ async function schemaOfPendingOnboarding(indexer, participantId, peerDid, ownDid) {
32
+ const id = toEntityId(participantId);
33
+ if (id === undefined)
34
+ return undefined;
35
+ const participant = await indexer.getParticipant(id);
36
+ if (!participant || participant.did !== peerDid)
37
+ return undefined;
38
+ if (participant.op_state !== PENDING_OP_STATE)
39
+ return undefined;
40
+ if (participant.revoked || participant.slashed)
41
+ return undefined;
42
+ if (participant.validator_participant_id == null)
43
+ return undefined;
44
+ const validator = await indexer.getParticipant(participant.validator_participant_id);
45
+ if (!validator || validator.did !== ownDid)
46
+ return undefined;
47
+ return participant.schema_id;
48
+ }
49
+ // A Direct Issuance request carries no Participant entry: the only claim to the exemption is that
50
+ // issuing this very schema is what this agent is an ISSUER for.
51
+ async function schemaOfDirectIssuance(indexer, schemaId, ownDid) {
52
+ const id = schemaId === undefined ? undefined : toEntityId(schemaId);
53
+ if (id === undefined)
54
+ return undefined;
55
+ const issuers = await indexer.listParticipants({
56
+ schemaId: id,
57
+ did: ownDid,
58
+ role: types_1.ParticipantRole.Issuer,
59
+ });
60
+ return issuers.some(isUsableIssuer) ? id : undefined;
61
+ }
62
+ async function isTrustedEcsSchema(indexer, schemaId, trustedEcosystemDids) {
63
+ const schema = await indexer.getCredentialSchema(schemaId);
64
+ if (!schema || schema.archived)
65
+ return false;
66
+ const ecsType = await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema);
67
+ if (!ecsType || !EXEMPT_ECS_TYPES.includes(ecsType))
68
+ return false;
69
+ if (!(trustedEcosystemDids === null || trustedEcosystemDids === void 0 ? void 0 : trustedEcosystemDids.length))
70
+ return true;
71
+ const ecosystem = await indexer.getEcosystem(schema.ecosystem_id);
72
+ return Boolean(ecosystem && !ecosystem.archived && trustedEcosystemDids.includes(ecosystem.did));
73
+ }
74
+ function toEntityId(value) {
75
+ const id = Number(value);
76
+ return Number.isInteger(id) && id > 0 ? id : undefined;
77
+ }
78
+ function isUsableIssuer(participant) {
79
+ return (!participant.revoked &&
80
+ !participant.slashed &&
81
+ (participant.participant_state === types_1.ParticipantState.Active ||
82
+ participant.participant_state === types_1.ParticipantState.Future));
83
+ }
84
+ //# sourceMappingURL=ecsIssuanceExemption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecsIssuanceExemption.js","sourceRoot":"","sources":["../../src/vtFlow/ecsIssuanceExemption.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export * from './VtFlowOrchestrator';
2
2
  export * from './assertVerifiableService';
3
+ export * from './ecsIssuanceExemption';
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./VtFlowOrchestrator"), exports);
18
18
  __exportStar(require("./assertVerifiableService"), exports);
19
+ __exportStar(require("./ecsIssuanceExemption"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vtFlow/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAoC;AACpC,4DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vtFlow/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAoC;AACpC,4DAAyC;AACzC,yDAAsC"}
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "default": "./build/index.js"
10
10
  }
11
11
  },
12
- "version": "2.0.0-dev.3",
12
+ "version": "2.0.0-dev.31",
13
13
  "repository": {
14
14
  "type": "git",
15
15
  "url": "https://github.com/verana-labs/vs-agent"
@@ -36,7 +36,7 @@
36
36
  "@credo-ts/webvh": "0.7.1-pr-2704-20260630143332",
37
37
  "@hyperledger/anoncreds-nodejs": "^0.4.0",
38
38
  "@openwallet-foundation/askar-nodejs": "^0.6.0",
39
- "@verana-labs/verana-types": "0.10.1-dev.16",
39
+ "@verana-labs/verana-types": "0.10.2",
40
40
  "@verana-labs/verre": "0.4.0-dev.1",
41
41
  "ajv": "^8.17.1",
42
42
  "ajv-formats": "^3.0.1",
@@ -45,8 +45,8 @@
45
45
  "didwebvh-ts": "^2.8.0",
46
46
  "express": "^4.18.1",
47
47
  "tsyringe": "4.8.0",
48
- "@verana-labs/vs-agent-model": "2.0.0-dev.3",
49
- "@verana-labs/credo-ts-didcomm-vt-flow": "2.0.0-dev.3"
48
+ "@verana-labs/credo-ts-didcomm-vt-flow": "2.0.0-dev.31",
49
+ "@verana-labs/vs-agent-model": "2.0.0-dev.31"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "@credo-ts/core": "0.7.1-pr-2704-20260630143332",