@verana-labs/vs-agent-sdk 2.0.0-dev.7 → 2.0.0-dev.72
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.
- package/README.md +0 -2
- package/build/adminApi/AdminApiError.d.ts +28 -0
- package/build/adminApi/AdminApiError.js +60 -0
- package/build/adminApi/AdminApiError.js.map +1 -0
- package/build/adminApi/didcommModules.d.ts +2 -0
- package/build/adminApi/didcommModules.js +8 -0
- package/build/adminApi/didcommModules.js.map +1 -0
- package/build/adminApi/index.d.ts +4 -0
- package/build/adminApi/index.js +21 -0
- package/build/adminApi/index.js.map +1 -0
- package/build/adminApi/moduleEndpoint.d.ts +8 -0
- package/build/adminApi/moduleEndpoint.js +28 -0
- package/build/adminApi/moduleEndpoint.js.map +1 -0
- package/build/adminApi/pagination/PageDto.d.ts +7 -0
- package/build/adminApi/pagination/PageDto.js +50 -0
- package/build/adminApi/pagination/PageDto.js.map +1 -0
- package/build/adminApi/pagination/PaginationQueryDto.d.ts +11 -0
- package/build/adminApi/pagination/PaginationQueryDto.js +46 -0
- package/build/adminApi/pagination/PaginationQueryDto.js.map +1 -0
- package/build/adminApi/pagination/cursor.d.ts +28 -0
- package/build/adminApi/pagination/cursor.js +64 -0
- package/build/adminApi/pagination/cursor.js.map +1 -0
- package/build/adminApi/pagination/index.d.ts +4 -0
- package/build/adminApi/pagination/index.js +21 -0
- package/build/adminApi/pagination/index.js.map +1 -0
- package/build/adminApi/pagination/paginate.d.ts +27 -0
- package/build/adminApi/pagination/paginate.js +77 -0
- package/build/adminApi/pagination/paginate.js.map +1 -0
- package/build/agent/VsAgent.d.ts +17 -34
- package/build/agent/VsAgent.js +75 -205
- package/build/agent/VsAgent.js.map +1 -1
- package/build/agent/createVsAgent.d.ts +5 -6
- package/build/agent/createVsAgent.js +3 -5
- package/build/agent/createVsAgent.js.map +1 -1
- package/build/blockchain/AnonCredsTrustService.d.ts +62 -0
- package/build/blockchain/AnonCredsTrustService.js +256 -0
- package/build/blockchain/AnonCredsTrustService.js.map +1 -0
- package/build/blockchain/AuthorizationService.d.ts +5 -3
- package/build/blockchain/AuthorizationService.js +17 -29
- package/build/blockchain/AuthorizationService.js.map +1 -1
- package/build/blockchain/IndexerWebSocketService.d.ts +7 -1
- package/build/blockchain/IndexerWebSocketService.js +68 -36
- package/build/blockchain/IndexerWebSocketService.js.map +1 -1
- package/build/blockchain/VeranaChainService.d.ts +26 -14
- package/build/blockchain/VeranaChainService.js +139 -127
- package/build/blockchain/VeranaChainService.js.map +1 -1
- package/build/blockchain/VeranaIndexerService.d.ts +14 -1
- package/build/blockchain/VeranaIndexerService.js +122 -8
- package/build/blockchain/VeranaIndexerService.js.map +1 -1
- package/build/blockchain/handlers/authorizationHandlers.js +2 -2
- package/build/blockchain/handlers/authorizationHandlers.js.map +1 -1
- package/build/blockchain/handlers/defaultHandlers.js +6 -1
- package/build/blockchain/handlers/defaultHandlers.js.map +1 -1
- package/build/blockchain/handlers/index.d.ts +1 -0
- package/build/blockchain/handlers/index.js +1 -0
- package/build/blockchain/handlers/index.js.map +1 -1
- package/build/blockchain/handlers/selfIssuanceHandlers.d.ts +13 -0
- package/build/blockchain/handlers/selfIssuanceHandlers.js +76 -0
- package/build/blockchain/handlers/selfIssuanceHandlers.js.map +1 -0
- package/build/blockchain/handlers/stateMutations.d.ts +20 -3
- package/build/blockchain/handlers/stateMutations.js +286 -41
- package/build/blockchain/handlers/stateMutations.js.map +1 -1
- package/build/blockchain/index.d.ts +2 -0
- package/build/blockchain/index.js +2 -0
- package/build/blockchain/index.js.map +1 -1
- package/build/blockchain/indexerMappers.d.ts +3 -0
- package/build/blockchain/indexerMappers.js +53 -0
- package/build/blockchain/indexerMappers.js.map +1 -0
- package/build/blockchain/types.d.ts +13 -58
- package/build/blockchain/types.js.map +1 -1
- package/build/bootstrap/EcsBootstrapService.d.ts +14 -3
- package/build/bootstrap/EcsBootstrapService.js +178 -79
- package/build/bootstrap/EcsBootstrapService.js.map +1 -1
- package/build/connections/ParentConnectionModule.d.ts +20 -0
- package/build/connections/ParentConnectionModule.js +56 -0
- package/build/connections/ParentConnectionModule.js.map +1 -0
- package/build/credentials/FullTailsFileService.d.ts +0 -1
- package/build/credentials/FullTailsFileService.js +0 -49
- package/build/credentials/FullTailsFileService.js.map +1 -1
- package/build/did/CachedDocumentLoader.d.ts +3 -0
- package/build/did/CachedDocumentLoader.js +7 -1
- package/build/did/CachedDocumentLoader.js.map +1 -1
- package/build/did/CachedWebDidResolver.d.ts +0 -4
- package/build/did/CachedWebDidResolver.js +1 -5
- package/build/did/CachedWebDidResolver.js.map +1 -1
- package/build/did/artifactServices.d.ts +12 -0
- package/build/did/artifactServices.js +48 -0
- package/build/did/artifactServices.js.map +1 -0
- package/build/did/legacyDidWeb.d.ts +6 -4
- package/build/did/legacyDidWeb.js +17 -14
- package/build/did/legacyDidWeb.js.map +1 -1
- package/build/did/publicDid.d.ts +4 -0
- package/build/did/publicDid.js +19 -0
- package/build/did/publicDid.js.map +1 -0
- package/build/events/BaseMessageEvents.js +139 -5
- package/build/events/BaseMessageEvents.js.map +1 -1
- package/build/events/ConnectionEvents.js +129 -82
- package/build/events/ConnectionEvents.js.map +1 -1
- package/build/events/VsAgentEvents.d.ts +11 -9
- package/build/events/VsAgentEvents.js +8 -1
- package/build/events/VsAgentEvents.js.map +1 -1
- package/build/events/VtFlowEvents.d.ts +1 -1
- package/build/events/VtFlowEvents.js +29 -17
- package/build/events/VtFlowEvents.js.map +1 -1
- package/build/index.d.ts +7 -1
- package/build/index.js +15 -2
- package/build/index.js.map +1 -1
- package/build/plugins/setupBaseDidComm.js +9 -12
- package/build/plugins/setupBaseDidComm.js.map +1 -1
- package/build/transports/VsAgentWsInboundTransport.d.ts +1 -1
- package/build/transports/VsAgentWsInboundTransport.js +20 -14
- package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
- package/build/types.d.ts +7 -13
- package/build/types.js +1 -2
- package/build/types.js.map +1 -1
- package/build/utils/agent.d.ts +29 -4
- package/build/utils/agent.js +91 -22
- package/build/utils/agent.js.map +1 -1
- package/build/utils/didReadiness.d.ts +9 -0
- package/build/utils/didReadiness.js +42 -0
- package/build/utils/didReadiness.js.map +1 -0
- package/build/utils/ecsClaims.d.ts +47 -0
- package/build/utils/ecsClaims.js +120 -0
- package/build/utils/ecsClaims.js.map +1 -0
- package/build/utils/ecsService.d.ts +8 -0
- package/build/utils/ecsService.js +23 -0
- package/build/utils/ecsService.js.map +1 -0
- package/build/utils/index.d.ts +4 -0
- package/build/utils/index.js +4 -0
- package/build/utils/index.js.map +1 -1
- package/build/utils/selfIssuedEcsCredential.d.ts +8 -0
- package/build/utils/selfIssuedEcsCredential.js +158 -0
- package/build/utils/selfIssuedEcsCredential.js.map +1 -0
- package/build/utils/setupSelfTr.d.ts +34 -66
- package/build/utils/setupSelfTr.js +90 -294
- package/build/utils/setupSelfTr.js.map +1 -1
- package/build/utils/trustCredentialStore.d.ts +67 -9
- package/build/utils/trustCredentialStore.js +296 -111
- package/build/utils/trustCredentialStore.js.map +1 -1
- package/build/utils/util.d.ts +10 -0
- package/build/utils/util.js +16 -0
- package/build/utils/util.js.map +1 -1
- package/build/utils/vcdm2.d.ts +34 -0
- package/build/utils/vcdm2.js +60 -0
- package/build/utils/vcdm2.js.map +1 -0
- package/build/utils/vtjscResolver.d.ts +18 -0
- package/build/utils/vtjscResolver.js +54 -0
- package/build/utils/vtjscResolver.js.map +1 -0
- package/build/vtFlow/VtFlowOrchestrator.d.ts +107 -14
- package/build/vtFlow/VtFlowOrchestrator.js +734 -109
- package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
- package/build/vtFlow/assertVerifiableService.d.ts +1 -0
- package/build/vtFlow/assertVerifiableService.js +45 -5
- package/build/vtFlow/assertVerifiableService.js.map +1 -1
- package/build/vtFlow/ecsIssuanceExemption.d.ts +12 -0
- package/build/vtFlow/ecsIssuanceExemption.js +84 -0
- package/build/vtFlow/ecsIssuanceExemption.js.map +1 -0
- package/build/vtFlow/index.d.ts +1 -0
- package/build/vtFlow/index.js +1 -0
- package/build/vtFlow/index.js.map +1 -1
- package/package.json +17 -12
- package/build/did/migrateWebVhLog.d.ts +0 -34
- package/build/did/migrateWebVhLog.js +0 -230
- package/build/did/migrateWebVhLog.js.map +0 -1
- package/build/did/migrateWebVhVersionTime.d.ts +0 -9
- package/build/did/migrateWebVhVersionTime.js +0 -191
- package/build/did/migrateWebVhVersionTime.js.map +0 -1
|
@@ -7,22 +7,31 @@ exports.upsertCredentialSchema = upsertCredentialSchema;
|
|
|
7
7
|
exports.upsertParticipant = upsertParticipant;
|
|
8
8
|
exports.reconcileVtFlowRecordsForParticipant = reconcileVtFlowRecordsForParticipant;
|
|
9
9
|
exports.markVtFlowRecordsValidated = markVtFlowRecordsValidated;
|
|
10
|
+
exports.markApplicantVtFlowRecordsValidated = markApplicantVtFlowRecordsValidated;
|
|
10
11
|
exports.setVtFlowRecordsParticipantRevoked = setVtFlowRecordsParticipantRevoked;
|
|
11
12
|
exports.setVtFlowRecordsParticipantSlashed = setVtFlowRecordsParticipantSlashed;
|
|
12
13
|
exports.removeHolderTrustCredentialIfRevoked = removeHolderTrustCredentialIfRevoked;
|
|
14
|
+
exports.removeSelfIssuedEcsCredentialsIfIssuerRevoked = removeSelfIssuedEcsCredentialsIfIssuerRevoked;
|
|
13
15
|
exports.reconcileVtFlowRecordsOnCancel = reconcileVtFlowRecordsOnCancel;
|
|
14
16
|
exports.startParticipantOPAutoFlow = startParticipantOPAutoFlow;
|
|
15
17
|
exports.reconcileVtjscPublications = reconcileVtjscPublications;
|
|
18
|
+
exports.publishAnonCredsSchemaForVtjsc = publishAnonCredsSchemaForVtjsc;
|
|
16
19
|
exports.publishVtjscIfOwner = publishVtjscIfOwner;
|
|
20
|
+
const anoncreds_1 = require("@credo-ts/anoncreds");
|
|
17
21
|
const credo_ts_didcomm_vt_flow_1 = require("@verana-labs/credo-ts-didcomm-vt-flow");
|
|
18
22
|
const vs_agent_model_1 = require("@verana-labs/vs-agent-model");
|
|
23
|
+
const types_1 = require("../../types");
|
|
24
|
+
const agent_1 = require("../../utils/agent");
|
|
19
25
|
const data_1 = require("../../utils/data");
|
|
26
|
+
const didReadiness_1 = require("../../utils/didReadiness");
|
|
20
27
|
const setupSelfTr_1 = require("../../utils/setupSelfTr");
|
|
28
|
+
const ecsClaims_1 = require("../../utils/ecsClaims");
|
|
21
29
|
const trustCredentialStore_1 = require("../../utils/trustCredentialStore");
|
|
30
|
+
const util_1 = require("../../utils/util");
|
|
31
|
+
const vcdm2_1 = require("../../utils/vcdm2");
|
|
32
|
+
const vtjscResolver_1 = require("../../utils/vtjscResolver");
|
|
22
33
|
const vtFlow_1 = require("../../vtFlow");
|
|
23
|
-
const
|
|
24
|
-
const DEFAULT_CHAIN_ID = 'vna-testnet-1';
|
|
25
|
-
const PARTICIPANT_ROLE_HOLDER = 6;
|
|
34
|
+
const types_2 = require("../types");
|
|
26
35
|
function applyStateMutation(state, activity) {
|
|
27
36
|
var _a;
|
|
28
37
|
switch (activity.msg) {
|
|
@@ -142,7 +151,7 @@ function upsertParticipant(state, activity, overrides = {}) {
|
|
|
142
151
|
async function reconcileVtFlowRecordsForParticipant(agent, participantId, reconcile, errorLabel) {
|
|
143
152
|
const agentContext = agent.context;
|
|
144
153
|
const service = agentContext.dependencyManager.resolve(credo_ts_didcomm_vt_flow_1.VtFlowService);
|
|
145
|
-
const records = await service.findAllByQuery(agentContext, { participantId });
|
|
154
|
+
const records = await service.findAllByQuery(agentContext, { applicantParticipantId: participantId });
|
|
146
155
|
for (const record of records) {
|
|
147
156
|
try {
|
|
148
157
|
const transitionedTo = await reconcile(record, service, agentContext);
|
|
@@ -155,15 +164,32 @@ async function reconcileVtFlowRecordsForParticipant(agent, participantId, reconc
|
|
|
155
164
|
}
|
|
156
165
|
}
|
|
157
166
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
167
|
+
/** [VSA-VTI-FLOW-OP-ISSUE]: the validator side of the `SetParticipantOPtoValidated` notification. */
|
|
168
|
+
async function markVtFlowRecordsValidated(agent, participantId, tx) {
|
|
169
|
+
const orchestrator = new vtFlow_1.VtFlowOrchestrator(agent);
|
|
170
|
+
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record) => {
|
|
171
|
+
if (record.role !== credo_ts_didcomm_vt_flow_1.VtFlowRole.Validator)
|
|
161
172
|
return null;
|
|
162
|
-
|
|
163
|
-
|
|
173
|
+
const rejectedInFlight = await orchestrator.isRejectedInFlight(record);
|
|
174
|
+
if (!credo_ts_didcomm_vt_flow_1.VtFlowValidatedFromStates.has(record.state) && !rejectedInFlight)
|
|
175
|
+
return null;
|
|
176
|
+
await orchestrator.markValidated(record.id, await agent.indexer.getParticipant(participantId), tx);
|
|
177
|
+
// the connection stays TERMINATED, so issuance waits for the applicant to reconnect
|
|
178
|
+
if (!rejectedInFlight)
|
|
179
|
+
await orchestrator.continueAfterValidated(record.id);
|
|
164
180
|
return 'VALIDATED';
|
|
165
181
|
}, 'Failed to markValidated');
|
|
166
182
|
}
|
|
183
|
+
/** Applicant side: VALIDATED is terminal for a role other than HOLDER, and a HOLDER flow waits there for the offer ([VSA-VTI-FLOW-OP-ISSUE-2]). */
|
|
184
|
+
async function markApplicantVtFlowRecordsValidated(agent, participantId) {
|
|
185
|
+
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record, service, agentContext) => {
|
|
186
|
+
const running = [credo_ts_didcomm_vt_flow_1.VtFlowState.OrSent, credo_ts_didcomm_vt_flow_1.VtFlowState.Validating, credo_ts_didcomm_vt_flow_1.VtFlowState.OobPending];
|
|
187
|
+
if (record.role !== credo_ts_didcomm_vt_flow_1.VtFlowRole.Applicant || !running.includes(record.state))
|
|
188
|
+
return null;
|
|
189
|
+
await service.updateState(agentContext, record, credo_ts_didcomm_vt_flow_1.VtFlowState.Validated);
|
|
190
|
+
return 'VALIDATED';
|
|
191
|
+
}, 'Failed to mark VALIDATED');
|
|
192
|
+
}
|
|
167
193
|
async function setVtFlowRecordsParticipantRevoked(agent, participantId) {
|
|
168
194
|
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record, service, agentContext) => {
|
|
169
195
|
if (record.state === credo_ts_didcomm_vt_flow_1.VtFlowState.ParticipantRevoked ||
|
|
@@ -196,20 +222,19 @@ async function setVtFlowRecordsParticipantSlashed(agent, participantId) {
|
|
|
196
222
|
}
|
|
197
223
|
/** VSA-VTI-FLOW-OP-REVOKE: a revoked/slashed HOLDER's credential is gone; drop its linked VP and stored VTC. */
|
|
198
224
|
async function removeHolderTrustCredentialIfRevoked(agent, participantId) {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
if ((participant === null || participant === void 0 ? void 0 : participant.role) !== PARTICIPANT_ROLE_HOLDER || participant.did !== agent.did)
|
|
225
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
226
|
+
if ((participant === null || participant === void 0 ? void 0 : participant.role) !== types_1.HOLDER_PARTICIPANT_TYPE || participant.did !== agent.did)
|
|
202
227
|
return;
|
|
203
228
|
if (!agent.publicApiBaseUrl)
|
|
204
229
|
return;
|
|
205
230
|
const agentContext = agent.context;
|
|
206
231
|
const service = agentContext.dependencyManager.resolve(credo_ts_didcomm_vt_flow_1.VtFlowService);
|
|
207
|
-
const records = await service.findAllByQuery(agentContext, { participantId });
|
|
232
|
+
const records = await service.findAllByQuery(agentContext, { applicantParticipantId: participantId });
|
|
208
233
|
for (const record of records) {
|
|
209
234
|
if (record.role !== credo_ts_didcomm_vt_flow_1.VtFlowRole.Applicant || !record.credentialExchangeRecordId)
|
|
210
235
|
continue;
|
|
211
236
|
try {
|
|
212
|
-
const credentialId = await (0, trustCredentialStore_1.removeStoredTrustCredential)(agent,
|
|
237
|
+
const credentialId = await (0, trustCredentialStore_1.removeStoredTrustCredential)(agent, record.credentialExchangeRecordId);
|
|
213
238
|
if (credentialId) {
|
|
214
239
|
agent.config.logger.info(`[IndexerWS] Removed linked VP and stored credential ${credentialId} (participant=${participantId})`);
|
|
215
240
|
}
|
|
@@ -219,10 +244,29 @@ async function removeHolderTrustCredentialIfRevoked(agent, participantId) {
|
|
|
219
244
|
}
|
|
220
245
|
}
|
|
221
246
|
}
|
|
247
|
+
/**
|
|
248
|
+
* VSA-VTI-FLOW-OP-REVOKE: an ECS credential anchored against a revoked ISSUER still verifies, but a
|
|
249
|
+
* resolver reports the Participant as REVOKED and the whole DID then fails VS-CONN-VS.
|
|
250
|
+
*/
|
|
251
|
+
async function removeSelfIssuedEcsCredentialsIfIssuerRevoked(agent, participantId) {
|
|
252
|
+
if (!agent.publicApiBaseUrl)
|
|
253
|
+
return;
|
|
254
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
255
|
+
if ((participant === null || participant === void 0 ? void 0 : participant.role) !== types_1.ISSUER_PARTICIPANT_TYPE || participant.did !== agent.did)
|
|
256
|
+
return;
|
|
257
|
+
try {
|
|
258
|
+
const withdrawn = await (0, trustCredentialStore_1.withdrawSelfIssuedEcsCredentials)(agent, participant.id);
|
|
259
|
+
for (const jscUrl of withdrawn) {
|
|
260
|
+
agent.config.logger.info(`[SelfTR] Withdrew the self-issued ECS credential bound to ${jscUrl} (issuer participant ${participantId})`);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
catch (e) {
|
|
264
|
+
agent.config.logger.error(`[SelfTR] Failed to withdraw the ECS credentials of the revoked ISSUER participant ${participantId}`, e);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
222
267
|
async function reconcileVtFlowRecordsOnCancel(agent, participantId) {
|
|
223
|
-
|
|
224
|
-
const
|
|
225
|
-
const stillValidated = Number(participant === null || participant === void 0 ? void 0 : participant.opState) === types_1.ValidationState.VALIDATED;
|
|
268
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
269
|
+
const stillValidated = Number(participant === null || participant === void 0 ? void 0 : participant.opState) === types_2.ValidationState.VALIDATED;
|
|
226
270
|
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record, service, agentContext) => {
|
|
227
271
|
if ((0, credo_ts_didcomm_vt_flow_1.isVtFlowTerminalState)(record.state))
|
|
228
272
|
return null;
|
|
@@ -236,6 +280,20 @@ async function reconcileVtFlowRecordsOnCancel(agent, participantId) {
|
|
|
236
280
|
return 'TERMINATED_BY_APPLICANT';
|
|
237
281
|
}, 'Failed to reconcile record after cancel');
|
|
238
282
|
}
|
|
283
|
+
// [VSA-VTI-CFG-ENV-ECS]: the applicant proposes its own claims, and the validator may override
|
|
284
|
+
// them. The field is omitted when the operator configured none.
|
|
285
|
+
async function onboardingClaims(agent, schemaId) {
|
|
286
|
+
if (!agent.ecsClaims || !agent.did)
|
|
287
|
+
return undefined;
|
|
288
|
+
const schema = await agent.indexer.getCredentialSchema(schemaId);
|
|
289
|
+
const ecsKey = schema && (await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema));
|
|
290
|
+
if (!ecsKey) {
|
|
291
|
+
agent.config.logger.info(`[ecs-claims] schema ${schemaId} is not an ECS schema, sending no claims`);
|
|
292
|
+
return undefined;
|
|
293
|
+
}
|
|
294
|
+
// a digest the agent cannot compute must stop the flow, per [VSA-VTI-CFG-ENV-ECS]
|
|
295
|
+
return await (0, ecsClaims_1.composeEcsClaims)(agent.ecsClaims, ecsKey, agent.config.logger);
|
|
296
|
+
}
|
|
239
297
|
async function startParticipantOPAutoFlow(agent, activity) {
|
|
240
298
|
const chain = agent.veranaChain;
|
|
241
299
|
if (!chain)
|
|
@@ -243,62 +301,232 @@ async function startParticipantOPAutoFlow(agent, activity) {
|
|
|
243
301
|
const applicantParticipantId = Number(activity.entity_id);
|
|
244
302
|
if (!Number.isFinite(applicantParticipantId))
|
|
245
303
|
return;
|
|
246
|
-
const holderParticipant = await
|
|
304
|
+
const holderParticipant = await agent.indexer.findParticipant(applicantParticipantId);
|
|
247
305
|
if (!holderParticipant || holderParticipant.did !== agent.did)
|
|
248
306
|
return;
|
|
249
307
|
try {
|
|
308
|
+
await (0, didReadiness_1.waitUntilOwnDidIsPubliclyResolvable)(agent, agent.config.logger);
|
|
250
309
|
const orchestrator = new vtFlow_1.VtFlowOrchestrator(agent);
|
|
251
|
-
await
|
|
310
|
+
const claims = await onboardingClaims(agent, holderParticipant.schemaId);
|
|
311
|
+
await orchestrator.startOnboardingProcess(Object.assign({ applicantParticipantId }, (claims ? { claims } : {})));
|
|
252
312
|
}
|
|
253
313
|
catch (err) {
|
|
254
314
|
agent.config.logger.error(`[IndexerWS] StartParticipantOP auto-flow failed: ${err.message}\n${err.stack}`);
|
|
255
315
|
}
|
|
256
316
|
}
|
|
257
|
-
async function reconcileVtjscPublications(agent, indexer, corporationId,
|
|
317
|
+
async function reconcileVtjscPublications(agent, indexer, corporationId, ecsClaims) {
|
|
258
318
|
var _a, _b, _c, _d;
|
|
259
319
|
if (!agent.did || !agent.publicApiBaseUrl)
|
|
260
320
|
return;
|
|
261
|
-
const chainId = (
|
|
321
|
+
const chainId = (_a = agent.veranaChain) === null || _a === void 0 ? void 0 : _a.getChainId;
|
|
322
|
+
if (!chainId) {
|
|
323
|
+
agent.config.logger.warn('[VTJSC] Skipping reconciliation: the agent is not connected to a chain');
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
262
326
|
const ecosystems = await indexer.listEcosystems();
|
|
263
|
-
|
|
327
|
+
const controlled = ecosystems.filter(entry => Number(entry.corporation_id) === corporationId);
|
|
328
|
+
const reconciled = new Set();
|
|
329
|
+
for (const ecosystem of controlled) {
|
|
264
330
|
for (const schema of await indexer.listCredentialSchemas(ecosystem.id)) {
|
|
265
331
|
const [didRecord] = await agent.dids.getCreatedDids({ did: agent.did });
|
|
266
332
|
if (!didRecord)
|
|
267
333
|
return;
|
|
268
334
|
const schemaRef = `vpr:verana:${chainId}:cs:${schema.id}`;
|
|
335
|
+
reconciled.add(schemaRef);
|
|
269
336
|
const expectedDigest = (0, setupSelfTr_1.generateDigestSRI)(schema.json_schema);
|
|
270
337
|
const existingJsc = (0, trustCredentialStore_1.findMetadataEntry)(didRecord, '_vt/jsc', '', schemaRef);
|
|
271
|
-
const existingDigest = (
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
338
|
+
const existingDigest = (_c = (_b = existingJsc === null || existingJsc === void 0 ? void 0 : existingJsc.credential) === null || _b === void 0 ? void 0 : _b.credentialSubject) === null || _c === void 0 ? void 0 : _c.digestSRI;
|
|
339
|
+
let jsonSchemaCredentialId = (_d = existingJsc === null || existingJsc === void 0 ? void 0 : existingJsc.credential) === null || _d === void 0 ? void 0 : _d.id;
|
|
340
|
+
try {
|
|
341
|
+
// a VTJSC an older agent published as data model 1.1 is rebuilt as well
|
|
342
|
+
if (!existingJsc ||
|
|
343
|
+
existingDigest !== expectedDigest ||
|
|
344
|
+
!(0, vcdm2_1.isDataIntegrityVcdm2Credential)(existingJsc.credential)) {
|
|
345
|
+
const credential = await (0, trustCredentialStore_1.createJsc)(agent, agent.publicApiBaseUrl, (0, data_1.getEcsSchemas)(agent.publicApiBaseUrl), {
|
|
275
346
|
schemaBaseId: String(schema.id),
|
|
276
347
|
jsonSchemaRef: schemaRef,
|
|
277
348
|
precomputedDigestSRI: expectedDigest,
|
|
278
349
|
});
|
|
350
|
+
jsonSchemaCredentialId = credential.id;
|
|
279
351
|
agent.config.logger.info(`[VTJSC] Reconciled VTJSC for schema ${schema.id} (ecosystem ${ecosystem.id})`);
|
|
280
352
|
}
|
|
281
|
-
|
|
282
|
-
agent.config.logger.
|
|
283
|
-
continue;
|
|
353
|
+
else if (await (0, trustCredentialStore_1.reattachVtjscPublication)(agent, schemaRef)) {
|
|
354
|
+
agent.config.logger.info(`[VTJSC] Re-attached the VTJSC of schema ${schema.id} (ecosystem ${ecosystem.id})`);
|
|
284
355
|
}
|
|
285
356
|
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
357
|
+
catch (e) {
|
|
358
|
+
agent.config.logger.error(`[VTJSC] Failed to reconcile VTJSC for schema ${schema.id}`, e);
|
|
359
|
+
}
|
|
360
|
+
// an agent that published a VTJSC before [VSA-PUB-AC-5] has no AnonCreds schema for it yet
|
|
361
|
+
if (!jsonSchemaCredentialId)
|
|
362
|
+
continue;
|
|
363
|
+
try {
|
|
364
|
+
await publishAnonCredsSchemaForVtjsc(agent, schema.id, schema.json_schema, jsonSchemaCredentialId);
|
|
365
|
+
}
|
|
366
|
+
catch (e) {
|
|
367
|
+
agent.config.logger.error(`[VTJSC] Failed to reconcile the AnonCreds schema of ${jsonSchemaCredentialId}`, e);
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
await detachUncontrolledVtjscPublications(agent, indexer, corporationId, chainId, reconciled);
|
|
372
|
+
if (ecsClaims)
|
|
373
|
+
await reconcileSelfIssuedEcsCredentials(agent, indexer, ecsClaims);
|
|
374
|
+
}
|
|
375
|
+
/** The `_vt/jsc` key that `createJsc` writes for an on-chain `CredentialSchema`. */
|
|
376
|
+
const onChainSchemaRefPrefix = (chainId) => `vpr:verana:${chainId}:cs:`;
|
|
377
|
+
/**
|
|
378
|
+
* VSA-VTI-VTJSC: only the controller of an Ecosystem advertises a VTJSC for its schemas. Archival
|
|
379
|
+
* is not a loss of control — the agent keeps it, and [VSA-VTI-NOTIF-ES] gives it no handler.
|
|
380
|
+
*
|
|
381
|
+
* Each entry is resolved against the VPR one by one rather than diffed against `listEcosystems`:
|
|
382
|
+
* that endpoint is unpaginated here, and a truncated page reads like a loss of control.
|
|
383
|
+
*/
|
|
384
|
+
async function detachUncontrolledVtjscPublications(agent, indexer, corporationId, chainId, reconciled) {
|
|
385
|
+
const [didRecord] = await agent.dids.getCreatedDids({ did: agent.did });
|
|
386
|
+
if (!didRecord)
|
|
387
|
+
return;
|
|
388
|
+
const metadata = didRecord.metadata.get('_vt/jsc');
|
|
389
|
+
if (!metadata)
|
|
390
|
+
return;
|
|
391
|
+
const prefix = onChainSchemaRefPrefix(chainId);
|
|
392
|
+
const ecosystemCache = new Map();
|
|
393
|
+
const stale = [];
|
|
394
|
+
for (const schemaRef of Object.keys(metadata)) {
|
|
395
|
+
// the agent's own schema credentials live in this bucket, keyed by public URL.
|
|
396
|
+
if (!schemaRef.startsWith(prefix))
|
|
397
|
+
continue;
|
|
398
|
+
if (reconciled.has(schemaRef))
|
|
399
|
+
continue;
|
|
400
|
+
const schemaId = schemaRef.slice(prefix.length);
|
|
401
|
+
try {
|
|
402
|
+
const schema = await indexer.getCredentialSchema(schemaId);
|
|
403
|
+
const ecosystemId = String(schema.ecosystem_id);
|
|
404
|
+
if (!ecosystemCache.has(ecosystemId)) {
|
|
405
|
+
ecosystemCache.set(ecosystemId, await indexer.getEcosystem(ecosystemId));
|
|
406
|
+
}
|
|
407
|
+
const ecosystem = ecosystemCache.get(ecosystemId);
|
|
408
|
+
if (!ecosystem)
|
|
409
|
+
continue;
|
|
410
|
+
if (Number(ecosystem.corporation_id) === corporationId)
|
|
411
|
+
continue;
|
|
412
|
+
agent.config.logger.info(`[VTJSC] Detaching the VTJSC of schema ${schemaId}: ecosystem ${ecosystemId} belongs to ` +
|
|
413
|
+
`corporation ${ecosystem.corporation_id}`);
|
|
414
|
+
stale.push(schemaRef);
|
|
415
|
+
}
|
|
416
|
+
catch (error) {
|
|
417
|
+
// A lookup the VPR cannot answer is not evidence of anything; leave the entry advertised.
|
|
418
|
+
agent.config.logger.debug(`[VTJSC] Keeping the VTJSC of schema ${schemaId}: ${error.message}`);
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
if (stale.length === 0)
|
|
422
|
+
return;
|
|
423
|
+
const detached = await (0, trustCredentialStore_1.detachVtjscPublications)(agent, stale);
|
|
424
|
+
if (detached.length > 0) {
|
|
425
|
+
agent.config.logger.info(`[VTJSC] Detached ${detached.length} VTJSC publication(s)`);
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Rebinds and anchors this agent's own ECS credentials.
|
|
430
|
+
*
|
|
431
|
+
* It follows the ISSUER Participant entries the agent holds, not the Ecosystems its Corporation
|
|
432
|
+
* controls: an agent may issue against an Ecosystem that another Corporation owns, and an
|
|
433
|
+
* Ecosystem controller may hold no ISSUER entry at all. An entry is usable only when it names
|
|
434
|
+
* this agent's account as its vs_operator, because the chain accepts the anchoring
|
|
435
|
+
* CreateOrUpdateParticipantSession from no other signer.
|
|
436
|
+
*
|
|
437
|
+
* Every ECS schema qualifies, not only the Service one. The chain of Organization credentials has
|
|
438
|
+
* to terminate: the service holding the ISSUER entry is the only party that can issue against that
|
|
439
|
+
* schema, so it issues its own. Without it that service has no serviceProvider and fails VS-CONN-VS.
|
|
440
|
+
*/
|
|
441
|
+
async function reconcileSelfIssuedEcsCredentials(agent, indexer, ecsClaims) {
|
|
442
|
+
var _a;
|
|
443
|
+
const chain = agent.veranaChain;
|
|
444
|
+
if (!chain || !agent.did || !agent.publicApiBaseUrl)
|
|
445
|
+
return;
|
|
446
|
+
const chainId = chain.getChainId;
|
|
447
|
+
// A Participant revoked while the agent was down delivers no event it can still act on. Runs
|
|
448
|
+
// first, so a schema whose ISSUER entry was replaced ends up bound to the new one.
|
|
449
|
+
for (const participantState of [types_2.ParticipantState.Revoked, types_2.ParticipantState.Slashed]) {
|
|
450
|
+
try {
|
|
451
|
+
const stale = await indexer.listParticipants({
|
|
452
|
+
did: agent.did,
|
|
453
|
+
role: types_2.ParticipantRole.Issuer,
|
|
454
|
+
participantState,
|
|
455
|
+
});
|
|
456
|
+
for (const issuer of stale) {
|
|
457
|
+
const withdrawn = await (0, trustCredentialStore_1.withdrawSelfIssuedEcsCredentials)(agent, issuer.id);
|
|
458
|
+
for (const jscUrl of withdrawn) {
|
|
459
|
+
agent.config.logger.info(`[SelfTR] Withdrew the self-issued ECS credential bound to ${jscUrl} (${participantState} issuer participant ${issuer.id})`);
|
|
295
460
|
}
|
|
296
461
|
}
|
|
297
462
|
}
|
|
463
|
+
catch (e) {
|
|
464
|
+
agent.config.logger.error(`[SelfTR] Failed to withdraw the ECS credentials of ${participantState} ISSUER participants`, e);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
const issuers = await indexer.listParticipants({
|
|
468
|
+
did: agent.did,
|
|
469
|
+
role: types_2.ParticipantRole.Issuer,
|
|
470
|
+
participantState: types_2.ParticipantState.Active,
|
|
471
|
+
});
|
|
472
|
+
for (const issuer of issuers) {
|
|
473
|
+
if (issuer.revoked || issuer.slashed || issuer.vs_operator !== chain.address)
|
|
474
|
+
continue;
|
|
475
|
+
try {
|
|
476
|
+
const schema = await indexer.getCredentialSchema(issuer.schema_id);
|
|
477
|
+
const ecsKey = await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema);
|
|
478
|
+
if (!ecsKey)
|
|
479
|
+
continue;
|
|
480
|
+
const jsonSchemaCredentialId = await (0, vtjscResolver_1.resolveJsonSchemaCredentialId)(agent, indexer, schema.id, chainId);
|
|
481
|
+
await (0, trustCredentialStore_1.rebindEcsCredentialSchema)(agent, agent.publicApiBaseUrl, String(schema.id), ecsKey, ecsClaims, jsonSchemaCredentialId, issuer.id, schema.json_schema, (_a = issuer.effective_until) !== null && _a !== void 0 ? _a : undefined);
|
|
482
|
+
}
|
|
483
|
+
catch (e) {
|
|
484
|
+
agent.config.logger.error(`[SelfTR] Failed to rebind the ECS credential of schema ${issuer.schema_id}`, e);
|
|
485
|
+
}
|
|
298
486
|
}
|
|
299
487
|
}
|
|
488
|
+
/**
|
|
489
|
+
* Publishes the one AnonCreds schema that governs every credential of a VTJSC, per [VSA-PUB-AC-5].
|
|
490
|
+
* Only the issuer of the VTJSC publishes it. The call is idempotent.
|
|
491
|
+
*/
|
|
492
|
+
async function publishAnonCredsSchemaForVtjsc(agent, credentialSchemaId, jsonSchema, jsonSchemaCredentialId) {
|
|
493
|
+
if (!agent.did)
|
|
494
|
+
return undefined;
|
|
495
|
+
const [published] = await agent.modules.anoncreds.getCreatedSchemas({
|
|
496
|
+
relatedJsonSchemaCredentialId: jsonSchemaCredentialId,
|
|
497
|
+
});
|
|
498
|
+
if (published)
|
|
499
|
+
return published.schemaId;
|
|
500
|
+
const { name, attrNames } = (0, util_1.anonCredsSchemaFromJsonSchema)(jsonSchema);
|
|
501
|
+
// used for consistency when a similar schema already exists
|
|
502
|
+
const version = String(credentialSchemaId);
|
|
503
|
+
const { schemaState, registrationMetadata } = await agent.modules.anoncreds.registerSchema({
|
|
504
|
+
schema: { attrNames, name, version, issuerId: agent.did },
|
|
505
|
+
options: { extraMetadata: { relatedJsonSchemaCredentialId: jsonSchemaCredentialId } },
|
|
506
|
+
});
|
|
507
|
+
if (schemaState.state !== 'finished') {
|
|
508
|
+
const detail = schemaState.state === 'failed' ? schemaState.reason : schemaState.state;
|
|
509
|
+
throw new Error(`Failed to register the AnonCreds schema of ${jsonSchemaCredentialId}: ${detail}`);
|
|
510
|
+
}
|
|
511
|
+
const { schemaId } = schemaState;
|
|
512
|
+
const schemaRepository = agent.dependencyManager.resolve(anoncreds_1.AnonCredsSchemaRepository);
|
|
513
|
+
const schemaRecord = await schemaRepository.findBySchemaId(agent.context, schemaId);
|
|
514
|
+
if (schemaRecord) {
|
|
515
|
+
schemaRecord.setTag('relatedJsonSchemaCredentialId', jsonSchemaCredentialId);
|
|
516
|
+
await schemaRepository.update(agent.context, schemaRecord);
|
|
517
|
+
}
|
|
518
|
+
// the did:web layout builds no attested resource: it serves the object from the AnonCreds record
|
|
519
|
+
const { attestedResource } = registrationMetadata;
|
|
520
|
+
if (attestedResource) {
|
|
521
|
+
await (0, agent_1.saveAttestedResource)(agent, attestedResource, {
|
|
522
|
+
resourceType: 'anonCredsSchema',
|
|
523
|
+
relatedJsonSchemaCredentialId: jsonSchemaCredentialId,
|
|
524
|
+
});
|
|
525
|
+
}
|
|
526
|
+
return schemaId;
|
|
527
|
+
}
|
|
300
528
|
async function publishVtjscIfOwner(state, agent, schemaEntityId, agentCorporationId) {
|
|
301
|
-
var _a
|
|
529
|
+
var _a;
|
|
302
530
|
const schema = state.credentialSchemas[schemaEntityId];
|
|
303
531
|
if (!schema) {
|
|
304
532
|
agent.config.logger.warn(`[VTJSC] Schema ${schemaEntityId} not found in state`);
|
|
@@ -313,19 +541,36 @@ async function publishVtjscIfOwner(state, agent, schemaEntityId, agentCorporatio
|
|
|
313
541
|
agent.config.logger.debug(`[VTJSC] Skipping schema ${schema.id}: ecosystem ${ecosystem.id} belongs to corporation ${ecosystem.corporationId}`);
|
|
314
542
|
return;
|
|
315
543
|
}
|
|
316
|
-
const chainId = (
|
|
544
|
+
const chainId = (_a = agent.veranaChain) === null || _a === void 0 ? void 0 : _a.getChainId;
|
|
545
|
+
if (!chainId) {
|
|
546
|
+
agent.config.logger.warn(`[VTJSC] Skipping schema ${schema.id}: the agent is not connected to a chain`);
|
|
547
|
+
return;
|
|
548
|
+
}
|
|
317
549
|
const jsonSchemaRef = `vpr:verana:${chainId}:cs:${schema.id}`;
|
|
318
550
|
const digestSRI = (0, setupSelfTr_1.generateDigestSRI)(schema.jsonSchema);
|
|
551
|
+
let jsonSchemaCredentialId;
|
|
319
552
|
try {
|
|
320
|
-
await (0, trustCredentialStore_1.createJsc)(agent, agent.publicApiBaseUrl, (0, data_1.getEcsSchemas)(agent.publicApiBaseUrl), {
|
|
553
|
+
const credential = await (0, trustCredentialStore_1.createJsc)(agent, agent.publicApiBaseUrl, (0, data_1.getEcsSchemas)(agent.publicApiBaseUrl), {
|
|
321
554
|
schemaBaseId: String(schema.id),
|
|
322
555
|
jsonSchemaRef,
|
|
323
556
|
precomputedDigestSRI: digestSRI,
|
|
324
557
|
});
|
|
558
|
+
jsonSchemaCredentialId = credential.id;
|
|
325
559
|
agent.config.logger.info(`[VTJSC] Published VTJSC for schema ${schema.id} (Ecosystem ${schema.ecosystemId}) at block ${state.lastBlockHeight}`);
|
|
326
560
|
}
|
|
327
561
|
catch (e) {
|
|
328
562
|
agent.config.logger.error(`[VTJSC] Failed to publish VTJSC for schema ${schema.id}`, e);
|
|
563
|
+
return;
|
|
564
|
+
}
|
|
565
|
+
// an AnonCreds failure keeps the VTJSC: the startup reconciliation retries the schema
|
|
566
|
+
if (!jsonSchemaCredentialId)
|
|
567
|
+
return;
|
|
568
|
+
try {
|
|
569
|
+
const schemaId = await publishAnonCredsSchemaForVtjsc(agent, schema.id, schema.jsonSchema, jsonSchemaCredentialId);
|
|
570
|
+
agent.config.logger.info(`[VTJSC] Published the AnonCreds schema ${schemaId} of ${jsonSchemaCredentialId}`);
|
|
571
|
+
}
|
|
572
|
+
catch (e) {
|
|
573
|
+
agent.config.logger.error(`[VTJSC] Failed to publish the AnonCreds schema of ${jsonSchemaCredentialId}`, e);
|
|
329
574
|
}
|
|
330
575
|
}
|
|
331
576
|
//# sourceMappingURL=stateMutations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateMutations.js","sourceRoot":"","sources":["../../../src/blockchain/handlers/stateMutations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stateMutations.js","sourceRoot":"","sources":["../../../src/blockchain/handlers/stateMutations.ts"],"names":[],"mappings":";;AA4CA,gDA6CC;AAED,0CAkBC;AAED,8CAaC;AAED,wDAqBC;AAED,8CA0BC;AAED,oFA6BC;AAGD,gEAoBC;AAGD,kFAeC;AAED,gFAwBC;AAED,gFAwBC;AAGD,oFA2BC;AAMD,sGAqBC;AAED,wEAmBC;AAmBD,gEAiBC;AAED,gEA4EC;AAoJD,wEA6CC;AAED,kDAoEC;AAlvBD,mDAA+D;AAE/D,oFAS8C;AAC9C,gEAA+D;AAG/D,uCAA8E;AAC9E,6CAAwD;AACxD,2CAAgD;AAChD,2DAA8E;AAC9E,yDAA2D;AAC3D,qDAAmE;AACnE,2EAQyC;AACzC,2CAAgE;AAChE,6CAAkE;AAClE,6DAAyE;AACzE,yCAAiD;AAEjD,oCAOiB;AAEjB,SAAgB,kBAAkB,CAAC,KAAsB,EAAE,QAAyB;;IAClF,QAAQ,QAAQ,CAAC,GAAG,EAAE,CAAC;QACrB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,iBAAiB,CAAC;QACvB,KAAK,kBAAkB,CAAC;QACxB,KAAK,gCAAgC;YACnC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YAChC,MAAK;QACP,KAAK,yBAAyB;YAC5B,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YAClC,MAAK;QACP,KAAK,2BAA2B,CAAC;QACjC,KAAK,wBAAwB,CAAC;QAC9B,KAAK,yBAAyB;YAC5B,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YACvC,MAAK;QACP,KAAK,oBAAoB,CAAC;QAC1B,KAAK,oBAAoB;YACvB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;YAC1D,MAAK;QACP,KAAK,uBAAuB,CAAC;QAC7B,KAAK,uBAAuB;YAC1B,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;YACtC,MAAK;QACP,KAAK,6BAA6B;YAChC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;YAC5D,MAAK;QACP,KAAK,8BAA8B;YACjC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE;gBACjC,cAAc,EAAE,MAAM,CAAC,MAAA,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,mCAAI,EAAE,CAAC;aAClE,CAAC,CAAA;YACF,MAAK;QACP,KAAK,mBAAmB;YACtB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YACrD,MAAK;QACP,KAAK,8BAA8B;YACjC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YACrD,MAAK;QACP,KAAK,qCAAqC;YACxC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;YACtD,MAAK;QACP,KAAK,gCAAgC;YACnC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;YACtC,MAAK;IACT,CAAC;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,KAAsB,EAAE,QAAyB;;IAC/E,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAA;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAErC,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,CAAA;IACjC,MAAM,QAAQ,GACZ,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,KAAK,CAAC,CAAA;IAE3G,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG;QACrB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,GAAG,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,KAAK,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,mCAAI,EAAE,CAAC;QAC5C,aAAa,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,gBAAgB,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,mCAAI,CAAC,CAAC;QAC1E,QAAQ;QACR,aAAa,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa;QACtC,iBAAiB,EAAE,KAAK;KACzB,CAAA;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAAsB,EAAE,QAAyB;;IACjF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAErC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG;QACrB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,GAAG,EAAE,MAAM,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,mCAAI,EAAE,CAAC;QAChC,aAAa,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,mCAAI,CAAC;QAC3C,QAAQ,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,KAAK;QACrC,aAAa,EAAE,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,mCAAI,CAAC,CAAC,GAAG,CAAC;QACjD,iBAAiB,EAAE,KAAK;KACzB,CAAA;AACH,CAAC;AAED,SAAgB,sBAAsB,CAAC,KAAsB,EAAE,QAAyB;;IACtF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAA;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;IAE5C,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,CAAA;IACjC,MAAM,QAAQ,GACZ,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,KAAK,CAAC,CAAA;IAE3G,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG;QAC5B,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,WAAW,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,cAAc,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,mCAAI,CAAC,CAAC;QACpE,UAAU,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,aAAa,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,EAAE,CAAC;QAClE,UAAU,EAAE,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU;QACpG,YAAY,EAAE,CAAC,CAAC,0BAA0B,CAAC;YACzC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;YACvC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY;QAC1B,QAAQ;QACR,iBAAiB,EAAE,KAAK;KACzB,CAAA;AACH,CAAC;AAED,SAAgB,iBAAiB,CAC/B,KAAsB,EACtB,QAAyB,EACzB,YAKI,EAAE;;IAEN,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAA;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;IAEvC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG;QACvB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,WAAW,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,CAAC,CAAC;QAC3D,GAAG,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,KAAK,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,mCAAI,EAAE,CAAC;QAC5C,IAAI,EAAE,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,MAAM,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,CAAC,CAAC;QAC9C,OAAO,EAAE,MAAA,SAAS,CAAC,OAAO,mCAAI,MAAM,CAAC,MAAA,MAAA,CAAC,CAAC,UAAU,CAAC,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,EAAE,CAAC;QAC9E,cAAc,EAAE,MAAA,MAAA,SAAS,CAAC,cAAc,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,mCAAI,EAAE;QAC1E,OAAO,EAAE,MAAA,MAAA,SAAS,CAAC,OAAO,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,KAAK;QACxD,OAAO,EAAE,MAAA,MAAA,SAAS,CAAC,OAAO,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,mCAAI,KAAK;QACxD,iBAAiB,EAAE,KAAK;KACzB,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,oCAAoC,CACxD,KAAc,EACd,aAAqB,EACrB,SAI2B,EAC3B,UAAkB;IAElB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAA;IAClC,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,wCAAa,CAAC,CAAA;IACrE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,sBAAsB,EAAE,aAAa,EAAE,CAAC,CAAA;IAErG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;YACrE,IAAI,cAAc,EAAE,CAAC;gBACnB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,4BAA4B,MAAM,CAAC,EAAE,oBAAoB,cAAc,iBAAiB,aAAa,GAAG,CACzG,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,eAAe,UAAU,eAAe,MAAM,CAAC,EAAE,EAAE,EACnD,CAA4B,CAC7B,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,qGAAqG;AAC9F,KAAK,UAAU,0BAA0B,CAC9C,KAAc,EACd,aAAqB,EACrB,EAAuD;IAEvD,MAAM,YAAY,GAAG,IAAI,2BAAkB,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,oCAAoC,CACxC,KAAK,EACL,aAAa,EACb,KAAK,EAAC,MAAM,EAAC,EAAE;QACb,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS;YAAE,OAAO,IAAI,CAAA;QACrD,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;QACtE,IAAI,CAAC,oDAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO,IAAI,CAAA;QAClF,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAA;QAClG,oFAAoF;QACpF,IAAI,CAAC,gBAAgB;YAAE,MAAM,YAAY,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC3E,OAAO,WAAW,CAAA;IACpB,CAAC,EACD,yBAAyB,CAC1B,CAAA;AACH,CAAC;AAED,mJAAmJ;AAC5I,KAAK,UAAU,mCAAmC,CACvD,KAAc,EACd,aAAqB;IAErB,MAAM,oCAAoC,CACxC,KAAK,EACL,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QACtC,MAAM,OAAO,GAAG,CAAC,sCAAW,CAAC,MAAM,EAAE,sCAAW,CAAC,UAAU,EAAE,sCAAW,CAAC,UAAU,CAAC,CAAA;QACpF,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACxF,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,sCAAW,CAAC,SAAS,CAAC,CAAA;QACtE,OAAO,WAAW,CAAA;IACpB,CAAC,EACD,0BAA0B,CAC3B,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,kCAAkC,CACtD,KAAc,EACd,aAAqB;IAErB,MAAM,oCAAoC,CACxC,KAAK,EACL,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QACtC,IACE,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,kBAAkB;YAC/C,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,kBAAkB,EAC/C,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,oCAAS,CAAC,CAAC,qBAAqB,CAAC;YAC5E,cAAc,EAAE,MAAM,CAAC,EAAE;YACzB,IAAI,EAAE,0CAAe,CAAC,kBAAkB;YACxC,KAAK,EAAE,sCAAW,CAAC,kBAAkB;YACrC,aAAa,EAAE,eAAe,aAAa,4BAA4B;SACxE,CAAC,CAAA;QACF,OAAO,qBAAqB,CAAA;IAC9B,CAAC,EACD,mCAAmC,CACpC,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,kCAAkC,CACtD,KAAc,EACd,aAAqB;IAErB,MAAM,oCAAoC,CACxC,KAAK,EACL,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QACtC,IACE,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,kBAAkB;YAC/C,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,kBAAkB,EAC/C,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,oCAAS,CAAC,CAAC,qBAAqB,CAAC;YAC5E,cAAc,EAAE,MAAM,CAAC,EAAE;YACzB,IAAI,EAAE,0CAAe,CAAC,kBAAkB;YACxC,KAAK,EAAE,sCAAW,CAAC,kBAAkB;YACrC,aAAa,EAAE,eAAe,aAAa,0CAA0C;SACtF,CAAC,CAAA;QACF,OAAO,qBAAqB,CAAA;IAC9B,CAAC,EACD,mCAAmC,CACpC,CAAA;AACH,CAAC;AAED,gHAAgH;AACzG,KAAK,UAAU,oCAAoC,CACxD,KAAc,EACd,aAAqB;IAErB,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC7F,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,+BAAuB,IAAI,WAAW,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAM;IAC1F,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IAEnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAA;IAClC,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,wCAAa,CAAC,CAAA;IACrE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,sBAAsB,EAAE,aAAa,EAAE,CAAC,CAAA;IACrG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,IAAI,KAAK,qCAAU,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,0BAA0B;YAAE,SAAQ;QACxF,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAA,kDAA2B,EAAC,KAAK,EAAE,MAAM,CAAC,0BAA0B,CAAC,CAAA;YAChG,IAAI,YAAY,EAAE,CAAC;gBACjB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,uDAAuD,YAAY,iBAAiB,aAAa,GAAG,CACrG,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,0EAA0E,aAAa,EAAE,EACzF,CAA4B,CAC7B,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,6CAA6C,CACjE,KAAc,EACd,aAAqB;IAErB,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IACnC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC7F,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,+BAAuB,IAAI,WAAW,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAM;IAE1F,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,IAAA,uDAAgC,EAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,CAAA;QAC/E,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,6DAA6D,MAAM,wBAAwB,aAAa,GAAG,CAC5G,CAAA;QACH,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,qFAAqF,aAAa,EAAE,EACpG,CAA4B,CAC7B,CAAA;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,8BAA8B,CAAC,KAAc,EAAE,aAAqB;IACxF,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC7F,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,KAAK,uBAAe,CAAC,SAAS,CAAA;IAEjF,MAAM,oCAAoC,CACxC,KAAK,EACL,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QACtC,IAAI,IAAA,gDAAqB,EAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACpD,IAAI,cAAc,IAAI,MAAM,CAAC,0BAA0B,EAAE,CAAC;YACxD,IAAI,MAAM,CAAC,KAAK,KAAK,sCAAW,CAAC,SAAS;gBAAE,OAAO,IAAI,CAAA;YACvD,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,sCAAW,CAAC,SAAS,CAAC,CAAA;YACtE,OAAO,WAAW,CAAA;QACpB,CAAC;QACD,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,sCAAW,CAAC,qBAAqB,CAAC,CAAA;QAClF,OAAO,yBAAyB,CAAA;IAClC,CAAC,EACD,yCAAyC,CAC1C,CAAA;AACH,CAAC;AAED,+FAA+F;AAC/F,gEAAgE;AAChE,KAAK,UAAU,gBAAgB,CAC7B,KAAc,EACd,QAAgB;IAEhB,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,OAAO,SAAS,CAAA;IACpD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,IAAA,kCAAiB,EAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;IACtE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,QAAQ,0CAA0C,CAAC,CAAA;QACnG,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,kFAAkF;IAClF,OAAO,MAAM,IAAA,4BAAgB,EAAC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC7E,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAAC,KAAc,EAAE,QAAyB;IACxF,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAA;IAC/B,IAAI,CAAC,KAAK;QAAE,OAAM;IAClB,MAAM,sBAAsB,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACzD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAAE,OAAM;IACpD,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAA;IACrF,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAM;IACrE,IAAI,CAAC;QACH,MAAM,IAAA,kDAAmC,EAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACrE,MAAM,YAAY,GAAG,IAAI,2BAAkB,CAAC,KAAK,CAAC,CAAA;QAClD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QACxE,MAAM,YAAY,CAAC,sBAAsB,iBAAG,sBAAsB,IAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAG,CAAA;IACtG,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,oDAAqD,GAAa,CAAC,OAAO,KAAM,GAAa,CAAC,KAAK,EAAE,CACtG,CAAA;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAC9C,KAAc,EACd,OAA6B,EAC7B,aAAqB,EACrB,SAAqB;;IAErB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IAEjD,MAAM,OAAO,GAAG,MAAA,KAAK,CAAC,WAAW,0CAAE,UAAU,CAAA;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;QAClG,OAAM;IACR,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAA;IACjD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,CAAA;IAC7F,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IAEpC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,KAAK,MAAM,MAAM,IAAI,MAAM,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YACvE,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;YACvE,IAAI,CAAC,SAAS;gBAAE,OAAM;YACtB,MAAM,SAAS,GAAG,cAAc,OAAO,OAAO,MAAM,CAAC,EAAE,EAAE,CAAA;YACzD,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACzB,MAAM,cAAc,GAAG,IAAA,+BAAiB,EAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YAC5D,MAAM,WAAW,GAAG,IAAA,wCAAiB,EAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;YAC1E,MAAM,cAAc,GAAG,MACrB,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAE,iBAC1B,0CAAE,SAAS,CAAA;YACZ,IAAI,sBAAsB,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,0CAAE,EAAE,CAAA;YACxD,IAAI,CAAC;gBACH,wEAAwE;gBACxE,IACE,CAAC,WAAW;oBACZ,cAAc,KAAK,cAAc;oBACjC,CAAC,IAAA,sCAA8B,EAAC,WAAW,CAAC,UAAU,CAAC,EACvD,CAAC;oBACD,MAAM,UAAU,GAAG,MAAM,IAAA,gCAAS,EAChC,KAAK,EACL,KAAK,CAAC,gBAAgB,EACtB,IAAA,oBAAa,EAAC,KAAK,CAAC,gBAAgB,CAAC,EACrC;wBACE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC/B,aAAa,EAAE,SAAS;wBACxB,oBAAoB,EAAE,cAAc;qBACrC,CACF,CAAA;oBACD,sBAAsB,GAAG,UAAU,CAAC,EAAE,CAAA;oBACtC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,uCAAuC,MAAM,CAAC,EAAE,eAAe,SAAS,CAAC,EAAE,GAAG,CAC/E,CAAA;gBACH,CAAC;qBAAM,IAAI,MAAM,IAAA,+CAAwB,EAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBAC5D,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,2CAA2C,MAAM,CAAC,EAAE,eAAe,SAAS,CAAC,EAAE,GAAG,CACnF,CAAA;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gDAAgD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAU,CAAC,CAAA;YACpG,CAAC;YAED,2FAA2F;YAC3F,IAAI,CAAC,sBAAsB;gBAAE,SAAQ;YACrC,IAAI,CAAC;gBACH,MAAM,8BAA8B,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAA;YACpG,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,uDAAuD,sBAAsB,EAAE,EAC/E,CAAU,CACX,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,mCAAmC,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IAE7F,IAAI,SAAS;QAAE,MAAM,iCAAiC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;AACnF,CAAC;AAED,oFAAoF;AACpF,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,cAAc,OAAO,MAAM,CAAA;AAEvF;;;;;;GAMG;AACH,KAAK,UAAU,mCAAmC,CAChD,KAAc,EACd,OAA6B,EAC7B,aAAqB,EACrB,OAAe,EACf,UAA+B;IAE/B,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IACvE,IAAI,CAAC,SAAS;QAAE,OAAM;IACtB,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAClD,IAAI,CAAC,QAAQ;QAAE,OAAM;IAErB,MAAM,MAAM,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC9C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAoC,CAAA;IAClE,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,+EAA+E;QAC/E,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAQ;QAC3C,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,SAAQ;QAEvC,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;YAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;YAC/C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACrC,cAAc,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAA;YAC1E,CAAC;YACD,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YACjD,IAAI,CAAC,SAAS;gBAAE,SAAQ;YACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,aAAa;gBAAE,SAAQ;YAEhE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,yCAAyC,QAAQ,eAAe,WAAW,cAAc;gBACvF,eAAe,SAAS,CAAC,cAAc,EAAE,CAC5C,CAAA;YACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0FAA0F;YAC1F,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,uCAAuC,QAAQ,KAAM,KAAe,CAAC,OAAO,EAAE,CAC/E,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAM;IAC9B,MAAM,QAAQ,GAAG,MAAM,IAAA,8CAAuB,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAC5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,QAAQ,CAAC,MAAM,uBAAuB,CAAC,CAAA;IACtF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,iCAAiC,CAC9C,KAAc,EACd,OAA6B,EAC7B,SAAoB;;IAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAA;IAC/B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAA;IAEhC,6FAA6F;IAC7F,mFAAmF;IACnF,KAAK,MAAM,gBAAgB,IAAI,CAAC,wBAAgB,CAAC,OAAO,EAAE,wBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC;gBAC3C,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,IAAI,EAAE,uBAAe,CAAC,MAAM;gBAC5B,gBAAgB;aACjB,CAAC,CAAA;YACF,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,MAAM,IAAA,uDAAgC,EAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;gBAC1E,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;oBAC/B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,6DAA6D,MAAM,KAAK,gBAAgB,uBAAuB,MAAM,CAAC,EAAE,GAAG,CAC5H,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,sDAAsD,gBAAgB,sBAAsB,EAC5F,CAAU,CACX,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC;QAC7C,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,IAAI,EAAE,uBAAe,CAAC,MAAM;QAC5B,gBAAgB,EAAE,wBAAgB,CAAC,MAAM;KAC1C,CAAC,CAAA;IAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,OAAO;YAAE,SAAQ;QACtF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAClE,MAAM,MAAM,GAAG,MAAM,IAAA,kCAAiB,EAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YAC1D,IAAI,CAAC,MAAM;gBAAE,SAAQ;YACrB,MAAM,sBAAsB,GAAG,MAAM,IAAA,6CAA6B,EAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YACtG,MAAM,IAAA,gDAAyB,EAC7B,KAAK,EACL,KAAK,CAAC,gBAAgB,EACtB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EACjB,MAAM,EACN,SAAS,EACT,sBAAsB,EACtB,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,WAAW,EAClB,MAAA,MAAM,CAAC,eAAe,mCAAI,SAAS,CACpC,CAAA;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,0DAA0D,MAAM,CAAC,SAAS,EAAE,EAC5E,CAAU,CACX,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,8BAA8B,CAClD,KAAc,EACd,kBAAmC,EACnC,UAA2B,EAC3B,sBAA8B;IAE9B,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,OAAO,SAAS,CAAA;IAEhC,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;QAClE,6BAA6B,EAAE,sBAAsB;KACtD,CAAC,CAAA;IACF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC,QAAQ,CAAA;IAExC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAA,oCAA6B,EAAC,UAAU,CAAC,CAAA;IACrE,4DAA4D;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAE1C,MAAM,EAAE,WAAW,EAAE,oBAAoB,EAAE,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC;QACzF,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE;QACzD,OAAO,EAAE,EAAE,aAAa,EAAE,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,EAAE;KACtF,CAAC,CAAA;IAEF,IAAI,WAAW,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAA;QACtF,MAAM,IAAI,KAAK,CAAC,8CAA8C,sBAAsB,KAAK,MAAM,EAAE,CAAC,CAAA;IACpG,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAA;IAChC,MAAM,gBAAgB,GAAG,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,qCAAyB,CAAC,CAAA;IACnF,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACnF,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC,MAAM,CAAC,+BAA+B,EAAE,sBAAsB,CAAC,CAAA;QAC5E,MAAM,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAC5D,CAAC;IAED,iGAAiG;IACjG,MAAM,EAAE,gBAAgB,EAAE,GAAG,oBAAsE,CAAA;IACnG,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAA,4BAAoB,EAAC,KAAK,EAAE,gBAAgB,EAAE;YAClD,YAAY,EAAE,iBAAiB;YAC/B,6BAA6B,EAAE,sBAAsB;SACtD,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAsB,EACtB,KAAc,EACd,cAAsB,EACtB,kBAA2B;;IAE3B,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;IACtD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,cAAc,qBAAqB,CAAC,CAAA;QAC/E,OAAM;IACR,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;IAC9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,WAAW,qBAAqB,CAAC,CAAA;QACtF,OAAM;IACR,CAAC;IAED,IAAI,SAAS,CAAC,aAAa,KAAK,kBAAkB,EAAE,CAAC;QACnD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,2BAA2B,MAAM,CAAC,EAAE,eAAe,SAAS,CAAC,EAAE,2BAA2B,SAAS,CAAC,aAAa,EAAE,CACpH,CAAA;QACD,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,MAAA,KAAK,CAAC,WAAW,0CAAE,UAAU,CAAA;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,MAAM,CAAC,EAAE,yCAAyC,CAAC,CAAA;QACvG,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,cAAc,OAAO,OAAO,MAAM,CAAC,EAAE,EAAE,CAAA;IAE7D,MAAM,SAAS,GAAG,IAAA,+BAAiB,EAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAEtD,IAAI,sBAA0C,CAAA;IAC9C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,IAAA,gCAAS,EAAC,KAAK,EAAE,KAAK,CAAC,gBAAgB,EAAE,IAAA,oBAAa,EAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;YACvG,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,aAAa;YACb,oBAAoB,EAAE,SAAS;SAChC,CAAC,CAAA;QACF,sBAAsB,GAAG,UAAU,CAAC,EAAE,CAAA;QACtC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,sCAAsC,MAAM,CAAC,EAAE,eAAe,MAAM,CAAC,WAAW,cAAc,KAAK,CAAC,eAAe,EAAE,CACtH,CAAA;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,MAAM,CAAC,EAAE,EAAE,EAAE,CAAU,CAAC,CAAA;QAChG,OAAM;IACR,CAAC;IAED,sFAAsF;IACtF,IAAI,CAAC,sBAAsB;QAAE,OAAM;IACnC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CACnD,KAAK,EACL,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,UAAU,EACjB,sBAAsB,CACvB,CAAA;QACD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACtB,0CAA0C,QAAQ,OAAO,sBAAsB,EAAE,CAClF,CAAA;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CACvB,qDAAqD,sBAAsB,EAAE,EAC7E,CAAU,CACX,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './AnonCredsTrustService';
|
|
1
2
|
export * from './AuthorizationService';
|
|
2
3
|
export * from './IndexerWebSocketService';
|
|
3
4
|
export * from './VeranaHelpers';
|
|
@@ -5,3 +6,4 @@ export * from './VeranaChainService';
|
|
|
5
6
|
export * from './VeranaIndexerService';
|
|
6
7
|
export * from './types';
|
|
7
8
|
export * from './handlers';
|
|
9
|
+
export * from './indexerMappers';
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./AnonCredsTrustService"), exports);
|
|
17
18
|
__exportStar(require("./AuthorizationService"), exports);
|
|
18
19
|
__exportStar(require("./IndexerWebSocketService"), exports);
|
|
19
20
|
__exportStar(require("./VeranaHelpers"), exports);
|
|
@@ -21,4 +22,5 @@ __exportStar(require("./VeranaChainService"), exports);
|
|
|
21
22
|
__exportStar(require("./VeranaIndexerService"), exports);
|
|
22
23
|
__exportStar(require("./types"), exports);
|
|
23
24
|
__exportStar(require("./handlers"), exports);
|
|
25
|
+
__exportStar(require("./indexerMappers"), exports);
|
|
24
26
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/blockchain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,4DAAyC;AACzC,kDAA+B;AAC/B,uDAAoC;AACpC,yDAAsC;AACtC,0CAAuB;AACvB,6CAA0B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/blockchain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,yDAAsC;AACtC,4DAAyC;AACzC,kDAA+B;AAC/B,uDAAoC;AACpC,yDAAsC;AACtC,0CAAuB;AACvB,6CAA0B;AAC1B,mDAAgC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toParticipant = toParticipant;
|
|
4
|
+
exports.toCredentialSchema = toCredentialSchema;
|
|
5
|
+
const types_1 = require("./types");
|
|
6
|
+
const ROLE = {
|
|
7
|
+
[types_1.ParticipantRole.Issuer]: 1,
|
|
8
|
+
[types_1.ParticipantRole.Verifier]: 2,
|
|
9
|
+
[types_1.ParticipantRole.IssuerGrantor]: 3,
|
|
10
|
+
[types_1.ParticipantRole.VerifierGrantor]: 4,
|
|
11
|
+
[types_1.ParticipantRole.Ecosystem]: 5,
|
|
12
|
+
[types_1.ParticipantRole.Holder]: 6,
|
|
13
|
+
};
|
|
14
|
+
const OP_STATE = {
|
|
15
|
+
PENDING: types_1.ValidationState.PENDING,
|
|
16
|
+
VALIDATED: types_1.ValidationState.VALIDATED,
|
|
17
|
+
TERMINATED: types_1.ValidationState.TERMINATED,
|
|
18
|
+
};
|
|
19
|
+
const ONBOARDING_MODE = {
|
|
20
|
+
OPEN: 1,
|
|
21
|
+
ECOSYSTEM_ONBOARDING_PROCESS: 2,
|
|
22
|
+
GRANTOR_ONBOARDING_PROCESS: 3,
|
|
23
|
+
};
|
|
24
|
+
const date = (v) => (v ? new Date(v) : undefined);
|
|
25
|
+
function toParticipant(dto) {
|
|
26
|
+
var _a, _b, _c, _d, _e;
|
|
27
|
+
return {
|
|
28
|
+
id: dto.id,
|
|
29
|
+
schemaId: dto.schema_id,
|
|
30
|
+
role: (_a = ROLE[dto.role]) !== null && _a !== void 0 ? _a : 0,
|
|
31
|
+
did: (_b = dto.did) !== null && _b !== void 0 ? _b : '',
|
|
32
|
+
corporation: '',
|
|
33
|
+
validatorParticipantId: (_c = dto.validator_participant_id) !== null && _c !== void 0 ? _c : 0,
|
|
34
|
+
opState: dto.op_state ? ((_d = OP_STATE[dto.op_state]) !== null && _d !== void 0 ? _d : types_1.ValidationState.UNSPECIFIED) : undefined,
|
|
35
|
+
opSummaryDigest: (_e = dto.op_summary_digest) !== null && _e !== void 0 ? _e : '',
|
|
36
|
+
revoked: date(dto.revoked),
|
|
37
|
+
slashed: date(dto.slashed),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function toCredentialSchema(dto) {
|
|
41
|
+
var _a, _b, _c, _d;
|
|
42
|
+
return {
|
|
43
|
+
id: dto.id,
|
|
44
|
+
ecosystemId: dto.ecosystem_id,
|
|
45
|
+
jsonSchema: dto.json_schema,
|
|
46
|
+
digestAlgorithm: dto.digest_algorithm,
|
|
47
|
+
issuerOnboardingMode: (_b = ONBOARDING_MODE[(_a = dto.issuer_onboarding_mode) !== null && _a !== void 0 ? _a : '']) !== null && _b !== void 0 ? _b : 0,
|
|
48
|
+
verifierOnboardingMode: (_d = ONBOARDING_MODE[(_c = dto.verifier_onboarding_mode) !== null && _c !== void 0 ? _c : '']) !== null && _d !== void 0 ? _d : 0,
|
|
49
|
+
holderOnboardingMode: 0,
|
|
50
|
+
archived: date(dto.archived),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=indexerMappers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexerMappers.js","sourceRoot":"","sources":["../../src/blockchain/indexerMappers.ts"],"names":[],"mappings":";;AAgCA,sCAaC;AAED,gDAWC;AA1DD,mCAOgB;AAEhB,MAAM,IAAI,GAA2B;IACnC,CAAC,uBAAe,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3B,CAAC,uBAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC7B,CAAC,uBAAe,CAAC,aAAa,CAAC,EAAE,CAAC;IAClC,CAAC,uBAAe,CAAC,eAAe,CAAC,EAAE,CAAC;IACpC,CAAC,uBAAe,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9B,CAAC,uBAAe,CAAC,MAAM,CAAC,EAAE,CAAC;CAC5B,CAAA;AAED,MAAM,QAAQ,GAAoC;IAChD,OAAO,EAAE,uBAAe,CAAC,OAAO;IAChC,SAAS,EAAE,uBAAe,CAAC,SAAS;IACpC,UAAU,EAAE,uBAAe,CAAC,UAAU;CACvC,CAAA;AAED,MAAM,eAAe,GAA2B;IAC9C,IAAI,EAAE,CAAC;IACP,4BAA4B,EAAE,CAAC;IAC/B,0BAA0B,EAAE,CAAC;CAC9B,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,CAA4B,EAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AAE9F,SAAgB,aAAa,CAAC,GAAmB;;IAC/C,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,IAAI,EAAE,MAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAI,CAAC;QACzB,GAAG,EAAE,MAAA,GAAG,CAAC,GAAG,mCAAI,EAAE;QAClB,WAAW,EAAE,EAAE;QACf,sBAAsB,EAAE,MAAA,GAAG,CAAC,wBAAwB,mCAAI,CAAC;QACzD,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAA,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,mCAAI,uBAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3F,eAAe,EAAE,MAAA,GAAG,CAAC,iBAAiB,mCAAI,EAAE;QAC5C,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;QAC1B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;KAC3B,CAAA;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,GAAwB;;IACzD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,eAAe,EAAE,GAAG,CAAC,gBAAgB;QACrC,oBAAoB,EAAE,MAAA,eAAe,CAAC,MAAA,GAAG,CAAC,sBAAsB,mCAAI,EAAE,CAAC,mCAAI,CAAC;QAC5E,sBAAsB,EAAE,MAAA,eAAe,CAAC,MAAA,GAAG,CAAC,wBAAwB,mCAAI,EAAE,CAAC,mCAAI,CAAC;QAChF,oBAAoB,EAAE,CAAC;QACvB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;KAC7B,CAAA;AACH,CAAC"}
|