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

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 +60 -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 +148 -10
  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
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createInvitation = createInvitation;
4
+ exports.connectToPublicDid = connectToPublicDid;
4
5
  exports.getRecordId = getRecordId;
5
6
  exports.getWebDid = getWebDid;
6
7
  const core_1 = require("@credo-ts/core");
@@ -16,14 +17,14 @@ async function createInvitation(options) {
16
17
  const { agent, messages, useLegacyDid, invitationBaseUrl, imageUrl, didCommVersion } = options;
17
18
  // Use legacy did:web in case agent's did is webvh and using legacy did
18
19
  const ourDid = agent.did && (0, core_1.parseDid)(agent.did).method === 'webvh' && useLegacyDid
19
- ? `did:web:${(0, core_1.parseDid)(agent.did).id.split(':')[1]}`
20
+ ? `did:web:${(0, core_1.parseDid)(agent.did).id.split(':').slice(1).join(':')}`
20
21
  : agent.did;
21
- const effectiveVersion = didCommVersion !== null && didCommVersion !== void 0 ? didCommVersion : (agent.didcomm.config.sendsV2 ? 'v2' : 'v1');
22
+ const effectiveVersion = didCommVersion !== null && didCommVersion !== void 0 ? didCommVersion : 'v2';
22
23
  const isV2 = effectiveVersion === 'v2';
23
24
  if (!agent.didcomm.config.didcommVersions.includes(effectiveVersion)) {
24
25
  throw new Error(`Cannot create ${effectiveVersion} invitation: agent is configured with ` +
25
26
  `didcommVersions: [${agent.didcomm.config.didcommVersions.join(', ')}]. ` +
26
- `Add "${effectiveVersion}" to AGENT_DIDCOMM_VERSIONS or omit didCommVersion from the request.`);
27
+ `Add "${effectiveVersion}" to the agent's didcommVersions configuration.`);
27
28
  }
28
29
  const outOfBandInvitation = (await agent.didcomm.oob.createInvitation(Object.assign({ label: agent.label, multiUseInvitation: !messages, imageUrl,
29
30
  messages, didCommVersion: effectiveVersion }, (isV2
@@ -38,6 +39,54 @@ async function createInvitation(options) {
38
39
  }),
39
40
  };
40
41
  }
42
+ /**
43
+ * Connects to a peer that publishes a public DID, and reuses the connection that the
44
+ * agent already has to that peer.
45
+ *
46
+ * The agent must keep one connection record only for each peer. A second record for the
47
+ * same pair of DIDs makes the `findByDids` lookup of the message receiver throw
48
+ * `RecordDuplicateError`, and the agent then fails to process every inbound message from
49
+ * that peer. To find the existing record, the agent reads the `publicDid` tag that it
50
+ * sets on each connection to a peer that publishes a public DID.
51
+ *
52
+ * @param agent the local agent
53
+ * @param peerPublicDid the public DID of the peer
54
+ * @returns the id of a ready connection record
55
+ */
56
+ async function connectToPublicDid(agent, peerPublicDid) {
57
+ if (!agent.did)
58
+ throw new Error('Agent has no public DID');
59
+ const [existing] = await agent.didcomm.connections.findAllByQuery({
60
+ publicDid: peerPublicDid,
61
+ });
62
+ if (existing)
63
+ return (await agent.didcomm.connections.returnWhenIsConnected(existing.id)).id;
64
+ const { connectionRecord } = await agent.didcomm.oob.receiveImplicitInvitation({
65
+ did: peerPublicDid,
66
+ ourDid: agent.did,
67
+ label: agent.label,
68
+ didCommVersion: 'v2',
69
+ });
70
+ if (!connectionRecord)
71
+ throw new Error(`Failed to establish a DIDComm connection to ${peerPublicDid}`);
72
+ try {
73
+ // Tag the record with the public DID of the peer, to find it on the next call.
74
+ connectionRecord.setTag('publicDid', peerPublicDid);
75
+ await agent.context.resolve(didcomm_1.DidCommConnectionRepository).update(agent.context, connectionRecord);
76
+ const ready = await agent.didcomm.connections.returnWhenIsConnected(connectionRecord.id);
77
+ return ready.id;
78
+ }
79
+ catch (error) {
80
+ // Delete the incomplete record. If it stays, the next call reuses a connection that
81
+ // the peer never completed, and a later retry adds a duplicate record for the pair.
82
+ await agent.didcomm.connections.deleteById(connectionRecord.id).catch(deleteError => {
83
+ agent.config.logger.warn(`Failed to delete the incomplete connection ${connectionRecord.id}`, {
84
+ error: deleteError,
85
+ });
86
+ });
87
+ throw error;
88
+ }
89
+ }
41
90
  async function getRecordId(agent, id) {
42
91
  var _a;
43
92
  const record = await agent.genericRecords.findById(id);
@@ -49,7 +98,7 @@ async function getWebDid(agent) {
49
98
  if (parsedDid.method === 'web')
50
99
  return agent.did;
51
100
  if (parsedDid.method === 'webvh')
52
- return `did:web:${parsedDid.id.split(':')[1]}`;
101
+ return `did:web:${parsedDid.id.split(':').slice(1).join(':')}`;
53
102
  }
54
103
  }
55
104
  //# sourceMappingURL=agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/utils/agent.ts"],"names":[],"mappings":";;AAYA,4CA+CC;AAED,kCAGC;AAED,8BAOC;AAvED,yCAAyC;AACzC,+CAAiG;AAEjG;;;;;;GAMG;AACI,KAAK,UAAU,gBAAgB,CAAC,OAOtC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IAE9F,uEAAuE;IACvE,MAAM,MAAM,GACV,KAAK,CAAC,GAAG,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,YAAY;QACjE,CAAC,CAAC,WAAW,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;QACnD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;IAEf,MAAM,gBAAgB,GAAmB,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACvG,MAAM,IAAI,GAAG,gBAAgB,KAAK,IAAI,CAAA;IAEtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,iBAAiB,gBAAgB,wCAAwC;YACvE,qBAAqB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACzE,QAAQ,gBAAgB,sEAAsE,CACjG,CAAA;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,CAC1B,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,iBACtC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,kBAAkB,EAAE,CAAC,QAAQ,EAC7B,QAAQ;QACR,QAAQ,EACR,cAAc,EAAE,gBAAgB,IAC7B,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,MAAM,EAAE;QACZ,CAAC,CAAC;YACE,kBAAkB,EAAE,CAAC,kCAAwB,CAAC,WAAW,EAAE,kCAAwB,CAAC,WAAW,CAAC;YAChG,aAAa,EAAE,MAAM;SACtB,CAAC,EACN,CACH,CAAC,mBAAmB,CAAA;IACrB,OAAO;QACL,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC;YAC7B,MAAM,EAAE,iBAAiB;SAC1B,CAAC;KACH,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,KAAc,EAAE,EAAU;;IAC1D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtD,OAAO,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,WAAW,CAAY,mCAAI,EAAE,CAAA;AACtD,CAAC;AAEM,KAAK,UAAU,SAAS,CAAC,KAAc;IAC5C,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,IAAA,eAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAErC,IAAI,SAAS,CAAC,MAAM,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC,GAAG,CAAA;QAChD,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,WAAW,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAClF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/utils/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Logger } from '@credo-ts/core';
2
+ import { VsAgent } from '../agent/VsAgent';
3
+ /**
4
+ * Waits until this agent's own DID document is fetchable at its public endpoint, so a peer
5
+ * can resolve it as soon as we reach out. Checks the same file a peer's resolver would fetch:
6
+ * did.jsonl for did:webvh, did.json for did:web. Logs and returns if the deadline passes,
7
+ * rather than blocking the caller forever on a misconfigured deployment.
8
+ */
9
+ export declare function waitUntilOwnDidIsPubliclyResolvable(agent: VsAgent, logger: Logger): Promise<void>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitUntilOwnDidIsPubliclyResolvable = waitUntilOwnDidIsPubliclyResolvable;
4
+ // On a fresh deployment, the ingress route to this agent's own public endpoint
5
+ // can lag a few seconds behind the process becoming ready (e.g. a k8s Service
6
+ // has not finished propagating the new pod IP yet). A peer resolves our DID as
7
+ // part of processing any message we send it, so we wait for our own DID
8
+ // document to be publicly fetchable before reaching out to one.
9
+ const OWN_DID_READY_TIMEOUT_MS = 60000;
10
+ const OWN_DID_READY_POLL_INTERVAL_MS = 2000;
11
+ /**
12
+ * Waits until this agent's own DID document is fetchable at its public endpoint, so a peer
13
+ * can resolve it as soon as we reach out. Checks the same file a peer's resolver would fetch:
14
+ * did.jsonl for did:webvh, did.json for did:web. Logs and returns if the deadline passes,
15
+ * rather than blocking the caller forever on a misconfigured deployment.
16
+ */
17
+ async function waitUntilOwnDidIsPubliclyResolvable(agent, logger) {
18
+ const did = agent.did;
19
+ if (!did || !agent.publicApiBaseUrl)
20
+ return;
21
+ const documentFile = did.startsWith('did:web:') ? 'did.json' : 'did.jsonl';
22
+ const baseUrl = agent.publicApiBaseUrl.replace(/\/+$/, '');
23
+ // A path-based DID location serves its document at <base>/did.json(l), not under /.well-known
24
+ const hasPath = new URL(baseUrl).pathname !== '/';
25
+ const url = hasPath ? `${baseUrl}/${documentFile}` : `${baseUrl}/.well-known/${documentFile}`;
26
+ const deadline = Date.now() + OWN_DID_READY_TIMEOUT_MS;
27
+ let lastStatus = 'unreachable';
28
+ while (Date.now() < deadline) {
29
+ try {
30
+ const response = await fetch(url);
31
+ if (response.ok)
32
+ return;
33
+ lastStatus = response.status;
34
+ }
35
+ catch (error) {
36
+ lastStatus = error.message;
37
+ }
38
+ await new Promise(resolve => setTimeout(resolve, OWN_DID_READY_POLL_INTERVAL_MS));
39
+ }
40
+ logger.warn(`[DidReadiness] own DID document at ${url} was not publicly resolvable after ${OWN_DID_READY_TIMEOUT_MS}ms (last: ${lastStatus}); proceeding anyway`);
41
+ }
42
+ //# sourceMappingURL=didReadiness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"didReadiness.js","sourceRoot":"","sources":["../../src/utils/didReadiness.ts"],"names":[],"mappings":";;AAkBA,kFAyBC;AAvCD,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,wEAAwE;AACxE,gEAAgE;AAChE,MAAM,wBAAwB,GAAG,KAAM,CAAA;AACvC,MAAM,8BAA8B,GAAG,IAAK,CAAA;AAE5C;;;;;GAKG;AACI,KAAK,UAAU,mCAAmC,CAAC,KAAc,EAAE,MAAc;IACtF,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IACrB,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB;QAAE,OAAM;IAE3C,MAAM,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAA;IAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAC1D,8FAA8F;IAC9F,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAA;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,gBAAgB,YAAY,EAAE,CAAA;IAE7F,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAA;IACtD,IAAI,UAAU,GAAoB,aAAa,CAAA;IAC/C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YACjC,IAAI,QAAQ,CAAC,EAAE;gBAAE,OAAM;YACvB,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,GAAI,KAAe,CAAC,OAAO,CAAA;QACvC,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC,CAAA;IACnF,CAAC;IACD,MAAM,CAAC,IAAI,CACT,sCAAsC,GAAG,sCAAsC,wBAAwB,aAAa,UAAU,sBAAsB,CACrJ,CAAA;AACH,CAAC"}
@@ -3,3 +3,4 @@ export * from './data';
3
3
  export * from './setupSelfTr';
4
4
  export * from './trustCredentialStore';
5
5
  export * from './util';
6
+ export * from './vtjscResolver';
@@ -19,4 +19,5 @@ __exportStar(require("./data"), exports);
19
19
  __exportStar(require("./setupSelfTr"), exports);
20
20
  __exportStar(require("./trustCredentialStore"), exports);
21
21
  __exportStar(require("./util"), exports);
22
+ __exportStar(require("./vtjscResolver"), exports);
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,yCAAsB;AACtB,gDAA6B;AAC7B,yDAAsC;AACtC,yCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,yCAAsB;AACtB,gDAA6B;AAC7B,yDAAsC;AACtC,yCAAsB;AACtB,kDAA+B"}
@@ -31,6 +31,7 @@ export declare const createJsonSchema: W3cCredentialSchema;
31
31
  export declare const createJsonSubjectRef: (id: string) => W3cCredentialSubject;
32
32
  export declare const linkedVpFragment: (schemaKey: string) => string;
33
33
  export declare const mapToSelfTr: (url: string, publicApiBaseUrl: string) => string;
34
+ export declare const sortKeysDeep: (value: unknown) => unknown;
34
35
  export declare const setupSelfTr: ({ agent, publicApiBaseUrl, defaults, }: {
35
36
  agent: VsAgent;
36
37
  publicApiBaseUrl: string;
@@ -65,9 +66,10 @@ export declare function signerW3c(agent: VsAgent, obj: W3cPresentation, verifica
65
66
  * @param schemaKey - Unique identifier for the presentation type and metadata key.
66
67
  * @param type - Array of credential types to include.
67
68
  * @param credentialSchema - Schema definition for the credential.
69
+ * @param beforePublish - Step that must succeed before a linked presentation counts as published.
68
70
  * @returns The signed verifiable presentation, with integrity metadata.
69
71
  */
70
- export declare function generateVerifiablePresentation(agent: VsAgent, id: string, ecsSchemas: Record<string, string>, schemaKey: string, type: string[], credentialSchema: W3cCredentialSchema, defaults: SelfTrDefaults): Promise<any>;
72
+ export declare function generateVerifiablePresentation(agent: VsAgent, id: string, ecsSchemas: Record<string, string>, schemaKey: string, type: string[], credentialSchema: W3cCredentialSchema, defaults: SelfTrDefaults, beforePublish?: (verifiablePresentation: any) => Promise<void>): Promise<any>;
71
73
  export declare function createPresentation(options: Partial<W3cPresentationOptions>): W3cPresentation;
72
74
  /**
73
75
  * Retrieves and validates claims for a credential subject.
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.setupSelfTr = exports.mapToSelfTr = exports.linkedVpFragment = exports.createJsonSubjectRef = exports.createJsonSchema = exports.credentials = exports.presentations = void 0;
6
+ exports.setupSelfTr = exports.sortKeysDeep = exports.mapToSelfTr = exports.linkedVpFragment = exports.createJsonSubjectRef = exports.createJsonSchema = exports.credentials = exports.presentations = void 0;
7
7
  exports.createCredential = createCredential;
8
8
  exports.signerW3c = signerW3c;
9
9
  exports.generateVerifiablePresentation = generateVerifiablePresentation;
@@ -71,8 +71,27 @@ const linkedVpFragment = (schemaKey) => `vpr-schemas-${schemaKey.replace(/^ecs-/
71
71
  exports.linkedVpFragment = linkedVpFragment;
72
72
  const mapToSelfTr = (url, publicApiBaseUrl) => url.replace('ecosystem', `${publicApiBaseUrl}/vt`);
73
73
  exports.mapToSelfTr = mapToSelfTr;
74
+ // A plain array replacer only allowlists property names, applied at every
75
+ // nesting level — nested objects like `claims` and `credentialSchema` would
76
+ // serialize to `{}` since none of their own keys appear in a top-level
77
+ // key list. Sort keys recursively instead, so the hash actually reflects
78
+ // nested content and changes to claims invalidate the cache correctly.
79
+ const sortKeysDeep = (value) => {
80
+ if (Array.isArray(value))
81
+ return value.map(exports.sortKeysDeep);
82
+ if (value !== null && typeof value === 'object') {
83
+ return Object.keys(value)
84
+ .sort()
85
+ .reduce((acc, key) => {
86
+ acc[key] = (0, exports.sortKeysDeep)(value[key]);
87
+ return acc;
88
+ }, {});
89
+ }
90
+ return value;
91
+ };
92
+ exports.sortKeysDeep = sortKeysDeep;
74
93
  const buildIntegrityData = (data) => {
75
- return generateDigestSRI(JSON.stringify(data, Object.keys(data).sort()));
94
+ return generateDigestSRI(JSON.stringify((0, exports.sortKeysDeep)(data)));
76
95
  };
77
96
  const setupSelfTr = async ({ agent, publicApiBaseUrl, defaults, }) => {
78
97
  const ecsSchemas = (0, data_1.getEcsSchemas)(publicApiBaseUrl);
@@ -212,10 +231,11 @@ async function signerW3c(agent, obj, verificationMethod) {
212
231
  * @param schemaKey - Unique identifier for the presentation type and metadata key.
213
232
  * @param type - Array of credential types to include.
214
233
  * @param credentialSchema - Schema definition for the credential.
234
+ * @param beforePublish - Step that must succeed before a linked presentation counts as published.
215
235
  * @returns The signed verifiable presentation, with integrity metadata.
216
236
  */
217
- async function generateVerifiablePresentation(agent, id, ecsSchemas, schemaKey, type, credentialSchema, defaults) {
218
- var _a, _b, _c, _d;
237
+ async function generateVerifiablePresentation(agent, id, ecsSchemas, schemaKey, type, credentialSchema, defaults, beforePublish) {
238
+ var _a, _b, _c, _d, _e;
219
239
  if (!agent.did)
220
240
  throw Error('The DID must be set up');
221
241
  const [didRecord] = await agent.dids.getCreatedDids({ did: agent.did });
@@ -228,31 +248,40 @@ async function generateVerifiablePresentation(agent, id, ecsSchemas, schemaKey,
228
248
  const integrityData = buildIntegrityData({ id, type, credentialSchema, claims });
229
249
  const record = (_a = didRecord.metadata.get('_vt/vtc')) !== null && _a !== void 0 ? _a : {};
230
250
  const metadata = record[credentialSchema.id];
231
- if ((metadata === null || metadata === void 0 ? void 0 : metadata.integrityData) === integrityData && metadata.attached)
251
+ const attached = (_b = metadata === null || metadata === void 0 ? void 0 : metadata.attached) !== null && _b !== void 0 ? _b : true;
252
+ if ((metadata === null || metadata === void 0 ? void 0 : metadata.integrityData) === integrityData) {
253
+ // the presentation is already public, so a failed beforePublish step still needs a retry here
254
+ if (attached)
255
+ await (beforePublish === null || beforePublish === void 0 ? void 0 : beforePublish(metadata.verifiablePresentation));
232
256
  return metadata.verifiablePresentation;
257
+ }
233
258
  const presentation = createPresentation({
234
259
  id,
235
260
  holder: agent.did,
236
261
  verifiableCredential: [],
237
262
  });
238
263
  const verifiablePresentation = await generateVerifiableCredential(agent, agent.did, ecsSchemas, schemaKey, type, { id: agent.did }, credentialSchema, defaults, presentation);
264
+ // nothing is persisted yet, so a failure here leaves no public presentation behind
265
+ if (attached)
266
+ await (beforePublish === null || beforePublish === void 0 ? void 0 : beforePublish(verifiablePresentation));
239
267
  // Update linked VP when the presentation has changed
240
- didDocument.service = (_b = didDocument.service) === null || _b === void 0 ? void 0 : _b.map(s => {
241
- if (typeof s.serviceEndpoint !== 'string')
268
+ if (attached)
269
+ didDocument.service = (_c = didDocument.service) === null || _c === void 0 ? void 0 : _c.map(s => {
270
+ if (typeof s.serviceEndpoint !== 'string')
271
+ return s;
272
+ if (s.serviceEndpoint.includes(schemaKey) && s.id !== `${agent.did}#whois`) {
273
+ s.id = didDocumentServiceId;
274
+ s.serviceEndpoint = id;
275
+ }
242
276
  return s;
243
- if (s.serviceEndpoint.includes(schemaKey) && s.id !== `${agent.did}#whois`) {
244
- s.id = didDocumentServiceId;
245
- s.serviceEndpoint = id;
246
- }
247
- return s;
248
- });
277
+ });
249
278
  // Resolvers only discover the credential through the [VT-CRED-W3C-LINKED-VP] fragment, and
250
279
  // #whois does not match it. The rename above only covers documents that already carry the
251
280
  // service, so publish it here when nothing declared it yet.
252
281
  let didDocumentChanged = false;
253
- if (!((_c = didDocument.service) === null || _c === void 0 ? void 0 : _c.some(s => s.id === didDocumentServiceId))) {
282
+ if (attached && !((_d = didDocument.service) === null || _d === void 0 ? void 0 : _d.some(s => s.id === didDocumentServiceId))) {
254
283
  didDocument.service = [
255
- ...((_d = didDocument.service) !== null && _d !== void 0 ? _d : []),
284
+ ...((_e = didDocument.service) !== null && _e !== void 0 ? _e : []),
256
285
  new core_1.DidDocumentService({
257
286
  id: didDocumentServiceId,
258
287
  serviceEndpoint: id,
@@ -267,7 +296,7 @@ async function generateVerifiablePresentation(agent, id, ecsSchemas, schemaKey,
267
296
  verifiablePresentation,
268
297
  didDocumentServiceId,
269
298
  integrityData,
270
- attached: true,
299
+ attached,
271
300
  };
272
301
  didRecord.metadata.set('_vt/vtc', record);
273
302
  await agent.context.dependencyManager.resolve(core_1.DidRepository).update(agent.context, didRecord);
@@ -352,6 +381,17 @@ function validateSchema(ecsSchema, credentialSubject) {
352
381
  throw new Error(`Invalid claims for ${ecsSchema.$id}: ${JSON.stringify(errorDetails, null, 2)}`);
353
382
  }
354
383
  }
384
+ async function fetchSchemaContent(id) {
385
+ try {
386
+ const response = await fetch((0, vs_agent_model_1.mapToEcosystem)(id));
387
+ if (!response.ok)
388
+ return { error: `${response.status} ${response.statusText}` };
389
+ return { content: await response.text() };
390
+ }
391
+ catch (error) {
392
+ return { error: error instanceof Error ? error.message : String(error) };
393
+ }
394
+ }
355
395
  /**
356
396
  * Adds a Subresource Integrity (SRI) digest to the provided data using the schema content
357
397
  * fetched from the provided URL or from a local schema map as fallback.
@@ -364,15 +404,16 @@ function validateSchema(ecsSchema, credentialSubject) {
364
404
  * @throws Error if both the fetch and local fallback fail.
365
405
  */
366
406
  async function addDigestSRI(id, data, ecsSchemas) {
407
+ var _a;
367
408
  if (!id || !data) {
368
409
  throw new Error(`id and data has requiered`);
369
410
  }
370
- const response = await fetch((0, vs_agent_model_1.mapToEcosystem)(id));
411
+ const fetched = await fetchSchemaContent(id);
371
412
  const key = id.split('/').pop();
372
413
  const fallbackSchema = key && (ecsSchemas === null || ecsSchemas === void 0 ? void 0 : ecsSchemas[key]);
373
- const schemaContent = response.ok ? await response.text() : fallbackSchema;
414
+ const schemaContent = (_a = fetched.content) !== null && _a !== void 0 ? _a : fallbackSchema;
374
415
  if (!schemaContent) {
375
- throw new Error(`Failed to fetch schema from ${id}: ${response.status} ${response.statusText}, and no local fallback found.`);
416
+ throw new Error(`Failed to fetch schema from ${id}: ${fetched.error}, and no local fallback found.`);
376
417
  }
377
418
  assertValidSchema(schemaContent, id);
378
419
  return Object.assign(Object.assign({}, data), { digestSRI: generateDigestSRI(schemaContent) });
@@ -1 +1 @@
1
- {"version":3,"file":"setupSelfTr.js","sourceRoot":"","sources":["../../src/utils/setupSelfTr.ts"],"names":[],"mappings":";;;;;;AA2OA,4CAUC;AAyBD,8BA0BC;AAmBD,wEA2EC;AAED,gDAOC;AAaD,8BA0DC;AAMD,wCAcC;AAaD,oCAyBC;AA2BD,8CAGC;AAMD,oCAGC;AAED,0DAeC;AAxkBD,yCAcuB;AACvB,iDAAiD;AACjD,6DAA6D;AAC7D,kBAAkB;AAClB,6EAAgE;AAChE,gEAA4D;AAC5D,0DAAoD;AACpD,8DAAoC;AACpC,kDAAyB;AACzB,mCAAmC;AAInC,iCAAsC;AAEtC,MAAM,GAAG,GAAG,IAAI,eAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;AACtC,IAAA,qBAAU,EAAC,GAAG,CAAC,CAAA;AAEf,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAoBpC,UAAU;AACG,QAAA,aAAa,GAAG;IAC3B;QACE,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,4CAA4C;KACxD;IACD;QACE,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,wCAAwC;KACpD;CACF,CAAA;AAEY,QAAA,WAAW,GAAG;IACzB;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,gCAAgC;QACzC,SAAS,EAAE,4CAA4C;KACxD;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,4BAA4B;QACrC,SAAS,EAAE,wCAAwC;KACpD;CACF,CAAA;AAED,8BAA8B;AACjB,QAAA,gBAAgB,GAAwB;IACnD,EAAE,EAAE,uDAAuD;IAC3D,IAAI,EAAE,YAAY;CACnB,CAAA;AAEM,MAAM,oBAAoB,GAAG,CAAC,EAAU,EAAwB,EAAE,CAAC,CAAC;IACzE,EAAE;IACF,MAAM,EAAE;QACN,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,EAAE;SACT;KACF;CACF,CAAC,CAAA;AARW,QAAA,oBAAoB,wBAQ/B;AAEF,8CAA8C;AACvC,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAU,EAAE,CAC5D,eAAe,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAA;AAD3C,QAAA,gBAAgB,oBAC2B;AAEjD,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,gBAAwB,EAAU,EAAE,CAC3E,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,gBAAgB,KAAK,CAAC,CAAA;AADvC,QAAA,WAAW,eAC4B;AAEpD,MAAM,kBAAkB,GAAG,CAAC,IAA6B,EAAE,EAAE;IAC3D,OAAO,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAEM,MAAM,WAAW,GAAG,KAAK,EAAE,EAChC,KAAK,EACL,gBAAgB,EAChB,QAAQ,GAKT,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,IAAA,oBAAa,EAAC,gBAAgB,CAAC,CAAA;IAClD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAA;IAElC,KAAK,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,qBAAa,EAAE,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,8BAA8B,CAClC,KAAK,EACL,GAAG,gBAAgB,OAAO,IAAI,cAAc,EAC5C,UAAU,EACV,IAAI,EACJ,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,EACrD;gBACE,EAAE,EAAE,IAAA,mBAAW,EAAC,SAAS,EAAE,gBAAgB,CAAC;gBAC5C,IAAI,EAAE,sBAAsB;aAC7B,EACD,QAAQ,CACT,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,wBAAwB,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,mBAAW,EAAE,CAAC;QACvD,MAAM,EAAE,GAAG,IAAA,mBAAW,EAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;QACnD,MAAM,GAAG,GAAG,IAAA,mBAAW,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;QAClD,IAAI,CAAC;YACH,MAAM,4BAA4B,CAChC,KAAK,EACL,EAAE,EACF,UAAU,EACV,IAAI,EACJ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,EAChD,IAAA,4BAAoB,EAAC,GAAG,CAAC,EACzB,wBAAgB,EAChB,QAAQ,CACT,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,wBAAwB,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAjDY,QAAA,WAAW,eAiDvB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,UAAU,4BAA4B,CACzC,KAAc,EACd,EAAU,EACV,UAAkC,EAClC,SAAiB,EACjB,IAAc,EACd,OAA6B,EAC7B,gBAAqC,EACrC,QAAwB,EACxB,YAA8B;;IAE9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAA;IAClC,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IAEvE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IACjC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAE3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IACtF,CAAC;IACD,MAAM,aAAa,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAA;IAChF,MAAM,MAAM,GAAG,MAAA,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,mCAAI,EAAE,CAAA;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAU,CAAC,CAAA;IACnC,IAAI,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,MAAK,aAAa;QAAE,OAAO,QAAQ,CAAC,UAAU,CAAA;IAEzE,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;QAC1C,EAAE;QACF,IAAI;QACJ,MAAM,EAAE,KAAK,CAAC,GAAG;QACjB,iBAAiB,EAAE;YACjB,EAAE,EAAE,SAAS;YACb,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC;SAClF;KACF,CAAC,CAAA;IAEF,kBAAkB,CAAC,gBAAgB,GAAG,YAAY;QAChD,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,MAAM,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAA;IAEzE,0GAA0G;IAC1G,uBAAuB;IACvB,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAEvE,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,CAAA;IACzF,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC,oBAAoB,GAAG,CAAC,gBAAgB,CAAC,CAAA;QACtD,OAAO,MAAM,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,oBAAoB,CAAC,CAAA;IACnE,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,SAAU,CAAC,GAAG;YACnB,UAAU,EAAE,gBAAgB,CAAC,cAAc;YAC3C,sBAAsB,EAAE,EAAE;YAC1B,oBAAoB,EAAE,EAAE;YACxB,aAAa;SACd,CAAA;QACD,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACzC,MAAM,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,oBAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC7F,OAAO,gBAAgB,CAAC,cAAc,CAAA;IACxC,CAAC;AACH,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAsC;;IACrE,MAAA,OAAO,CAAC,OAAO,oCAAf,OAAO,CAAC,OAAO,GAAK;QAClB,wCAAwC;QACxC,+CAA+C;KAChD,EAAA;IAED,MAAA,OAAO,CAAC,YAAY,oCAApB,OAAO,CAAC,YAAY,GAAK,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAA;IACjD,MAAA,OAAO,CAAC,cAAc,oCAAtB,OAAO,CAAC,cAAc,GAAK,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,EAAA;IAE9F,OAAO,IAAI,oBAAa,CAAC,OAA+B,CAAC,CAAA;AAC3D,CAAC;AAyBM,KAAK,UAAU,SAAS,CAC7B,KAAc,EACd,GAAoC,EACpC,kBAA0B;IAE1B,MAAM,YAAY,GAAG,IAAI,4BAAQ,CAAC,qBAAqB,EAAE,CAAA;IAEzD,IAAI,GAAG,YAAY,oBAAa,EAAE,CAAC;QACjC,OAAO,MAAM,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;YAC/C,MAAM,EAAE,kBAAW,CAAC,KAAK;YACzB,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,sBAAsB;YACjC,kBAAkB;YAClB,YAAY;SACb,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,GAAG,YAAY,sBAAe,EAAE,CAAC;QACnC,OAAO,MAAM,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC;YACjD,MAAM,EAAE,kBAAW,CAAC,KAAK;YACzB,YAAY,EAAE,GAAG;YACjB,SAAS,EAAE,sBAAsB;YACjC,kBAAkB;YAClB,YAAY;SACb,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACI,KAAK,UAAU,8BAA8B,CAClD,KAAc,EACd,EAAU,EACV,UAAkC,EAClC,SAAiB,EACjB,IAAc,EACd,gBAAqC,EACrC,QAAwB;;IAExB,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAA;IACrD,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IACvE,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACzC,IAAI,CAAC,WAAW;QAAE,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IACvG,8DAA8D;IAC9D,MAAM,oBAAoB,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAA,wBAAgB,EAAC,SAAS,CAAC,EAAE,CAAA;IAC1E,MAAM,aAAa,GAAG,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAA;IAChF,MAAM,MAAM,GAAG,MAAA,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,mCAAI,EAAE,CAAA;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;IAC5C,IAAI,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,MAAK,aAAa,IAAI,QAAQ,CAAC,QAAQ;QAAE,OAAO,QAAQ,CAAC,sBAAsB,CAAA;IAE1G,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,EAAE;QACF,MAAM,EAAE,KAAK,CAAC,GAAG;QACjB,oBAAoB,EAAE,EAAE;KACzB,CAAC,CAAA;IACF,MAAM,sBAAsB,GAAG,MAAM,4BAA4B,CAC/D,KAAK,EACL,KAAK,CAAC,GAAG,EACT,UAAU,EACV,SAAS,EACT,IAAI,EACJ,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EACjB,gBAAgB,EAChB,QAAQ,EACR,YAAY,CACb,CAAA;IACD,qDAAqD;IACrD,WAAW,CAAC,OAAO,GAAG,MAAA,WAAW,CAAC,OAAO,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE;QACjD,IAAI,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAA;QACnD,IAAI,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,QAAQ,EAAE,CAAC;YAC3E,CAAC,CAAC,EAAE,GAAG,oBAAoB,CAAA;YAC3B,CAAC,CAAC,eAAe,GAAG,EAAE,CAAA;QACxB,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC,CAAC,CAAA;IACF,2FAA2F;IAC3F,0FAA0F;IAC1F,4DAA4D;IAC5D,IAAI,kBAAkB,GAAG,KAAK,CAAA;IAC9B,IAAI,CAAC,CAAA,MAAA,WAAW,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,oBAAoB,CAAC,CAAA,EAAE,CAAC;QACnE,WAAW,CAAC,OAAO,GAAG;YACpB,GAAG,CAAC,MAAA,WAAW,CAAC,OAAO,mCAAI,EAAE,CAAC;YAC9B,IAAI,yBAAkB,CAAC;gBACrB,EAAE,EAAE,oBAAoB;gBACxB,eAAe,EAAE,EAAE;gBACnB,IAAI,EAAE,8BAA8B;aACrC,CAAC;SACH,CAAA;QACD,kBAAkB,GAAG,IAAI,CAAA;IAC3B,CAAC;IACD,MAAM,UAAU,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;IACjE,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG;QAC5B,UAAU;QACV,sBAAsB;QACtB,oBAAoB;QACpB,aAAa;QACb,QAAQ,EAAE,IAAI;KACf,CAAA;IACD,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACzC,MAAM,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,oBAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC7F,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO,sBAAsB,CAAA;AAC/B,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAwC;;IACzE,MAAA,OAAO,CAAC,OAAO,oCAAf,OAAO,CAAC,OAAO,GAAK;QAClB,wCAAwC;QACxC,+CAA+C;KAChD,EAAA;IACD,MAAA,OAAO,CAAC,IAAI,oCAAZ,OAAO,CAAC,IAAI,GAAK,CAAC,wBAAwB,CAAC,EAAA;IAC3C,OAAO,IAAI,sBAAe,CAAC,OAAiC,CAAC,CAAA;AAC/D,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,SAAS,CAC7B,MAAc,EACd,UAAkC,EAClC,EAAE,EAAE,EAAE,MAAM,EAAwB,EACpC,SAAiB,EACjB,QAAwB;;IAExB,0BAA0B;IAC1B,MAAM,OAAO,GAAG,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAkB,mCAAI,QAAQ,CAAC,cAAc,CAAA;IACtE,MAAM,qBAAqB,GACzB,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,qBAAgC,mCAAI,QAAQ,CAAC,yBAAyB,CAAA;IACjF,MAAM,gBAAgB,GAAG,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAA2B,mCAAI,QAAQ,CAAC,oBAAoB,CAAA;IAC9F,MAAM;QACJ,SAAS,KAAK,aAAa;YACzB,CAAC,CAAC;gBACE,IAAI,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,QAAQ,CAAC,UAAU;gBACzC,IAAI,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,QAAQ,CAAC,WAAW;gBAC1C,WAAW,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,mCAAI,QAAQ,CAAC,kBAAkB;gBAC/D,OAAO;gBACP,aAAa,EACX,MAAA,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAwB,mCACjC,QAAQ,CAAC,oBAAoB,mCAC7B,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/B,kBAAkB,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,kBAAkB,mCAAI,QAAQ,CAAC,yBAAyB;gBACpF,qBAAqB;gBACrB,2BAA2B,EACzB,MAAA,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,2BAAsC,mCAC/C,QAAQ,CAAC,kCAAkC,mCAC3C,CAAC,MAAM,YAAY,CAAC,qBAAqB,CAAC,CAAC;gBAC7C,gBAAgB;gBAChB,sBAAsB,EACpB,MAAA,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,sBAAiC,mCAC1C,QAAQ,CAAC,6BAA6B,mCACtC,CAAC,MAAM,YAAY,CAAC,gBAAgB,CAAC,CAAC;aACzC;YACH,CAAC,CAAC;gBACE,IAAI,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,QAAQ,CAAC,UAAU;gBACzC,OAAO;gBACP,aAAa,EACX,MAAA,MAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAwB,mCACjC,QAAQ,CAAC,oBAAoB,mCAC7B,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/B,UAAU,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,mCAAI,QAAQ,CAAC,aAAa;gBACxD,WAAW,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,mCAAI,QAAQ,CAAC,cAAc;gBAC3D,OAAO,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,mCAAI,QAAQ,CAAC,UAAU;gBAC/C,gBAAgB,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,mCAAI,QAAQ,CAAC,mBAAmB;gBAC1E,WAAW,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,mCAAI,QAAQ,CAAC,cAAc;aAC5D,CAAA;IAEP,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;IACvC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,qDAAqD,SAAS,EAAE,CAAC,CAAA;IACnF,CAAC;IAED,MAAM,iBAAiB,mBAAK,EAAE,IAAK,MAAM,CAAE,CAAA;IAC3C,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC,CAAA;IAExD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,SAA0B,EAAE,iBAAsC;;IAC/F,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAA,SAAS,CAAC,UAAU,0CAAE,iBAAiB,CAAC,CAAA;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IAE3C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,YAAY,GAAG,MAAA,QAAQ,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,YAAY;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,MAAM,EAAE,CAAC,CAAC,MAAM;SACjB,CAAC,CAAC,CAAA;QAEH,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,CAAC,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;IAClG,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAChC,EAAW,EACX,IAAQ,EACR,UAAmC;IAEnC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAA,+BAAc,EAAC,EAAE,CAAC,CAAC,CAAA;IAChD,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;IAC/B,MAAM,cAAc,GAAG,GAAG,KAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,GAAG,CAAC,CAAA,CAAA;IAE/C,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAA;IAE1E,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,+BAA+B,EAAE,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,gCAAgC,CAC7G,CAAA;IACH,CAAC;IACD,iBAAiB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;IAEpC,uCACK,IAAI,KACP,SAAS,EAAE,iBAAiB,CAAC,aAAa,CAAC,IAC5C;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAqB,EAAE,EAAU;;IAC1D,IAAI,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,MAAA,MAAA,GAAG,CAAC,MAAM,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,mCAAI,0BAA0B,CAAA;YAEvF,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GACX,KAAK,YAAY,WAAW;YAC1B,CAAC,CAAC,qBAAqB;YACvB,CAAC,CAAC,KAAK,YAAY,KAAK;gBACtB,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,eAAe,CAAA;QAEvB,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,kBAAkB,OAAO,EAAE,CAAC,CAAA;IAC/D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,OAAe,EAAE,YAAoB,QAAQ;IAC7E,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACnE,OAAO,GAAG,SAAS,IAAI,IAAI,EAAE,CAAA;AAC/B,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,YAAY,CAAC,GAAW;IAC5C,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAA;IACxG,OAAO,UAAU,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAA;AAC7F,CAAC;AAED,SAAgB,uBAAuB,CAAC,MAAc,EAAE,SAAoB;;IAC1E,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,MAAA,MAAA,SAAS,CAAC,WAAW,0CAAE,kBAAkB,0CAAE,IAAI,CACxE,MAAM,CAAC,EAAE;;YACP,OAAA,CAAC,MAAM,CAAC,IAAI,KAAK,4BAA4B,IAAI,MAAM,CAAC,IAAI,KAAK,4BAA4B,CAAC;gBAC9F,MAAM,CAAC,EAAE,MAAK,MAAA,MAAA,SAAS,CAAC,WAAW,0CAAE,eAAe,0CAAG,CAAC,CAAC,CAAA,CAAA;SAAA,CAC5D,CAAA;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAA;QACpG,CAAC;QACD,OAAO,kBAAkB,CAAC,EAAE,CAAA;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;QAC5D,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"setupSelfTr.js","sourceRoot":"","sources":["../../src/utils/setupSelfTr.ts"],"names":[],"mappings":"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"}
@@ -18,5 +18,31 @@ export declare function removeTrustCredential(agent: VsAgent, publicApiBaseUrl:
18
18
  } | null>;
19
19
  export declare function removeStoredTrustCredential(agent: VsAgent, publicApiBaseUrl: string, credentialExchangeRecordId: string): Promise<string | undefined>;
20
20
  export declare function migrateVtjscServiceIds(agent: VsAgent): Promise<void>;
21
+ /**
22
+ * Takes the linked VPs of the given `_vt/jsc` entries out of the DID Document, publishing it once.
23
+ *
24
+ * The entries stay: `SelfTrController` serves them, and issued credentials name that URL in
25
+ * `credentialSchema.id`. Dropping one would 404 it and leave those credentials unverifiable.
26
+ */
27
+ export declare function detachVtjscPublications(agent: VsAgent, schemaRefs: readonly string[]): Promise<string[]>;
28
+ /**
29
+ * Puts a detached `_vt/jsc` entry back in the DID Document.
30
+ *
31
+ * The publication pass skips an entry whose digest still matches, so without this the agent would
32
+ * keep serving a VTJSC it never announces again.
33
+ */
34
+ export declare function reattachVtjscPublication(agent: VsAgent, schemaRef: string): Promise<boolean>;
21
35
  export declare function getTrustMetadata(didRecord: DidRecord, key: '_vt/vtc' | '_vt/jsc', schemaId?: string): any;
22
- export declare function rebindEcsCredentialSchema(agent: VsAgent, publicApiBaseUrl: string, schemaId: string, schemaKey: string, defaults: SelfTrDefaults): Promise<void>;
36
+ /**
37
+ * @param jsonSchemaCredentialId the VTJSC the Ecosystem published for this schema. Only the
38
+ * Ecosystem publishes it, so an agent that issues against another Corporation's Ecosystem must
39
+ * resolve it there — see resolveJsonSchemaCredentialId.
40
+ * @param issuerParticipantId this agent's ISSUER participant for the schema, which anchors the
41
+ * credential digest.
42
+ */
43
+ export declare function rebindEcsCredentialSchema(agent: VsAgent, publicApiBaseUrl: string, schemaId: string, schemaKey: string, defaults: SelfTrDefaults, jsonSchemaCredentialId: string, issuerParticipantId: number): Promise<void>;
44
+ /**
45
+ * Withdraws the ECS credentials anchored against `issuerParticipantId` and republishes the
46
+ * self-issued default in their place, which is what the next start would publish anyway.
47
+ */
48
+ export declare function withdrawSelfIssuedEcsCredentials(agent: VsAgent, publicApiBaseUrl: string, issuerParticipantId: number, defaults: SelfTrDefaults): Promise<string[]>;