@verana-labs/vs-agent-sdk 1.11.0-dev.8 → 1.11.0
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 +172 -0
- package/build/agent/VsAgent.d.ts +8 -2
- package/build/agent/VsAgent.js +121 -41
- package/build/agent/VsAgent.js.map +1 -1
- package/build/agent/createVsAgent.d.ts +2 -0
- package/build/agent/createVsAgent.js +1 -0
- package/build/agent/createVsAgent.js.map +1 -1
- package/build/agent/index.d.ts +2 -0
- package/build/agent/index.js +19 -0
- package/build/agent/index.js.map +1 -0
- package/build/blockchain/IndexerWebSocketService.d.ts +39 -0
- package/build/blockchain/IndexerWebSocketService.js +217 -0
- package/build/blockchain/IndexerWebSocketService.js.map +1 -0
- package/build/blockchain/VeranaChainService.d.ts +32 -0
- package/build/blockchain/VeranaChainService.js +124 -0
- package/build/blockchain/VeranaChainService.js.map +1 -0
- package/build/blockchain/VeranaHelpers.d.ts +4 -0
- package/build/blockchain/VeranaHelpers.js +29 -0
- package/build/blockchain/VeranaHelpers.js.map +1 -0
- package/build/blockchain/VeranaIndexerService.d.ts +11 -0
- package/build/blockchain/VeranaIndexerService.js +43 -0
- package/build/blockchain/VeranaIndexerService.js.map +1 -0
- package/build/blockchain/handlers/IndexerHandlerRegistry.d.ts +25 -0
- package/build/blockchain/handlers/IndexerHandlerRegistry.js +34 -0
- package/build/blockchain/handlers/IndexerHandlerRegistry.js.map +1 -0
- package/build/blockchain/handlers/defaultHandlers.d.ts +6 -0
- package/build/blockchain/handlers/defaultHandlers.js +126 -0
- package/build/blockchain/handlers/defaultHandlers.js.map +1 -0
- package/build/blockchain/handlers/index.d.ts +3 -0
- package/build/blockchain/handlers/index.js +20 -0
- package/build/blockchain/handlers/index.js.map +1 -0
- package/build/blockchain/handlers/stateMutations.d.ts +12 -0
- package/build/blockchain/handlers/stateMutations.js +113 -0
- package/build/blockchain/handlers/stateMutations.js.map +1 -0
- package/build/blockchain/index.d.ts +6 -0
- package/build/blockchain/index.js +23 -0
- package/build/blockchain/index.js.map +1 -0
- package/build/blockchain/types.d.ts +158 -0
- package/build/blockchain/types.js +6 -0
- package/build/blockchain/types.js.map +1 -0
- package/build/did/WebDidRegistrar.d.ts +3 -1
- package/build/did/WebDidRegistrar.js +10 -1
- package/build/did/WebDidRegistrar.js.map +1 -1
- package/build/did/migrateWebVhLog.d.ts +34 -0
- package/build/did/migrateWebVhLog.js +230 -0
- package/build/did/migrateWebVhLog.js.map +1 -0
- package/build/index.d.ts +4 -5
- package/build/index.js +5 -5
- package/build/index.js.map +1 -1
- package/build/plugins/setupBaseDidComm.d.ts +2 -0
- package/build/plugins/setupBaseDidComm.js +9 -1
- package/build/plugins/setupBaseDidComm.js.map +1 -1
- package/build/transports/VsAgentWsInboundTransport.js +1 -1
- package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
- package/build/utils/agent.d.ts +2 -1
- package/build/utils/agent.js +16 -10
- package/build/utils/agent.js.map +1 -1
- package/build/utils/setupSelfTr.d.ts +115 -0
- package/build/utils/setupSelfTr.js +452 -0
- package/build/utils/setupSelfTr.js.map +1 -0
- package/build/utils/trustCredentialStore.d.ts +18 -0
- package/build/utils/trustCredentialStore.js +196 -0
- package/build/utils/trustCredentialStore.js.map +1 -0
- package/package.json +18 -11
package/README.md
ADDED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# @verana-labs/vs-agent-sdk
|
|
2
|
+
|
|
3
|
+
Framework-agnostic Verifiable Service Agent SDK with DIDComm, AnonCreds, and blockchain integration.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @verana-labs/vs-agent-sdk @credo-ts/core @credo-ts/node
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Basic Usage
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { createVsAgent, setupBaseDidComm } from '@verana-labs/vs-agent-sdk'
|
|
15
|
+
import { getNodeHttpServer } from '@credo-ts/node'
|
|
16
|
+
|
|
17
|
+
const agent = createVsAgent({
|
|
18
|
+
plugins: [
|
|
19
|
+
setupBaseDidComm({
|
|
20
|
+
walletConfig: { dbPath: './wallet' },
|
|
21
|
+
publicApiBaseUrl: 'https://api.example.com',
|
|
22
|
+
endpoints: ['https://agent.example.com/didcomm'],
|
|
23
|
+
}),
|
|
24
|
+
],
|
|
25
|
+
label: 'My Agent',
|
|
26
|
+
publicApiBaseUrl: 'https://api.example.com',
|
|
27
|
+
dependencies: getNodeHttpServer(),
|
|
28
|
+
})
|
|
29
|
+
|
|
30
|
+
await agent.initialize()
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Indexer WebSocket
|
|
34
|
+
|
|
35
|
+
Stream blockchain events in real-time:
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
import { IndexerWebSocketService } from '@verana-labs/vs-agent-sdk'
|
|
39
|
+
|
|
40
|
+
const indexerWs = new IndexerWebSocketService({
|
|
41
|
+
indexerUrl: 'https://indexer.verana.io',
|
|
42
|
+
agent,
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
await indexerWs.start()
|
|
46
|
+
// Auto-reconnects with exponential backoff (max 5min)
|
|
47
|
+
// Persists last block height in agent storage
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Custom Handlers
|
|
51
|
+
|
|
52
|
+
Build default handlers or replace with your own:
|
|
53
|
+
|
|
54
|
+
```typescript
|
|
55
|
+
import { buildDefaultIndexerHandlerRegistry } from '@verana-labs/vs-agent-sdk'
|
|
56
|
+
|
|
57
|
+
const handlerRegistry = buildDefaultIndexerHandlerRegistry()
|
|
58
|
+
|
|
59
|
+
const indexerWs = new IndexerWebSocketService({
|
|
60
|
+
indexerUrl: 'https://indexer.example.com',
|
|
61
|
+
agent,
|
|
62
|
+
handlerRegistry,
|
|
63
|
+
})
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Override a specific handler:**
|
|
67
|
+
|
|
68
|
+
```typescript
|
|
69
|
+
import { buildDefaultIndexerHandlerRegistry } from '@verana-labs/vs-agent-sdk'
|
|
70
|
+
import type { IndexerActivity, IndexerDispatchContext } from '@verana-labs/vs-agent-sdk'
|
|
71
|
+
|
|
72
|
+
const registry = buildDefaultIndexerHandlerRegistry()
|
|
73
|
+
|
|
74
|
+
// Replace credential schema handler with custom logic
|
|
75
|
+
registry.register('CredentialSchema', async (activity: IndexerActivity, context: IndexerDispatchContext) => {
|
|
76
|
+
const { id, jsonSchema } = activity.changes as any
|
|
77
|
+
console.log(`Schema ${id} updated at block ${context.blockHeight}`)
|
|
78
|
+
|
|
79
|
+
// Sync to your database
|
|
80
|
+
await db.schemas.update(id, { schema: jsonSchema })
|
|
81
|
+
})
|
|
82
|
+
|
|
83
|
+
const indexerWs = new IndexerWebSocketService({
|
|
84
|
+
indexerUrl: 'https://indexer.example.com',
|
|
85
|
+
agent,
|
|
86
|
+
handlerRegistry: registry,
|
|
87
|
+
})
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Custom handlers from scratch:**
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
import { IndexerHandlerRegistry } from '@verana-labs/vs-agent-sdk'
|
|
94
|
+
import type { IndexerActivity, IndexerDispatchContext } from '@verana-labs/vs-agent-sdk'
|
|
95
|
+
|
|
96
|
+
const registry = new IndexerHandlerRegistry()
|
|
97
|
+
|
|
98
|
+
// Handle trust registry changes
|
|
99
|
+
registry.register('TrustRegistry', async (activity, context) => {
|
|
100
|
+
const { id, did, archived } = activity.changes as any
|
|
101
|
+
await agent.config.logger.info(`[Block ${context.blockHeight}] TR ${id} ${archived ? 'archived' : 'activated'}`)
|
|
102
|
+
})
|
|
103
|
+
|
|
104
|
+
// Handle permission changes with custom messages
|
|
105
|
+
registry.register('Permission', async (activity, context) => {
|
|
106
|
+
const { id, did, revoked } = activity.changes as any
|
|
107
|
+
const status = revoked ? 'revoked' : 'granted'
|
|
108
|
+
|
|
109
|
+
await agent.config.logger.info(`[Block ${context.blockHeight}] Permission ${status}: ${id}`)
|
|
110
|
+
|
|
111
|
+
// Emit to your service
|
|
112
|
+
await sendWebhookEvent('https://your-service.com/perms', {
|
|
113
|
+
type: 'permission_status_changed',
|
|
114
|
+
permissionId: id,
|
|
115
|
+
did,
|
|
116
|
+
status,
|
|
117
|
+
blockHeight: context.blockHeight,
|
|
118
|
+
timestamp: new Date().toISOString(),
|
|
119
|
+
})
|
|
120
|
+
})
|
|
121
|
+
|
|
122
|
+
const indexerWs = new IndexerWebSocketService({
|
|
123
|
+
indexerUrl: 'https://indexer.example.com',
|
|
124
|
+
agent,
|
|
125
|
+
handlerRegistry: registry,
|
|
126
|
+
})
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Blockchain Integration
|
|
130
|
+
|
|
131
|
+
```typescript
|
|
132
|
+
import { VeranaChainService } from '@verana-labs/vs-agent-sdk'
|
|
133
|
+
|
|
134
|
+
const chain = new VeranaChainService({
|
|
135
|
+
rpcUrl: 'https://rpc.verana.io',
|
|
136
|
+
chainId: 'verana-mainnet-1',
|
|
137
|
+
mnemonic: 'your wallet seed phrase...',
|
|
138
|
+
logger: agent.config.logger,
|
|
139
|
+
})
|
|
140
|
+
|
|
141
|
+
const agent = createVsAgent({
|
|
142
|
+
plugins: [...],
|
|
143
|
+
veranaChain: chain,
|
|
144
|
+
label: 'My Agent',
|
|
145
|
+
publicApiBaseUrl: 'https://api.example.com',
|
|
146
|
+
dependencies: getNodeHttpServer(),
|
|
147
|
+
})
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Utilities
|
|
151
|
+
|
|
152
|
+
```typescript
|
|
153
|
+
// DIDs
|
|
154
|
+
import { createInvitation, getWebDid } from '@verana-labs/vs-agent-sdk'
|
|
155
|
+
|
|
156
|
+
const did = await getWebDid(agent)
|
|
157
|
+
const invitation = await createInvitation(agent)
|
|
158
|
+
|
|
159
|
+
// Webhooks
|
|
160
|
+
import { sendWebhookEvent } from '@verana-labs/vs-agent-sdk'
|
|
161
|
+
|
|
162
|
+
await sendWebhookEvent('https://example.com/webhook', {
|
|
163
|
+
type: 'event_type',
|
|
164
|
+
data: { /* ... */ },
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
// Transports
|
|
168
|
+
import {
|
|
169
|
+
HttpInboundTransport,
|
|
170
|
+
VsAgentWsInboundTransport,
|
|
171
|
+
} from '@verana-labs/vs-agent-sdk'
|
|
172
|
+
```
|
package/build/agent/VsAgent.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { AnonCredsDidCommCredentialFormatService, AnonCredsModule, AnonCredsDidCommProofFormatService, LegacyIndyDidCommCredentialFormatService, LegacyIndyDidCommProofFormatService } from '@credo-ts/anoncreds';
|
|
2
2
|
import { AskarModule, AskarModuleConfigStoreOptions } from '@credo-ts/askar';
|
|
3
3
|
import { Agent, AgentDependencies, DidsModule, InitConfig, W3cCredentialsModule } from '@credo-ts/core';
|
|
4
|
-
import { DidCommCredentialsModuleConfigOptions, DidCommCredentialV2Protocol, DidCommModule, DidCommModuleConfigOptions, DidCommProofsModuleConfigOptions, DidCommProofV2Protocol } from '@credo-ts/didcomm';
|
|
4
|
+
import { DidCommCredentialsModuleConfigOptions, DidCommCredentialV2Protocol, DidCommJsonLdCredentialFormatService, DidCommModule, DidCommModuleConfigOptions, DidCommProofsModuleConfigOptions, DidCommProofV2Protocol } from '@credo-ts/didcomm';
|
|
5
|
+
import { VeranaChainService } from '../blockchain/VeranaChainService';
|
|
5
6
|
type VsAgentDidCommModule = DidCommModule<DidCommModuleConfigOptions & {
|
|
6
7
|
credentials: DidCommCredentialsModuleConfigOptions<[
|
|
7
8
|
DidCommCredentialV2Protocol<[
|
|
8
9
|
LegacyIndyDidCommCredentialFormatService,
|
|
9
|
-
AnonCredsDidCommCredentialFormatService
|
|
10
|
+
AnonCredsDidCommCredentialFormatService,
|
|
11
|
+
DidCommJsonLdCredentialFormatService
|
|
10
12
|
]>
|
|
11
13
|
]>;
|
|
12
14
|
proofs: DidCommProofsModuleConfigOptions<[
|
|
@@ -31,17 +33,21 @@ export declare class VsAgent<TModules extends BaseAgentModules = BaseAgentModule
|
|
|
31
33
|
publicApiBaseUrl: string;
|
|
32
34
|
displayPictureUrl?: string;
|
|
33
35
|
label: string;
|
|
36
|
+
veranaChain?: VeranaChainService;
|
|
34
37
|
constructor(options: AgentOptions<TModules> & {
|
|
35
38
|
did?: string;
|
|
36
39
|
autoDiscloseUserProfile?: boolean;
|
|
37
40
|
publicApiBaseUrl: string;
|
|
38
41
|
displayPictureUrl?: string;
|
|
39
42
|
label: string;
|
|
43
|
+
veranaChain?: VeranaChainService;
|
|
40
44
|
});
|
|
41
45
|
private get hasUserProfile();
|
|
42
46
|
initialize(): Promise<void>;
|
|
43
47
|
private findCreatedDid;
|
|
48
|
+
private findEd25519VerificationMethodId;
|
|
44
49
|
private getDidCommServices;
|
|
50
|
+
private persistDidDocumentKey;
|
|
45
51
|
private createAndAddDidCommKeysAndServices;
|
|
46
52
|
private createAndAddLinkedVpServices;
|
|
47
53
|
/**
|
package/build/agent/VsAgent.js
CHANGED
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VsAgent = void 0;
|
|
4
4
|
const core_1 = require("@credo-ts/core");
|
|
5
5
|
const didwebvh_ts_1 = require("didwebvh-ts");
|
|
6
|
+
const migrateWebVhLog_1 = require("../did/migrateWebVhLog");
|
|
7
|
+
const MANAGED_DIDCOMM_SERVICE_TYPES = [core_1.DidCommV1Service.type, core_1.NewDidCommV2Service.type];
|
|
6
8
|
class VsAgent extends core_1.Agent {
|
|
7
9
|
constructor(options) {
|
|
8
10
|
super(options);
|
|
@@ -11,12 +13,13 @@ class VsAgent extends core_1.Agent {
|
|
|
11
13
|
this.publicApiBaseUrl = options.publicApiBaseUrl;
|
|
12
14
|
this.displayPictureUrl = options.displayPictureUrl;
|
|
13
15
|
this.label = options.label;
|
|
16
|
+
this.veranaChain = options.veranaChain;
|
|
14
17
|
}
|
|
15
18
|
get hasUserProfile() {
|
|
16
19
|
return 'userProfile' in this.modules;
|
|
17
20
|
}
|
|
18
21
|
async initialize() {
|
|
19
|
-
var _a, _b, _c, _d, _e, _f;
|
|
22
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
20
23
|
await super.initialize();
|
|
21
24
|
if (this.hasUserProfile) {
|
|
22
25
|
// Make sure default User Profile corresponds to settings in environment variables
|
|
@@ -26,7 +29,7 @@ class VsAgent extends core_1.Agent {
|
|
|
26
29
|
await this.modules.userProfile.updateUserProfileData({
|
|
27
30
|
displayName: this.label,
|
|
28
31
|
displayPicture,
|
|
29
|
-
});
|
|
32
|
+
}); // TODO: Move this logic to the ChatPlugin
|
|
30
33
|
}
|
|
31
34
|
const parsedDid = this.did ? (0, core_1.parseDid)(this.did) : null;
|
|
32
35
|
if (parsedDid) {
|
|
@@ -39,7 +42,7 @@ class VsAgent extends core_1.Agent {
|
|
|
39
42
|
if (!existingRecord) {
|
|
40
43
|
if (parsedDid.method === 'web') {
|
|
41
44
|
const didDocument = new core_1.DidDocument({ id: parsedDid.did });
|
|
42
|
-
await this.createAndAddDidCommKeysAndServices(didDocument);
|
|
45
|
+
const didCommKey = await this.createAndAddDidCommKeysAndServices(didDocument);
|
|
43
46
|
// Add Self TR
|
|
44
47
|
await this.createAndAddLinkedVpServices(didDocument);
|
|
45
48
|
// Add AnonCreds Services
|
|
@@ -48,6 +51,7 @@ class VsAgent extends core_1.Agent {
|
|
|
48
51
|
method: 'web',
|
|
49
52
|
domain,
|
|
50
53
|
didDocument,
|
|
54
|
+
keys: [didCommKey],
|
|
51
55
|
});
|
|
52
56
|
this.did = parsedDid.did;
|
|
53
57
|
}
|
|
@@ -68,12 +72,15 @@ class VsAgent extends core_1.Agent {
|
|
|
68
72
|
process.exit(1);
|
|
69
73
|
}
|
|
70
74
|
// Add DIDComm services and keys
|
|
71
|
-
await this.createAndAddDidCommKeysAndServices(didDocument);
|
|
75
|
+
const didCommKey = await this.createAndAddDidCommKeysAndServices(didDocument);
|
|
72
76
|
// Add Linked VP services
|
|
73
77
|
await this.createAndAddLinkedVpServices(didDocument);
|
|
74
78
|
// Add implicit services
|
|
75
79
|
await this.createAndAddWebVhImplicitServices(didDocument);
|
|
76
80
|
didDocument.alsoKnownAs = [`did:web:${domain}`];
|
|
81
|
+
// The webvh registrar doesn't merge new keys into the DidRecord on update,
|
|
82
|
+
// so persist the DIDComm key mapping directly on the existing record.
|
|
83
|
+
await this.persistDidDocumentKey(publicDid, didCommKey);
|
|
77
84
|
const result = await this.dids.update({ did: publicDid, didDocument });
|
|
78
85
|
if (result.didState.state !== 'finished') {
|
|
79
86
|
this.logger.error(`Cannot update DID ${publicDid}`);
|
|
@@ -87,6 +94,20 @@ class VsAgent extends core_1.Agent {
|
|
|
87
94
|
}
|
|
88
95
|
return;
|
|
89
96
|
}
|
|
97
|
+
// If this is a did:webvh record, ensure the stored log is resolvable under the
|
|
98
|
+
// current didwebvh-ts version. Logs created with didwebvh-ts <2.7.4 used the
|
|
99
|
+
// SCID placeholder when computing the entry hash for entries beyond #1, which
|
|
100
|
+
// newer resolvers (correctly) reject as a broken hash chain. We rebuild the
|
|
101
|
+
// log in-place, preserving entry #1 (and therefore the SCID and the public DID).
|
|
102
|
+
if (parsedDid.method === 'webvh') {
|
|
103
|
+
try {
|
|
104
|
+
await (0, migrateWebVhLog_1.migrateWebVhLogIfBroken)(this.agentContext, existingRecord, this.logger);
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
this.logger.error(`Failed to migrate webvh DID log for ${existingRecord.did}: ${error instanceof Error ? error.message : String(error)}`);
|
|
108
|
+
throw error;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
90
111
|
// Make sure did:webvh record has the did:web form as an alternative, in order to support
|
|
91
112
|
// implicit invitations
|
|
92
113
|
if (parsedDid.method === 'webvh' &&
|
|
@@ -100,24 +121,43 @@ class VsAgent extends core_1.Agent {
|
|
|
100
121
|
// DIDComm endpoints, so we'll only replace the service (if different from previous)
|
|
101
122
|
const didDocument = existingRecord.didDocument;
|
|
102
123
|
const hasLegacyMethods = ((_d = didDocument.verificationMethod) !== null && _d !== void 0 ? _d : []).some(vm => ['Ed25519VerificationKey2018', 'X25519KeyAgreementKey2019'].includes(vm.type));
|
|
103
|
-
const
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
124
|
+
const ed25519VerificationMethodId = this.findEd25519VerificationMethodId(didDocument);
|
|
125
|
+
const servicesChanged = !ed25519VerificationMethodId ||
|
|
126
|
+
JSON.stringify(didDocument.didCommServices) !==
|
|
127
|
+
JSON.stringify(this.getDidCommServices(didDocument.id, ed25519VerificationMethodId));
|
|
128
|
+
// One-shot migration for did:webvh records published before authentication-replace
|
|
129
|
+
// landed, which still carry the didwebvh-ts update key in authentication.
|
|
130
|
+
const authHasUpdateKey = parsedDid.method === 'webvh' &&
|
|
131
|
+
!!ed25519VerificationMethodId &&
|
|
132
|
+
((_e = didDocument.authentication) !== null && _e !== void 0 ? _e : []).some(a => {
|
|
133
|
+
const id = typeof a === 'string' ? a : a.id;
|
|
134
|
+
return id !== ed25519VerificationMethodId;
|
|
135
|
+
});
|
|
136
|
+
if (hasLegacyMethods || servicesChanged || authHasUpdateKey) {
|
|
137
|
+
if (servicesChanged && ed25519VerificationMethodId) {
|
|
107
138
|
didDocument.service = [
|
|
108
139
|
...(didDocument.service
|
|
109
|
-
? didDocument.service.filter(service => !
|
|
140
|
+
? didDocument.service.filter(service => !MANAGED_DIDCOMM_SERVICE_TYPES.includes(service.type))
|
|
110
141
|
: []),
|
|
111
|
-
...this.getDidCommServices(didDocument.id),
|
|
142
|
+
...this.getDidCommServices(didDocument.id, ed25519VerificationMethodId),
|
|
112
143
|
];
|
|
113
144
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
145
|
+
const newKeys = [];
|
|
146
|
+
if (hasLegacyMethods) {
|
|
147
|
+
newKeys.push(await this.createAndAddDidCommKeysAndServices(didDocument));
|
|
148
|
+
}
|
|
149
|
+
if (authHasUpdateKey)
|
|
150
|
+
didDocument.authentication = [ed25519VerificationMethodId];
|
|
151
|
+
if (newKeys.length && parsedDid.method === 'webvh') {
|
|
152
|
+
// webvh registrar doesn't accept keys in update options; persist directly
|
|
153
|
+
for (const key of newKeys)
|
|
154
|
+
await this.persistDidDocumentKey(didDocument.id, key);
|
|
155
|
+
}
|
|
156
|
+
await this.dids.update(Object.assign({ did: didDocument.id, didDocument }, (newKeys.length && parsedDid.method === 'web' ? { keys: newKeys } : {})));
|
|
157
|
+
(_f = this.logger) === null || _f === void 0 ? void 0 : _f.debug('Public did record updated');
|
|
118
158
|
}
|
|
119
159
|
else {
|
|
120
|
-
(
|
|
160
|
+
(_g = this.logger) === null || _g === void 0 ? void 0 : _g.debug('Existing DID record found. No updates');
|
|
121
161
|
}
|
|
122
162
|
this.did = existingRecord.did;
|
|
123
163
|
}
|
|
@@ -131,21 +171,61 @@ class VsAgent extends core_1.Agent {
|
|
|
131
171
|
}
|
|
132
172
|
return await didRepository.findCreatedDid(this.context, parsedDid.did);
|
|
133
173
|
}
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
174
|
+
// Prefer Ed25519VerificationKey2020 over Multikey: webvh's update Multikey is not ours to use.
|
|
175
|
+
findEd25519VerificationMethodId(didDocument) {
|
|
176
|
+
var _a;
|
|
177
|
+
const vms = (_a = didDocument.verificationMethod) !== null && _a !== void 0 ? _a : [];
|
|
178
|
+
const preferred = vms.find(vm => vm.type === 'Ed25519VerificationKey2020');
|
|
179
|
+
if (preferred)
|
|
180
|
+
return preferred.id;
|
|
181
|
+
const fallback = vms.find(vm => vm.type === 'Ed25519VerificationKey2018' ||
|
|
182
|
+
(vm.type === 'Multikey' &&
|
|
183
|
+
typeof vm.publicKeyMultibase === 'string' &&
|
|
184
|
+
vm.publicKeyMultibase.startsWith('z6Mk')));
|
|
185
|
+
return fallback === null || fallback === void 0 ? void 0 : fallback.id;
|
|
186
|
+
}
|
|
187
|
+
getDidCommServices(publicDid, ed25519VerificationMethodId) {
|
|
188
|
+
const didcommVersions = this.didcomm.config.didcommVersions;
|
|
189
|
+
const includeV1 = didcommVersions.includes('v1');
|
|
190
|
+
const includeV2 = didcommVersions.includes('v2');
|
|
191
|
+
const services = [];
|
|
192
|
+
this.didcomm.config.endpoints.forEach((endpoint, index) => {
|
|
193
|
+
if (includeV1) {
|
|
194
|
+
services.push(new core_1.DidCommV1Service({
|
|
195
|
+
id: `${publicDid}#did-communication`,
|
|
196
|
+
serviceEndpoint: endpoint,
|
|
197
|
+
priority: index,
|
|
198
|
+
routingKeys: [], // TODO: Support mediation
|
|
199
|
+
recipientKeys: [ed25519VerificationMethodId],
|
|
200
|
+
accept: ['didcomm/aip2;env=rfc19'],
|
|
201
|
+
}));
|
|
202
|
+
}
|
|
203
|
+
if (includeV2) {
|
|
204
|
+
services.push(new core_1.NewDidCommV2Service({
|
|
205
|
+
id: `${publicDid}#didcomm-messaging-${index}`,
|
|
206
|
+
serviceEndpoint: new core_1.NewDidCommV2ServiceEndpoint({
|
|
207
|
+
uri: endpoint,
|
|
208
|
+
accept: ['didcomm/v2'],
|
|
209
|
+
}),
|
|
210
|
+
}));
|
|
211
|
+
}
|
|
145
212
|
});
|
|
213
|
+
return services;
|
|
214
|
+
}
|
|
215
|
+
async persistDidDocumentKey(did, key) {
|
|
216
|
+
var _a;
|
|
217
|
+
const didRepository = this.agentContext.resolve(core_1.DidRepository);
|
|
218
|
+
const [record] = await didRepository.findByQuery(this.agentContext, { did });
|
|
219
|
+
if (!record)
|
|
220
|
+
return;
|
|
221
|
+
const existing = (_a = record.keys) !== null && _a !== void 0 ? _a : [];
|
|
222
|
+
if (existing.some(k => k.didDocumentRelativeKeyId === key.didDocumentRelativeKeyId))
|
|
223
|
+
return;
|
|
224
|
+
record.keys = [...existing, key];
|
|
225
|
+
await didRepository.update(this.agentContext, record);
|
|
146
226
|
}
|
|
147
227
|
async createAndAddDidCommKeysAndServices(didDocument) {
|
|
148
|
-
var _a, _b, _c, _d, _e
|
|
228
|
+
var _a, _b, _c, _d, _e;
|
|
149
229
|
const publicDid = didDocument.id;
|
|
150
230
|
const context = [
|
|
151
231
|
'https://w3id.org/security/multikey/v1',
|
|
@@ -154,28 +234,25 @@ class VsAgent extends core_1.Agent {
|
|
|
154
234
|
];
|
|
155
235
|
const keyAgreementId = `${publicDid}#key-agreement-1`;
|
|
156
236
|
const kms = this.agentContext.resolve(core_1.Kms.KeyManagementApi);
|
|
157
|
-
const didRepository = this.agentContext.resolve(core_1.DidRepository);
|
|
158
237
|
// Create didcomm keys
|
|
159
238
|
const key = await kms.createKey({ type: { kty: 'OKP', crv: 'Ed25519' } });
|
|
160
239
|
const publicKeyBytes = core_1.Kms.PublicJwk.fromPublicJwk(key.publicJwk).publicKey.publicKey;
|
|
161
240
|
const publicKeyMultibase = (0, didwebvh_ts_1.multibaseEncode)(new Uint8Array([0xed, 0x01, ...publicKeyBytes]), didwebvh_ts_1.MultibaseEncoding.BASE58_BTC);
|
|
162
|
-
const
|
|
163
|
-
(_a = record.keys) === null || _a === void 0 ? void 0 : _a.push({
|
|
241
|
+
const didDocumentKey = {
|
|
164
242
|
kmsKeyId: key.keyId,
|
|
165
243
|
didDocumentRelativeKeyId: `#${publicKeyMultibase}`,
|
|
166
|
-
}
|
|
167
|
-
await didRepository.update(this.agentContext, record);
|
|
244
|
+
};
|
|
168
245
|
const verificationMethodId = `${publicDid}#${publicKeyMultibase}`;
|
|
169
246
|
const publicKeyX25519 = (0, core_1.convertPublicKeyToX25519)(publicKeyBytes);
|
|
170
247
|
const x25519Key = core_1.Kms.PublicJwk.fromPublicKey({ kty: 'OKP', crv: 'X25519', publicKey: publicKeyX25519 });
|
|
171
248
|
// Remove legacy if exist
|
|
172
249
|
const legacyContexts = ['https://w3id.org/security/suites/ed25519-2018/v1'];
|
|
173
|
-
const legacyAuthId = (
|
|
250
|
+
const legacyAuthId = (_b = ((_a = didDocument.verificationMethod) !== null && _a !== void 0 ? _a : []).find(vm => ['Ed25519VerificationKey2018'].includes(vm.type))) === null || _b === void 0 ? void 0 : _b.id;
|
|
174
251
|
if (legacyAuthId) {
|
|
175
|
-
didDocument.authentication = ((
|
|
176
|
-
didDocument.assertionMethod = ((
|
|
252
|
+
didDocument.authentication = ((_c = didDocument.authentication) !== null && _c !== void 0 ? _c : []).filter(id => id !== legacyAuthId);
|
|
253
|
+
didDocument.assertionMethod = ((_d = didDocument.assertionMethod) !== null && _d !== void 0 ? _d : []).filter(id => id !== legacyAuthId);
|
|
177
254
|
}
|
|
178
|
-
const filteredMethods = ((
|
|
255
|
+
const filteredMethods = ((_e = didDocument.verificationMethod) !== null && _e !== void 0 ? _e : []).filter(vm => !['Ed25519VerificationKey2018', 'X25519KeyAgreementKey2019'].includes(vm.type));
|
|
179
256
|
const verificationMethods = [
|
|
180
257
|
{
|
|
181
258
|
controller: publicDid,
|
|
@@ -193,7 +270,7 @@ class VsAgent extends core_1.Agent {
|
|
|
193
270
|
const authentication = verificationMethodId;
|
|
194
271
|
const assertionMethod = verificationMethodId;
|
|
195
272
|
const keyAgreement = keyAgreementId;
|
|
196
|
-
const didcommServices = this.getDidCommServices(publicDid);
|
|
273
|
+
const didcommServices = this.getDidCommServices(publicDid, verificationMethodId);
|
|
197
274
|
const currentContexts = Array.isArray(didDocument.context)
|
|
198
275
|
? didDocument.context
|
|
199
276
|
: didDocument.context
|
|
@@ -203,15 +280,18 @@ class VsAgent extends core_1.Agent {
|
|
|
203
280
|
...new Set([...currentContexts.filter(ctx => !legacyContexts.includes(ctx)), ...context]),
|
|
204
281
|
];
|
|
205
282
|
didDocument.verificationMethod = [...filteredMethods, ...verificationMethods];
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
didDocument.
|
|
283
|
+
// Replace (not merge): keeps did:webvh's update key out of DIDComm relations.
|
|
284
|
+
// Same pattern as didcomm-mediator/src/agent/DidCommMediatorAgent.ts.
|
|
285
|
+
didDocument.authentication = [authentication];
|
|
286
|
+
didDocument.assertionMethod = [assertionMethod];
|
|
287
|
+
didDocument.keyAgreement = [keyAgreement];
|
|
209
288
|
didDocument.service = [
|
|
210
289
|
...(didDocument.service
|
|
211
|
-
? didDocument.service.filter(service => !
|
|
290
|
+
? didDocument.service.filter(service => !MANAGED_DIDCOMM_SERVICE_TYPES.includes(service.type))
|
|
212
291
|
: []),
|
|
213
292
|
...didcommServices,
|
|
214
293
|
];
|
|
294
|
+
return didDocumentKey;
|
|
215
295
|
}
|
|
216
296
|
async createAndAddLinkedVpServices(didDocument) {
|
|
217
297
|
var _a, _b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VsAgent.js","sourceRoot":"","sources":["../../src/agent/VsAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VsAgent.js","sourceRoot":"","sources":["../../src/agent/VsAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AskarModuleConfigStoreOptions } from '@credo-ts/askar';
|
|
2
2
|
import { AgentDependencies, InitConfig, LogLevel } from '@credo-ts/core';
|
|
3
|
+
import { VeranaChainService } from '../blockchain/VeranaChainService';
|
|
3
4
|
import { Plugin } from '../types';
|
|
4
5
|
import { BaseAgentModules, VsAgent } from './VsAgent';
|
|
5
6
|
type MergePluginModules<T extends Plugin[]> = T extends [infer First, ...infer Rest] ? First extends {
|
|
@@ -20,6 +21,7 @@ export interface CreateVsAgentOptions<T extends Plugin[]> {
|
|
|
20
21
|
autoUpdateStorageOnStartup?: boolean;
|
|
21
22
|
dependencies: AgentDependencies;
|
|
22
23
|
logLevel?: LogLevel;
|
|
24
|
+
veranaChain?: VeranaChainService;
|
|
23
25
|
}
|
|
24
26
|
/**
|
|
25
27
|
* Creates a VsAgent from a set of composable plugins.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createVsAgent.js","sourceRoot":"","sources":["../../src/agent/createVsAgent.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"createVsAgent.js","sourceRoot":"","sources":["../../src/agent/createVsAgent.ts"],"names":[],"mappings":";;AA4DA,sCAsBC;AA5ED,uCAAqD;AA6BrD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,aAAa,CAC3B,OAAgC;IAEhC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,iCAAM,GAAG,GAAK,MAAM,CAAC,OAAO,EAAG,EAChD,EAA6B,CACV,CAAA;IAErB,OAAO,IAAI,iBAAO,CAAmB;QACnC,MAAM,kCACD,OAAO,CAAC,MAAM,KACjB,0BAA0B,EAAE,OAAO,CAAC,0BAA0B,GAC/D;QACD,OAAO,EAAE,aAAa;QACtB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;QACxD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./VsAgent"), exports);
|
|
18
|
+
__exportStar(require("./createVsAgent"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB;AACzB,kDAA+B"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { VsAgent } from '../agent/VsAgent';
|
|
2
|
+
import { IndexerHandlerRegistry } from './handlers/IndexerHandlerRegistry';
|
|
3
|
+
export interface IndexerWebSocketServiceOptions {
|
|
4
|
+
indexerUrl: string;
|
|
5
|
+
agent: VsAgent;
|
|
6
|
+
handlerRegistry?: IndexerHandlerRegistry;
|
|
7
|
+
}
|
|
8
|
+
export declare class IndexerWebSocketService {
|
|
9
|
+
private readonly options;
|
|
10
|
+
private ws;
|
|
11
|
+
private reconnectAttempt;
|
|
12
|
+
private stopped;
|
|
13
|
+
private syncing;
|
|
14
|
+
private IndexerEventRecords;
|
|
15
|
+
private readonly indexer;
|
|
16
|
+
private readonly handlerRegistry;
|
|
17
|
+
constructor(options: IndexerWebSocketServiceOptions);
|
|
18
|
+
start(): Promise<void>;
|
|
19
|
+
stop(): void;
|
|
20
|
+
private get logger();
|
|
21
|
+
/**
|
|
22
|
+
* Connects to the indexer WebSocket, performs an initial sync via REST (use /events endpoint because it returns historical events in a single request)
|
|
23
|
+
* Finally, processes pending events received during the initial sync.
|
|
24
|
+
*/
|
|
25
|
+
private connect;
|
|
26
|
+
private openWebSocket;
|
|
27
|
+
private syncRest;
|
|
28
|
+
private drainIndexerEventRecords;
|
|
29
|
+
private processBlock;
|
|
30
|
+
/**
|
|
31
|
+
* TODO: Once the indexer emits consistent event_id for create events, we can remove this workaround
|
|
32
|
+
*/
|
|
33
|
+
private resolveCreateActivity;
|
|
34
|
+
private fetchActivity;
|
|
35
|
+
private fetchEntity;
|
|
36
|
+
private applyChanges;
|
|
37
|
+
private scheduleReconnect;
|
|
38
|
+
private fetchInitialEvents;
|
|
39
|
+
}
|