@ajna-inc/openbadges 0.1.5 → 0.1.7
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/build/OpenBadgesModule.d.ts +2 -2
- package/build/OpenBadgesModule.js +10 -2
- package/build/OpenBadgesModule.js.map +1 -1
- package/build/api/OpenBadgesApi.d.ts +95 -6
- package/build/api/OpenBadgesApi.js +186 -1
- package/build/api/OpenBadgesApi.js.map +1 -1
- package/build/cryptosuites/EddsaRdfc2022.js +4 -4
- package/build/cryptosuites/EddsaRdfc2022.js.map +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.js +2 -0
- package/build/index.js.map +1 -1
- package/build/protocol/OpenBadgeProtocolEvents.d.ts +95 -0
- package/build/protocol/OpenBadgeProtocolEvents.js +16 -0
- package/build/protocol/OpenBadgeProtocolEvents.js.map +1 -0
- package/build/protocol/OpenBadgeProtocolService.d.ts +73 -0
- package/build/protocol/OpenBadgeProtocolService.js +274 -0
- package/build/protocol/OpenBadgeProtocolService.js.map +1 -0
- package/build/protocol/handlers/AckHandler.d.ts +9 -0
- package/build/protocol/handlers/AckHandler.js +30 -0
- package/build/protocol/handlers/AckHandler.js.map +1 -0
- package/build/protocol/handlers/CredentialHandler.d.ts +9 -0
- package/build/protocol/handlers/CredentialHandler.js +30 -0
- package/build/protocol/handlers/CredentialHandler.js.map +1 -0
- package/build/protocol/handlers/OfferHandler.d.ts +9 -0
- package/build/protocol/handlers/OfferHandler.js +30 -0
- package/build/protocol/handlers/OfferHandler.js.map +1 -0
- package/build/protocol/handlers/PresentationHandler.d.ts +9 -0
- package/build/protocol/handlers/PresentationHandler.js +30 -0
- package/build/protocol/handlers/PresentationHandler.js.map +1 -0
- package/build/protocol/handlers/RequestHandler.d.ts +9 -0
- package/build/protocol/handlers/RequestHandler.js +30 -0
- package/build/protocol/handlers/RequestHandler.js.map +1 -0
- package/build/protocol/handlers/RequestPresentationHandler.d.ts +9 -0
- package/build/protocol/handlers/RequestPresentationHandler.js +30 -0
- package/build/protocol/handlers/RequestPresentationHandler.js.map +1 -0
- package/build/protocol/handlers/VerificationResultHandler.d.ts +9 -0
- package/build/protocol/handlers/VerificationResultHandler.js +30 -0
- package/build/protocol/handlers/VerificationResultHandler.js.map +1 -0
- package/build/protocol/handlers/index.d.ts +7 -0
- package/build/protocol/handlers/index.js +24 -0
- package/build/protocol/handlers/index.js.map +1 -0
- package/build/protocol/index.d.ts +4 -0
- package/build/protocol/index.js +21 -0
- package/build/protocol/index.js.map +1 -0
- package/build/protocol/messages/AckMessage.d.ts +18 -0
- package/build/protocol/messages/AckMessage.js +46 -0
- package/build/protocol/messages/AckMessage.js.map +1 -0
- package/build/protocol/messages/CredentialMessage.d.ts +26 -0
- package/build/protocol/messages/CredentialMessage.js +72 -0
- package/build/protocol/messages/CredentialMessage.js.map +1 -0
- package/build/protocol/messages/OfferMessage.d.ts +21 -0
- package/build/protocol/messages/OfferMessage.js +59 -0
- package/build/protocol/messages/OfferMessage.js.map +1 -0
- package/build/protocol/messages/PresentationMessage.d.ts +26 -0
- package/build/protocol/messages/PresentationMessage.js +72 -0
- package/build/protocol/messages/PresentationMessage.js.map +1 -0
- package/build/protocol/messages/RequestMessage.d.ts +18 -0
- package/build/protocol/messages/RequestMessage.js +50 -0
- package/build/protocol/messages/RequestMessage.js.map +1 -0
- package/build/protocol/messages/RequestPresentationMessage.d.ts +16 -0
- package/build/protocol/messages/RequestPresentationMessage.js +45 -0
- package/build/protocol/messages/RequestPresentationMessage.js.map +1 -0
- package/build/protocol/messages/VerificationResultMessage.d.ts +19 -0
- package/build/protocol/messages/VerificationResultMessage.js +51 -0
- package/build/protocol/messages/VerificationResultMessage.js.map +1 -0
- package/build/protocol/messages/index.d.ts +7 -0
- package/build/protocol/messages/index.js +24 -0
- package/build/protocol/messages/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { AgentContext, DependencyManager, Module } from '@credo-ts/core';
|
|
1
|
+
import type { AgentContext, DependencyManager, FeatureRegistry, Module } from '@credo-ts/core';
|
|
2
2
|
import { OpenBadgesModuleConfig, OpenBadgesModuleConfigOptions } from './OpenBadgesModuleConfig';
|
|
3
3
|
import { OpenBadgesApi } from './api/OpenBadgesApi';
|
|
4
4
|
export declare class OpenBadgesModule implements Module {
|
|
5
5
|
readonly api: typeof OpenBadgesApi;
|
|
6
6
|
readonly config: OpenBadgesModuleConfig;
|
|
7
7
|
constructor(options: OpenBadgesModuleConfigOptions);
|
|
8
|
-
register(dependencyManager: DependencyManager): void;
|
|
8
|
+
register(dependencyManager: DependencyManager, featureRegistry: FeatureRegistry): void;
|
|
9
9
|
initialize(_agentContext: AgentContext): Promise<void>;
|
|
10
10
|
}
|
|
@@ -4,6 +4,7 @@ exports.OpenBadgesModule = void 0;
|
|
|
4
4
|
const core_1 = require("@credo-ts/core");
|
|
5
5
|
const OpenBadgesModuleConfig_1 = require("./OpenBadgesModuleConfig");
|
|
6
6
|
const OpenBadgesApi_1 = require("./api/OpenBadgesApi");
|
|
7
|
+
const OpenBadgeProtocolService_1 = require("./protocol/OpenBadgeProtocolService");
|
|
7
8
|
const OpenBadgeCredentialRepository_1 = require("./repository/OpenBadgeCredentialRepository");
|
|
8
9
|
const OpenBadgesProfileRepository_1 = require("./repository/OpenBadgesProfileRepository");
|
|
9
10
|
const OpenBadgesServiceDescriptionRepository_1 = require("./repository/OpenBadgesServiceDescriptionRepository");
|
|
@@ -35,7 +36,7 @@ class OpenBadgesModule {
|
|
|
35
36
|
this.api = OpenBadgesApi_1.OpenBadgesApi;
|
|
36
37
|
this.config = new OpenBadgesModuleConfig_1.OpenBadgesModuleConfig(options);
|
|
37
38
|
}
|
|
38
|
-
register(dependencyManager) {
|
|
39
|
+
register(dependencyManager, featureRegistry) {
|
|
39
40
|
dependencyManager.resolve(core_1.AgentConfig).logger.info('Registering OpenBadgesModule');
|
|
40
41
|
dependencyManager.registerInstance(OpenBadgesModuleConfig_1.OpenBadgesModuleConfig, this.config);
|
|
41
42
|
// Records/Repositories
|
|
@@ -66,9 +67,16 @@ class OpenBadgesModule {
|
|
|
66
67
|
dependencyManager.registerSingleton(ProofService_1.ProofService);
|
|
67
68
|
dependencyManager.registerSingleton(RevocationService_1.RevocationService);
|
|
68
69
|
dependencyManager.registerSingleton(AchievementValidator_1.AchievementValidator);
|
|
70
|
+
// Protocol Service
|
|
71
|
+
dependencyManager.registerSingleton(OpenBadgeProtocolService_1.OpenBadgeProtocolService);
|
|
72
|
+
// Register DIDComm protocol in feature registry
|
|
73
|
+
featureRegistry.register(new core_1.Protocol({
|
|
74
|
+
id: 'https://didcomm.org/openbadge/1.0',
|
|
75
|
+
roles: ['issuer', 'holder', 'verifier'],
|
|
76
|
+
}));
|
|
69
77
|
}
|
|
70
78
|
async initialize(_agentContext) {
|
|
71
|
-
//
|
|
79
|
+
// Handlers are registered by the API constructor (after agent init)
|
|
72
80
|
}
|
|
73
81
|
}
|
|
74
82
|
exports.OpenBadgesModule = OpenBadgesModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenBadgesModule.js","sourceRoot":"","sources":["../src/OpenBadgesModule.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"OpenBadgesModule.js","sourceRoot":"","sources":["../src/OpenBadgesModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,32 @@
|
|
|
1
|
-
import { AgentContext } from '@credo-ts/core';
|
|
1
|
+
import { AgentContext, ConnectionService, MessageSender } from '@credo-ts/core';
|
|
2
2
|
import { IssuerService } from '../services/IssuerService';
|
|
3
3
|
import { VerifyService, ConsumerService } from '../services';
|
|
4
4
|
import { KeyService } from '../services/KeyService';
|
|
5
5
|
import { OpenBadgeCredentialRepository } from '../repository/OpenBadgeCredentialRepository';
|
|
6
|
+
import { OpenBadgeCredentialRecord } from '../repository/OpenBadgeCredentialRecord';
|
|
6
7
|
import type { EndorsementCredentialInput } from '../models/EndorsementCredential';
|
|
7
8
|
import type { ClrCredentialInput } from '../models/ClrCredential';
|
|
9
|
+
import { OpenBadgeProtocolService } from '../protocol/OpenBadgeProtocolService';
|
|
8
10
|
export declare class OpenBadgesApi {
|
|
9
11
|
private readonly issuerService;
|
|
10
12
|
private readonly verifyService;
|
|
11
13
|
private readonly consumerService;
|
|
12
14
|
private readonly keys;
|
|
13
15
|
private readonly credentialRepository;
|
|
16
|
+
private readonly protocolService;
|
|
17
|
+
private readonly connectionService;
|
|
18
|
+
private readonly messageSender;
|
|
14
19
|
private readonly agentContext;
|
|
15
|
-
constructor(issuerService: IssuerService, verifyService: VerifyService, consumerService: ConsumerService, keys: KeyService, credentialRepository: OpenBadgeCredentialRepository, agentContext: AgentContext);
|
|
16
|
-
|
|
20
|
+
constructor(issuerService: IssuerService, verifyService: VerifyService, consumerService: ConsumerService, keys: KeyService, credentialRepository: OpenBadgeCredentialRepository, protocolService: OpenBadgeProtocolService, connectionService: ConnectionService, messageSender: MessageSender, agentContext: AgentContext);
|
|
21
|
+
onAgentReady: boolean;
|
|
22
|
+
issue(input: any): Promise<OpenBadgeCredentialRecord>;
|
|
17
23
|
/**
|
|
18
24
|
* Issues an EndorsementCredential - a third-party validation credential
|
|
19
25
|
*
|
|
20
26
|
* @param input - The endorsement credential input
|
|
21
27
|
* @returns The saved credential record
|
|
22
28
|
*/
|
|
23
|
-
issueEndorsement(input: EndorsementCredentialInput): Promise<
|
|
29
|
+
issueEndorsement(input: EndorsementCredentialInput): Promise<OpenBadgeCredentialRecord>;
|
|
24
30
|
verify(credentialOrJwt: unknown): Promise<{
|
|
25
31
|
isValidStructure: boolean;
|
|
26
32
|
issues: import("..").ValidationIssue[];
|
|
@@ -46,8 +52,8 @@ export declare class OpenBadgesApi {
|
|
|
46
52
|
* @param input - The CLR credential input
|
|
47
53
|
* @returns The saved credential record
|
|
48
54
|
*/
|
|
49
|
-
issueClr(input: ClrCredentialInput): Promise<
|
|
50
|
-
issueCredential(input: any): Promise<
|
|
55
|
+
issueClr(input: ClrCredentialInput): Promise<OpenBadgeCredentialRecord>;
|
|
56
|
+
issueCredential(input: any): Promise<OpenBadgeCredentialRecord>;
|
|
51
57
|
verifyCredential(credentialOrJwt: unknown): Promise<{
|
|
52
58
|
isValidStructure: boolean;
|
|
53
59
|
issues: import("..").ValidationIssue[];
|
|
@@ -56,4 +62,87 @@ export declare class OpenBadgesApi {
|
|
|
56
62
|
}>;
|
|
57
63
|
getAllCredentials(): Promise<unknown[]>;
|
|
58
64
|
getCredentialById(credentialId: string): Promise<{} | null>;
|
|
65
|
+
/**
|
|
66
|
+
* Holder requests a badge from an issuer
|
|
67
|
+
* @param connectionId - The connection ID to the issuer
|
|
68
|
+
* @param achievementName - The name of the badge to request
|
|
69
|
+
* @param options - Optional achievement type and comment
|
|
70
|
+
* @returns The thread ID of the request
|
|
71
|
+
*/
|
|
72
|
+
requestBadge(connectionId: string, achievementName: string, options?: {
|
|
73
|
+
achievementType?: string;
|
|
74
|
+
comment?: string;
|
|
75
|
+
}): Promise<string>;
|
|
76
|
+
/**
|
|
77
|
+
* Issuer offers a badge to a holder
|
|
78
|
+
* @param connectionId - The connection ID to the holder
|
|
79
|
+
* @param offer - The offer details
|
|
80
|
+
* @returns The thread ID of the offer
|
|
81
|
+
*/
|
|
82
|
+
offerBadge(connectionId: string, offer: {
|
|
83
|
+
achievementName: string;
|
|
84
|
+
description?: string;
|
|
85
|
+
imageUrl?: string;
|
|
86
|
+
comment?: string;
|
|
87
|
+
threadId?: string;
|
|
88
|
+
}): Promise<string>;
|
|
89
|
+
/**
|
|
90
|
+
* Issuer sends a signed credential to a holder
|
|
91
|
+
* Can be a response to a request/offer or a direct issue
|
|
92
|
+
* @param connectionId - The connection ID to the holder
|
|
93
|
+
* @param credentialInput - The credential input to sign and send
|
|
94
|
+
* @param options - Optional thread ID and comment
|
|
95
|
+
*/
|
|
96
|
+
sendCredential(connectionId: string, credentialInput: any, options?: {
|
|
97
|
+
threadId?: string;
|
|
98
|
+
comment?: string;
|
|
99
|
+
}): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* Holder acknowledges receipt of a credential
|
|
102
|
+
* @param connectionId - The connection ID to the issuer
|
|
103
|
+
* @param threadId - The thread ID of the credential exchange
|
|
104
|
+
* @param status - 'OK' or 'FAIL'
|
|
105
|
+
*/
|
|
106
|
+
acknowledgeCredential(connectionId: string, threadId: string, status?: 'OK' | 'FAIL'): Promise<void>;
|
|
107
|
+
/**
|
|
108
|
+
* Verifier requests a holder to present a credential
|
|
109
|
+
* @param connectionId - The connection ID to the holder
|
|
110
|
+
* @param options - Optional achievement name and comment
|
|
111
|
+
* @returns The thread ID of the request
|
|
112
|
+
*/
|
|
113
|
+
requestPresentation(connectionId: string, options?: {
|
|
114
|
+
achievementName?: string;
|
|
115
|
+
comment?: string;
|
|
116
|
+
}): Promise<string>;
|
|
117
|
+
/**
|
|
118
|
+
* Holder presents a credential to a verifier
|
|
119
|
+
* Can be a response to a request or holder-initiated
|
|
120
|
+
* @param connectionId - The connection ID to the verifier
|
|
121
|
+
* @param credentialRecordId - The ID of the OpenBadgeCredentialRecord in the wallet
|
|
122
|
+
* @param options - Optional thread ID and comment
|
|
123
|
+
*/
|
|
124
|
+
presentCredential(connectionId: string, credentialRecordId: string, options?: {
|
|
125
|
+
threadId?: string;
|
|
126
|
+
comment?: string;
|
|
127
|
+
}): Promise<void>;
|
|
128
|
+
/**
|
|
129
|
+
* Verifier sends verification result back to holder
|
|
130
|
+
* @param connectionId - The connection ID to the holder
|
|
131
|
+
* @param threadId - The thread ID of the presentation exchange
|
|
132
|
+
* @param verified - Whether the credential was verified
|
|
133
|
+
* @param error - Optional error message if verification failed
|
|
134
|
+
*/
|
|
135
|
+
sendVerificationResult(connectionId: string, threadId: string, verified: boolean, error?: string): Promise<void>;
|
|
136
|
+
/**
|
|
137
|
+
* Get all credential records from wallet
|
|
138
|
+
*/
|
|
139
|
+
getAllCredentialRecords(): Promise<OpenBadgeCredentialRecord[]>;
|
|
140
|
+
/**
|
|
141
|
+
* Get a credential record by its record ID
|
|
142
|
+
*/
|
|
143
|
+
getCredentialRecordById(id: string): Promise<OpenBadgeCredentialRecord>;
|
|
144
|
+
/**
|
|
145
|
+
* Find credential records by issuer DID
|
|
146
|
+
*/
|
|
147
|
+
findCredentialsByIssuer(issuerId: string): Promise<OpenBadgeCredentialRecord[]>;
|
|
59
148
|
}
|
|
@@ -18,14 +18,33 @@ const IssuerService_1 = require("../services/IssuerService");
|
|
|
18
18
|
const services_1 = require("../services");
|
|
19
19
|
const KeyService_1 = require("../services/KeyService");
|
|
20
20
|
const OpenBadgeCredentialRepository_1 = require("../repository/OpenBadgeCredentialRepository");
|
|
21
|
+
// Protocol imports
|
|
22
|
+
const OpenBadgeProtocolService_1 = require("../protocol/OpenBadgeProtocolService");
|
|
23
|
+
const handlers_1 = require("../protocol/handlers");
|
|
21
24
|
let OpenBadgesApi = class OpenBadgesApi {
|
|
22
|
-
constructor(issuerService, verifyService, consumerService, keys, credentialRepository, agentContext) {
|
|
25
|
+
constructor(issuerService, verifyService, consumerService, keys, credentialRepository, protocolService, connectionService, messageSender, agentContext) {
|
|
23
26
|
this.issuerService = issuerService;
|
|
24
27
|
this.verifyService = verifyService;
|
|
25
28
|
this.consumerService = consumerService;
|
|
26
29
|
this.keys = keys;
|
|
27
30
|
this.credentialRepository = credentialRepository;
|
|
31
|
+
this.protocolService = protocolService;
|
|
32
|
+
this.connectionService = connectionService;
|
|
33
|
+
this.messageSender = messageSender;
|
|
28
34
|
this.agentContext = agentContext;
|
|
35
|
+
// Register handlers at API construction time to ensure DI is ready
|
|
36
|
+
this.onAgentReady = (() => {
|
|
37
|
+
this.agentContext.dependencyManager.registerMessageHandlers([
|
|
38
|
+
new handlers_1.RequestHandler(this.protocolService),
|
|
39
|
+
new handlers_1.OfferHandler(this.protocolService),
|
|
40
|
+
new handlers_1.CredentialHandler(this.protocolService),
|
|
41
|
+
new handlers_1.AckHandler(this.protocolService),
|
|
42
|
+
new handlers_1.RequestPresentationHandler(this.protocolService),
|
|
43
|
+
new handlers_1.PresentationHandler(this.protocolService),
|
|
44
|
+
new handlers_1.VerificationResultHandler(this.protocolService),
|
|
45
|
+
]);
|
|
46
|
+
return true;
|
|
47
|
+
})();
|
|
29
48
|
}
|
|
30
49
|
async issue(input) {
|
|
31
50
|
console.log('[OB] OpenBadgesApi.issue() called');
|
|
@@ -86,17 +105,183 @@ let OpenBadgesApi = class OpenBadgesApi {
|
|
|
86
105
|
const record = await this.credentialRepository.findByCredentialId(this.agentContext, credentialId);
|
|
87
106
|
return record?.credential ?? null;
|
|
88
107
|
}
|
|
108
|
+
// ============================================================
|
|
109
|
+
// DIDCOMM ISSUANCE FLOW API METHODS
|
|
110
|
+
// ============================================================
|
|
111
|
+
/**
|
|
112
|
+
* Holder requests a badge from an issuer
|
|
113
|
+
* @param connectionId - The connection ID to the issuer
|
|
114
|
+
* @param achievementName - The name of the badge to request
|
|
115
|
+
* @param options - Optional achievement type and comment
|
|
116
|
+
* @returns The thread ID of the request
|
|
117
|
+
*/
|
|
118
|
+
async requestBadge(connectionId, achievementName, options) {
|
|
119
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
120
|
+
const message = this.protocolService.createRequest({
|
|
121
|
+
achievementName,
|
|
122
|
+
achievementType: options?.achievementType,
|
|
123
|
+
comment: options?.comment,
|
|
124
|
+
});
|
|
125
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
126
|
+
message,
|
|
127
|
+
connectionRecord: connection,
|
|
128
|
+
});
|
|
129
|
+
await this.messageSender.sendMessage(outbound);
|
|
130
|
+
return message.threadId;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Issuer offers a badge to a holder
|
|
134
|
+
* @param connectionId - The connection ID to the holder
|
|
135
|
+
* @param offer - The offer details
|
|
136
|
+
* @returns The thread ID of the offer
|
|
137
|
+
*/
|
|
138
|
+
async offerBadge(connectionId, offer) {
|
|
139
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
140
|
+
const message = this.protocolService.createOffer(offer);
|
|
141
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
142
|
+
message,
|
|
143
|
+
connectionRecord: connection,
|
|
144
|
+
});
|
|
145
|
+
await this.messageSender.sendMessage(outbound);
|
|
146
|
+
return message.threadId;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Issuer sends a signed credential to a holder
|
|
150
|
+
* Can be a response to a request/offer or a direct issue
|
|
151
|
+
* @param connectionId - The connection ID to the holder
|
|
152
|
+
* @param credentialInput - The credential input to sign and send
|
|
153
|
+
* @param options - Optional thread ID and comment
|
|
154
|
+
*/
|
|
155
|
+
async sendCredential(connectionId, credentialInput, options) {
|
|
156
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
157
|
+
// Issue the credential (uses existing IssuerService - signs with cryptosuite)
|
|
158
|
+
const record = await this.issuerService.issueCredential(this.agentContext, credentialInput);
|
|
159
|
+
// Send via DIDComm with credential JSON in attachment (unchanged!)
|
|
160
|
+
const message = this.protocolService.createCredential(record.credential, {
|
|
161
|
+
threadId: options?.threadId,
|
|
162
|
+
comment: options?.comment,
|
|
163
|
+
});
|
|
164
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
165
|
+
message,
|
|
166
|
+
connectionRecord: connection,
|
|
167
|
+
});
|
|
168
|
+
await this.messageSender.sendMessage(outbound);
|
|
169
|
+
console.log('[OB] Credential sent via DIDComm');
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Holder acknowledges receipt of a credential
|
|
173
|
+
* @param connectionId - The connection ID to the issuer
|
|
174
|
+
* @param threadId - The thread ID of the credential exchange
|
|
175
|
+
* @param status - 'OK' or 'FAIL'
|
|
176
|
+
*/
|
|
177
|
+
async acknowledgeCredential(connectionId, threadId, status = 'OK') {
|
|
178
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
179
|
+
const message = this.protocolService.createAck(threadId, status);
|
|
180
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
181
|
+
message,
|
|
182
|
+
connectionRecord: connection,
|
|
183
|
+
});
|
|
184
|
+
await this.messageSender.sendMessage(outbound);
|
|
185
|
+
}
|
|
186
|
+
// ============================================================
|
|
187
|
+
// DIDCOMM VERIFICATION FLOW API METHODS
|
|
188
|
+
// ============================================================
|
|
189
|
+
/**
|
|
190
|
+
* Verifier requests a holder to present a credential
|
|
191
|
+
* @param connectionId - The connection ID to the holder
|
|
192
|
+
* @param options - Optional achievement name and comment
|
|
193
|
+
* @returns The thread ID of the request
|
|
194
|
+
*/
|
|
195
|
+
async requestPresentation(connectionId, options) {
|
|
196
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
197
|
+
const message = this.protocolService.createRequestPresentation(options);
|
|
198
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
199
|
+
message,
|
|
200
|
+
connectionRecord: connection,
|
|
201
|
+
});
|
|
202
|
+
await this.messageSender.sendMessage(outbound);
|
|
203
|
+
return message.threadId;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Holder presents a credential to a verifier
|
|
207
|
+
* Can be a response to a request or holder-initiated
|
|
208
|
+
* @param connectionId - The connection ID to the verifier
|
|
209
|
+
* @param credentialRecordId - The ID of the OpenBadgeCredentialRecord in the wallet
|
|
210
|
+
* @param options - Optional thread ID and comment
|
|
211
|
+
*/
|
|
212
|
+
async presentCredential(connectionId, credentialRecordId, options) {
|
|
213
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
214
|
+
// Get credential from wallet
|
|
215
|
+
const record = await this.credentialRepository.getById(this.agentContext, credentialRecordId);
|
|
216
|
+
if (!record.credential) {
|
|
217
|
+
throw new Error('Credential not found in record');
|
|
218
|
+
}
|
|
219
|
+
// Send the EXACT credential JSON (unchanged!) in attachment
|
|
220
|
+
const message = this.protocolService.createPresentation(record.credential, {
|
|
221
|
+
threadId: options?.threadId,
|
|
222
|
+
comment: options?.comment,
|
|
223
|
+
});
|
|
224
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
225
|
+
message,
|
|
226
|
+
connectionRecord: connection,
|
|
227
|
+
});
|
|
228
|
+
await this.messageSender.sendMessage(outbound);
|
|
229
|
+
console.log('[OB] Credential presented via DIDComm');
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Verifier sends verification result back to holder
|
|
233
|
+
* @param connectionId - The connection ID to the holder
|
|
234
|
+
* @param threadId - The thread ID of the presentation exchange
|
|
235
|
+
* @param verified - Whether the credential was verified
|
|
236
|
+
* @param error - Optional error message if verification failed
|
|
237
|
+
*/
|
|
238
|
+
async sendVerificationResult(connectionId, threadId, verified, error) {
|
|
239
|
+
const connection = await this.connectionService.getById(this.agentContext, connectionId);
|
|
240
|
+
const message = this.protocolService.createVerificationResult(threadId, verified, error);
|
|
241
|
+
const outbound = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
242
|
+
message,
|
|
243
|
+
connectionRecord: connection,
|
|
244
|
+
});
|
|
245
|
+
await this.messageSender.sendMessage(outbound);
|
|
246
|
+
}
|
|
247
|
+
// ============================================================
|
|
248
|
+
// WALLET ACCESS METHODS
|
|
249
|
+
// ============================================================
|
|
250
|
+
/**
|
|
251
|
+
* Get all credential records from wallet
|
|
252
|
+
*/
|
|
253
|
+
async getAllCredentialRecords() {
|
|
254
|
+
return this.credentialRepository.getAll(this.agentContext);
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Get a credential record by its record ID
|
|
258
|
+
*/
|
|
259
|
+
async getCredentialRecordById(id) {
|
|
260
|
+
return this.credentialRepository.getById(this.agentContext, id);
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Find credential records by issuer DID
|
|
264
|
+
*/
|
|
265
|
+
async findCredentialsByIssuer(issuerId) {
|
|
266
|
+
return this.credentialRepository.findByQuery(this.agentContext, { issuerId });
|
|
267
|
+
}
|
|
89
268
|
};
|
|
90
269
|
exports.OpenBadgesApi = OpenBadgesApi;
|
|
91
270
|
exports.OpenBadgesApi = OpenBadgesApi = __decorate([
|
|
92
271
|
(0, core_1.injectable)(),
|
|
93
272
|
__param(3, (0, core_1.inject)(KeyService_1.KeyService)),
|
|
94
273
|
__param(4, (0, core_1.inject)(OpenBadgeCredentialRepository_1.OpenBadgeCredentialRepository)),
|
|
274
|
+
__param(5, (0, core_1.inject)(OpenBadgeProtocolService_1.OpenBadgeProtocolService)),
|
|
275
|
+
__param(6, (0, core_1.inject)(core_1.ConnectionService)),
|
|
276
|
+
__param(7, (0, core_1.inject)(core_1.MessageSender)),
|
|
95
277
|
__metadata("design:paramtypes", [IssuerService_1.IssuerService,
|
|
96
278
|
services_1.VerifyService,
|
|
97
279
|
services_1.ConsumerService,
|
|
98
280
|
KeyService_1.KeyService,
|
|
99
281
|
OpenBadgeCredentialRepository_1.OpenBadgeCredentialRepository,
|
|
282
|
+
OpenBadgeProtocolService_1.OpenBadgeProtocolService,
|
|
283
|
+
core_1.ConnectionService,
|
|
284
|
+
core_1.MessageSender,
|
|
100
285
|
core_1.AgentContext])
|
|
101
286
|
], OpenBadgesApi);
|
|
102
287
|
//# sourceMappingURL=OpenBadgesApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenBadgesApi.js","sourceRoot":"","sources":["../../src/api/OpenBadgesApi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"OpenBadgesApi.js","sourceRoot":"","sources":["../../src/api/OpenBadgesApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -136,10 +136,10 @@ class EddsaRdfc2022Cryptosuite {
|
|
|
136
136
|
...proofOptions,
|
|
137
137
|
proofValue,
|
|
138
138
|
};
|
|
139
|
-
// Return document with proof
|
|
139
|
+
// Return document with proof as array (Credly-compatible)
|
|
140
140
|
return {
|
|
141
141
|
...document,
|
|
142
|
-
proof,
|
|
142
|
+
proof: [proof],
|
|
143
143
|
};
|
|
144
144
|
}
|
|
145
145
|
/**
|
|
@@ -177,10 +177,10 @@ class EddsaRdfc2022Cryptosuite {
|
|
|
177
177
|
...proofOptions,
|
|
178
178
|
proofValue,
|
|
179
179
|
};
|
|
180
|
-
// Return document with proof
|
|
180
|
+
// Return document with proof as array (Credly-compatible)
|
|
181
181
|
return {
|
|
182
182
|
...document,
|
|
183
|
-
proof,
|
|
183
|
+
proof: [proof],
|
|
184
184
|
};
|
|
185
185
|
}
|
|
186
186
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EddsaRdfc2022.js","sourceRoot":"","sources":["../../src/cryptosuites/EddsaRdfc2022.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EddsaRdfc2022.js","sourceRoot":"","sources":["../../src/cryptosuites/EddsaRdfc2022.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
package/build/index.js
CHANGED
|
@@ -66,6 +66,8 @@ __exportStar(require("./services/crypto/JwtCryptoDriver"), exports);
|
|
|
66
66
|
__exportStar(require("./http/OpenBadgesHttpModule"), exports);
|
|
67
67
|
__exportStar(require("./http/OpenBadgesHttpModuleConfig"), exports);
|
|
68
68
|
__exportStar(require("./http/router"), exports);
|
|
69
|
+
// DIDComm Protocol
|
|
70
|
+
__exportStar(require("./protocol"), exports);
|
|
69
71
|
// Utils
|
|
70
72
|
__exportStar(require("./utils/validate"), exports);
|
|
71
73
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mCAAmC;AACnC,qDAAkC;AAClC,2DAAwC;AACxC,8CAA2B;AAE3B,4BAA4B;AAC5B,2CAAwB;AAExB,6CAA6C;AAC7C,iDAA8B;AAE9B,MAAM;AACN,sDAAmC;AAEnC,uBAAuB;AACvB,yEAAsD;AACtD,6EAA0D;AAC1D,uEAAoD;AACpD,2EAAwD;AACxD,kFAA+D;AAC/D,sFAAmE;AACnE,qEAAkD;AAClD,yEAAsD;AACtD,+EAA4D;AAC5D,mFAAgE;AAChE,wEAAqD;AACrD,4EAAyD;AACzD,qEAAkD;AAClD,yEAAsD;AACtD,uEAAoD;AACpD,2EAAwD;AACxD,0EAAuD;AACvD,8EAA2D;AAC3D,gEAA6C;AAC7C,oEAAiD;AAEjD,WAAW;AACX,2DAAwC;AACxC,2DAAwC;AACxC,6DAA0C;AAC1C,yDAAsC;AACtC,gEAA6C;AAC7C,2DAAwC;AACxC,+DAA4C;AAC5C,wDAAqC;AACrC,0DAAuC;AACvC,wDAAqC;AACrC,4DAAyC;AACzC,kEAA+C;AAC/C,kEAA+C;AAC/C,iEAA8C;AAC9C,uEAAoD;AACpD,oEAAiD;AAEjD,cAAc;AACd,8DAA2C;AAC3C,oEAAiD;AACjD,gDAA6B;AAE7B,QAAQ;AACR,mDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mCAAmC;AACnC,qDAAkC;AAClC,2DAAwC;AACxC,8CAA2B;AAE3B,4BAA4B;AAC5B,2CAAwB;AAExB,6CAA6C;AAC7C,iDAA8B;AAE9B,MAAM;AACN,sDAAmC;AAEnC,uBAAuB;AACvB,yEAAsD;AACtD,6EAA0D;AAC1D,uEAAoD;AACpD,2EAAwD;AACxD,kFAA+D;AAC/D,sFAAmE;AACnE,qEAAkD;AAClD,yEAAsD;AACtD,+EAA4D;AAC5D,mFAAgE;AAChE,wEAAqD;AACrD,4EAAyD;AACzD,qEAAkD;AAClD,yEAAsD;AACtD,uEAAoD;AACpD,2EAAwD;AACxD,0EAAuD;AACvD,8EAA2D;AAC3D,gEAA6C;AAC7C,oEAAiD;AAEjD,WAAW;AACX,2DAAwC;AACxC,2DAAwC;AACxC,6DAA0C;AAC1C,yDAAsC;AACtC,gEAA6C;AAC7C,2DAAwC;AACxC,+DAA4C;AAC5C,wDAAqC;AACrC,0DAAuC;AACvC,wDAAqC;AACrC,4DAAyC;AACzC,kEAA+C;AAC/C,kEAA+C;AAC/C,iEAA8C;AAC9C,uEAAoD;AACpD,oEAAiD;AAEjD,cAAc;AACd,8DAA2C;AAC3C,oEAAiD;AACjD,gDAA6B;AAE7B,mBAAmB;AACnB,6CAA0B;AAE1B,QAAQ;AACR,mDAAgC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
export declare enum OpenBadgeProtocolEventTypes {
|
|
2
|
+
RequestReceived = "OpenBadgeProtocol.RequestReceived",
|
|
3
|
+
OfferReceived = "OpenBadgeProtocol.OfferReceived",
|
|
4
|
+
CredentialReceived = "OpenBadgeProtocol.CredentialReceived",
|
|
5
|
+
AckReceived = "OpenBadgeProtocol.AckReceived",
|
|
6
|
+
RequestPresentationReceived = "OpenBadgeProtocol.RequestPresentationReceived",
|
|
7
|
+
PresentationReceived = "OpenBadgeProtocol.PresentationReceived",
|
|
8
|
+
VerificationResultReceived = "OpenBadgeProtocol.VerificationResultReceived"
|
|
9
|
+
}
|
|
10
|
+
export interface RequestReceivedEventPayload {
|
|
11
|
+
connectionId?: string;
|
|
12
|
+
threadId: string;
|
|
13
|
+
achievementName: string;
|
|
14
|
+
achievementType?: string;
|
|
15
|
+
comment?: string;
|
|
16
|
+
[key: string]: unknown;
|
|
17
|
+
}
|
|
18
|
+
export interface OfferReceivedEventPayload {
|
|
19
|
+
connectionId?: string;
|
|
20
|
+
threadId: string;
|
|
21
|
+
achievementName: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
imageUrl?: string;
|
|
24
|
+
comment?: string;
|
|
25
|
+
[key: string]: unknown;
|
|
26
|
+
}
|
|
27
|
+
export interface CredentialReceivedEventPayload {
|
|
28
|
+
connectionId?: string;
|
|
29
|
+
threadId: string;
|
|
30
|
+
credentialRecordId: string;
|
|
31
|
+
verified: boolean;
|
|
32
|
+
status: 'valid' | 'revoked' | 'expired' | 'unknown';
|
|
33
|
+
credential?: Record<string, unknown>;
|
|
34
|
+
[key: string]: unknown;
|
|
35
|
+
}
|
|
36
|
+
export interface AckReceivedEventPayload {
|
|
37
|
+
connectionId?: string;
|
|
38
|
+
threadId: string;
|
|
39
|
+
status: 'OK' | 'FAIL';
|
|
40
|
+
comment?: string;
|
|
41
|
+
[key: string]: unknown;
|
|
42
|
+
}
|
|
43
|
+
export interface RequestPresentationReceivedEventPayload {
|
|
44
|
+
connectionId?: string;
|
|
45
|
+
threadId: string;
|
|
46
|
+
achievementName?: string;
|
|
47
|
+
comment?: string;
|
|
48
|
+
[key: string]: unknown;
|
|
49
|
+
}
|
|
50
|
+
export interface PresentationReceivedEventPayload {
|
|
51
|
+
connectionId?: string;
|
|
52
|
+
threadId: string;
|
|
53
|
+
credential: Record<string, unknown> | null;
|
|
54
|
+
verified: boolean;
|
|
55
|
+
status: string;
|
|
56
|
+
error?: string;
|
|
57
|
+
[key: string]: unknown;
|
|
58
|
+
}
|
|
59
|
+
export interface VerificationResultReceivedEventPayload {
|
|
60
|
+
connectionId?: string;
|
|
61
|
+
threadId: string;
|
|
62
|
+
verified: boolean;
|
|
63
|
+
error?: string;
|
|
64
|
+
comment?: string;
|
|
65
|
+
[key: string]: unknown;
|
|
66
|
+
}
|
|
67
|
+
export interface RequestReceivedEvent {
|
|
68
|
+
type: typeof OpenBadgeProtocolEventTypes.RequestReceived;
|
|
69
|
+
payload: RequestReceivedEventPayload;
|
|
70
|
+
}
|
|
71
|
+
export interface OfferReceivedEvent {
|
|
72
|
+
type: typeof OpenBadgeProtocolEventTypes.OfferReceived;
|
|
73
|
+
payload: OfferReceivedEventPayload;
|
|
74
|
+
}
|
|
75
|
+
export interface CredentialReceivedEvent {
|
|
76
|
+
type: typeof OpenBadgeProtocolEventTypes.CredentialReceived;
|
|
77
|
+
payload: CredentialReceivedEventPayload;
|
|
78
|
+
}
|
|
79
|
+
export interface AckReceivedEvent {
|
|
80
|
+
type: typeof OpenBadgeProtocolEventTypes.AckReceived;
|
|
81
|
+
payload: AckReceivedEventPayload;
|
|
82
|
+
}
|
|
83
|
+
export interface RequestPresentationReceivedEvent {
|
|
84
|
+
type: typeof OpenBadgeProtocolEventTypes.RequestPresentationReceived;
|
|
85
|
+
payload: RequestPresentationReceivedEventPayload;
|
|
86
|
+
}
|
|
87
|
+
export interface PresentationReceivedEvent {
|
|
88
|
+
type: typeof OpenBadgeProtocolEventTypes.PresentationReceived;
|
|
89
|
+
payload: PresentationReceivedEventPayload;
|
|
90
|
+
}
|
|
91
|
+
export interface VerificationResultReceivedEvent {
|
|
92
|
+
type: typeof OpenBadgeProtocolEventTypes.VerificationResultReceived;
|
|
93
|
+
payload: VerificationResultReceivedEventPayload;
|
|
94
|
+
}
|
|
95
|
+
export type OpenBadgeProtocolEvent = RequestReceivedEvent | OfferReceivedEvent | CredentialReceivedEvent | AckReceivedEvent | RequestPresentationReceivedEvent | PresentationReceivedEvent | VerificationResultReceivedEvent;
|