@cheqd/studio 3.16.0-develop.9 → 3.16.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/dist/app.d.ts.map +1 -1
- package/dist/app.js +11 -0
- package/dist/app.js.map +1 -1
- package/dist/controllers/api/accreditation.js +1 -1
- package/dist/controllers/api/accreditation.js.map +1 -1
- package/dist/controllers/api/credential.d.ts +1 -1
- package/dist/controllers/api/credential.d.ts.map +1 -1
- package/dist/controllers/api/credential.js +2 -1
- package/dist/controllers/api/credential.js.map +1 -1
- package/dist/controllers/api/received-credential.d.ts +375 -0
- package/dist/controllers/api/received-credential.d.ts.map +1 -0
- package/dist/controllers/api/received-credential.js +650 -0
- package/dist/controllers/api/received-credential.js.map +1 -0
- package/dist/database/entities/issued-credential.entity.d.ts +18 -2
- package/dist/database/entities/issued-credential.entity.d.ts.map +1 -1
- package/dist/database/entities/issued-credential.entity.js +29 -0
- package/dist/database/entities/issued-credential.entity.js.map +1 -1
- package/dist/database/migrations/1766408271347-studio-migrations.d.ts +7 -0
- package/dist/database/migrations/1766408271347-studio-migrations.d.ts.map +1 -0
- package/dist/database/migrations/1766408271347-studio-migrations.js +16 -0
- package/dist/database/migrations/1766408271347-studio-migrations.js.map +1 -0
- package/dist/database/types/types.d.ts.map +1 -1
- package/dist/database/types/types.js +2 -0
- package/dist/database/types/types.js.map +1 -1
- package/dist/middleware/auth/routes/api/credential-auth.d.ts.map +1 -1
- package/dist/middleware/auth/routes/api/credential-auth.js +12 -0
- package/dist/middleware/auth/routes/api/credential-auth.js.map +1 -1
- package/dist/services/api/accreditation.d.ts.map +1 -1
- package/dist/services/api/accreditation.js +8 -1
- package/dist/services/api/accreditation.js.map +1 -1
- package/dist/services/api/credentials.d.ts.map +1 -1
- package/dist/services/api/credentials.js +38 -6
- package/dist/services/api/credentials.js.map +1 -1
- package/dist/services/api/received-credentials.d.ts +129 -0
- package/dist/services/api/received-credentials.d.ts.map +1 -0
- package/dist/services/api/received-credentials.js +498 -0
- package/dist/services/api/received-credentials.js.map +1 -0
- package/dist/services/identity/abstract.d.ts +4 -0
- package/dist/services/identity/abstract.d.ts.map +1 -1
- package/dist/services/identity/abstract.js +12 -0
- package/dist/services/identity/abstract.js.map +1 -1
- package/dist/services/identity/index.d.ts +22 -0
- package/dist/services/identity/index.d.ts.map +1 -1
- package/dist/services/identity/index.js.map +1 -1
- package/dist/services/identity/providers/studio/agent.d.ts +15 -0
- package/dist/services/identity/providers/studio/agent.d.ts.map +1 -1
- package/dist/services/identity/providers/studio/agent.js +51 -9
- package/dist/services/identity/providers/studio/agent.js.map +1 -1
- package/dist/services/identity/providers/studio/local.d.ts +4 -0
- package/dist/services/identity/providers/studio/local.d.ts.map +1 -1
- package/dist/services/identity/providers/studio/local.js +12 -0
- package/dist/services/identity/providers/studio/local.js.map +1 -1
- package/dist/services/identity/providers/studio/postgres.d.ts +7 -0
- package/dist/services/identity/providers/studio/postgres.d.ts.map +1 -1
- package/dist/services/identity/providers/studio/postgres.js +19 -0
- package/dist/services/identity/providers/studio/postgres.js.map +1 -1
- package/dist/services/track/admin/account-submitter.d.ts.map +1 -1
- package/dist/services/track/admin/account-submitter.js +1 -3
- package/dist/services/track/admin/account-submitter.js.map +1 -1
- package/dist/static/swagger-api.json +526 -1
- package/package.json +4 -4
|
@@ -0,0 +1,498 @@
|
|
|
1
|
+
import { LessThan } from 'typeorm';
|
|
2
|
+
import { Connection } from '../../database/connection/connection.js';
|
|
3
|
+
import { IssuedCredentialEntity } from '../../database/entities/issued-credential.entity.js';
|
|
4
|
+
import { IdentityServiceStrategySetup } from '../identity/index.js';
|
|
5
|
+
import { CheqdW3CVerifiableCredential } from '../w3c-credential.js';
|
|
6
|
+
import { Credential } from '@veramo/data-store';
|
|
7
|
+
import * as dotenv from 'dotenv';
|
|
8
|
+
dotenv.config();
|
|
9
|
+
// Accreditation types for category inference
|
|
10
|
+
const ACCREDITATION_TYPES = [
|
|
11
|
+
'VerifiableAccreditationToAccredit',
|
|
12
|
+
'VerifiableAccreditationToAttest',
|
|
13
|
+
'VerifiableAuthorizationForTrustChain',
|
|
14
|
+
];
|
|
15
|
+
export class ReceivedCredentials {
|
|
16
|
+
static instance = new ReceivedCredentials();
|
|
17
|
+
repository;
|
|
18
|
+
constructor() {
|
|
19
|
+
this.repository = Connection.instance.dbConnection.getRepository(IssuedCredentialEntity);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* List pending credential offers for a holder
|
|
23
|
+
* @param options - Filter options including optional holderDid
|
|
24
|
+
* @param customer - Customer entity
|
|
25
|
+
* @returns List of pending offers
|
|
26
|
+
*/
|
|
27
|
+
async listPendingOffers(options, customer) {
|
|
28
|
+
try {
|
|
29
|
+
const { holderDid, category, page = 1, limit = 10 } = options;
|
|
30
|
+
let subjectDids = [];
|
|
31
|
+
// If holderDid not provided, get all DIDs for this customer
|
|
32
|
+
if (!holderDid) {
|
|
33
|
+
subjectDids = await this.getHolderDids(customer);
|
|
34
|
+
if (subjectDids.length === 0) {
|
|
35
|
+
// No DIDs found for customer, return empty result
|
|
36
|
+
return {
|
|
37
|
+
total: 0,
|
|
38
|
+
offers: [],
|
|
39
|
+
page,
|
|
40
|
+
limit,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// Verify the provided holderDid belongs to this customer
|
|
46
|
+
const customerDids = await this.getHolderDids(customer);
|
|
47
|
+
if (!customerDids.includes(holderDid)) {
|
|
48
|
+
throw new Error(`DID ${holderDid} not found in your wallet`);
|
|
49
|
+
}
|
|
50
|
+
subjectDids = [holderDid];
|
|
51
|
+
}
|
|
52
|
+
// Query for offered credentials where subject matches any of the holder's DIDs
|
|
53
|
+
// Note: Don't filter by customer because the issuer could be a different customer
|
|
54
|
+
const queryBuilder = this.repository
|
|
55
|
+
.createQueryBuilder('credential')
|
|
56
|
+
.leftJoinAndSelect('credential.statusRegistry', 'statusRegistry')
|
|
57
|
+
.leftJoinAndSelect('credential.veramoCredential', 'veramoCredential')
|
|
58
|
+
.where('credential.status = :status', { status: 'offered' })
|
|
59
|
+
.andWhere('credential.subjectId IN (:...subjectDids)', { subjectDids });
|
|
60
|
+
// Add category filter if provided
|
|
61
|
+
if (category) {
|
|
62
|
+
queryBuilder.andWhere('credential.category = :category', { category });
|
|
63
|
+
}
|
|
64
|
+
queryBuilder
|
|
65
|
+
.orderBy('credential.createdAt', 'DESC')
|
|
66
|
+
.skip((page - 1) * limit)
|
|
67
|
+
.take(limit);
|
|
68
|
+
const [offers, total] = await queryBuilder.getManyAndCount();
|
|
69
|
+
return {
|
|
70
|
+
total,
|
|
71
|
+
offers,
|
|
72
|
+
page,
|
|
73
|
+
limit,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
throw new Error(`Failed to list pending offers: ${error}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get details of a specific credential offer
|
|
82
|
+
* @param issuedCredentialId - ID of the issued credential
|
|
83
|
+
* @param holderDid - DID of the holder requesting the offer
|
|
84
|
+
* @param customer - Customer entity
|
|
85
|
+
* @returns Credential offer details
|
|
86
|
+
*/
|
|
87
|
+
async getOfferDetails(issuedCredentialId, holderDid, customer) {
|
|
88
|
+
try {
|
|
89
|
+
const customerDids = await this.getHolderDids(customer);
|
|
90
|
+
// Check if holderDid is owned by this customer
|
|
91
|
+
if (!customerDids.includes(holderDid)) {
|
|
92
|
+
throw new Error(`DID ${holderDid} not found in your wallet`);
|
|
93
|
+
}
|
|
94
|
+
// Query offer without customer filter (issuer could be different customer)
|
|
95
|
+
const offer = await this.repository.findOne({
|
|
96
|
+
where: {
|
|
97
|
+
issuedCredentialId,
|
|
98
|
+
subjectId: holderDid,
|
|
99
|
+
status: 'offered',
|
|
100
|
+
},
|
|
101
|
+
relations: ['statusRegistry', 'veramoCredential'],
|
|
102
|
+
});
|
|
103
|
+
if (!offer) {
|
|
104
|
+
throw new Error('Credential offer not found or expired');
|
|
105
|
+
}
|
|
106
|
+
// Check if offer has expired
|
|
107
|
+
if (offer.offerExpiresAt && new Date() > offer.offerExpiresAt) {
|
|
108
|
+
throw new Error('Credential offer has expired');
|
|
109
|
+
}
|
|
110
|
+
return offer;
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
throw new Error(`Failed to get offer details: ${error}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Accept a credential offer
|
|
118
|
+
* Verifies the credential, checks subject DID, and updates status
|
|
119
|
+
* @param issuedCredentialId - ID of the issued credential
|
|
120
|
+
* @param holderDid - DID of the holder accepting the offer
|
|
121
|
+
* @param customer - Customer entity
|
|
122
|
+
* @param options - Additional options for acceptance
|
|
123
|
+
* @returns Acceptance response with credential and optional presentation
|
|
124
|
+
*/
|
|
125
|
+
async acceptOffer(issuedCredentialId, holderDid, customer, options = {}) {
|
|
126
|
+
try {
|
|
127
|
+
// Get all DIDs for this customer once (to avoid duplicate calls)
|
|
128
|
+
const holderDids = await this.getHolderDids(customer);
|
|
129
|
+
// Check if holderDid is owned by this customer
|
|
130
|
+
if (!holderDids.includes(holderDid)) {
|
|
131
|
+
throw new Error(`DID ${holderDid} not found in your wallet`);
|
|
132
|
+
}
|
|
133
|
+
// Query offer without customer filter (issuer could be different customer)
|
|
134
|
+
const offer = await this.repository.findOne({
|
|
135
|
+
where: {
|
|
136
|
+
issuedCredentialId,
|
|
137
|
+
subjectId: holderDid,
|
|
138
|
+
status: 'offered',
|
|
139
|
+
},
|
|
140
|
+
relations: ['statusRegistry', 'veramoCredential'],
|
|
141
|
+
});
|
|
142
|
+
if (!offer) {
|
|
143
|
+
throw new Error('Credential offer not found or expired');
|
|
144
|
+
}
|
|
145
|
+
// Check if offer has expired
|
|
146
|
+
if (offer.offerExpiresAt && new Date() > offer.offerExpiresAt) {
|
|
147
|
+
throw new Error('Credential offer has expired');
|
|
148
|
+
}
|
|
149
|
+
// Get the credential from the loaded relation
|
|
150
|
+
if (!offer.veramoCredential) {
|
|
151
|
+
throw new Error('Credential not found in dataStore');
|
|
152
|
+
}
|
|
153
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId);
|
|
154
|
+
// Extract the verifiable credential from Veramo's Credential entity
|
|
155
|
+
const credential = offer.veramoCredential.raw;
|
|
156
|
+
// Verify the credential
|
|
157
|
+
const verificationOptions = {
|
|
158
|
+
verifyStatus: true,
|
|
159
|
+
};
|
|
160
|
+
const verification = await identityService.agent.verifyCredential(credential, verificationOptions, customer);
|
|
161
|
+
if (!verification.verified) {
|
|
162
|
+
throw new Error(`Invalid credential: ${verification.error}`);
|
|
163
|
+
}
|
|
164
|
+
// Parse credential to get subject
|
|
165
|
+
const parsedCredential = new CheqdW3CVerifiableCredential(credential);
|
|
166
|
+
const credentialSubject = parsedCredential.credentialSubject;
|
|
167
|
+
// Verify subject matches one of holder's DIDs (using cached holderDids)
|
|
168
|
+
const subjectId = typeof credentialSubject === 'object' && 'id' in credentialSubject ? credentialSubject.id : null;
|
|
169
|
+
if (!subjectId || !holderDids.includes(subjectId)) {
|
|
170
|
+
throw new Error('Credential subject does not match any of your DIDs');
|
|
171
|
+
}
|
|
172
|
+
// Update the IssuedCredentialEntity
|
|
173
|
+
offer.status = 'issued';
|
|
174
|
+
offer.subjectAcceptedAt = new Date();
|
|
175
|
+
await this.repository.save(offer);
|
|
176
|
+
// Create and publish Verifiable Presentation if requested
|
|
177
|
+
let presentation;
|
|
178
|
+
if (options.createPresentation) {
|
|
179
|
+
presentation = await this.createPresentation(credential, holderDid, customer, options.presentationDomain);
|
|
180
|
+
}
|
|
181
|
+
return {
|
|
182
|
+
success: true,
|
|
183
|
+
credential,
|
|
184
|
+
presentation,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
throw new Error(`Failed to accept offer: ${error}`);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Reject a credential offer
|
|
193
|
+
* Updates status and deletes credential from dataStore
|
|
194
|
+
* @param issuedCredentialId - ID of the issued credential
|
|
195
|
+
* @param holderDid - DID of the holder rejecting the offer
|
|
196
|
+
* @param customer - Customer entity
|
|
197
|
+
* @returns Rejection response
|
|
198
|
+
*/
|
|
199
|
+
async rejectOffer(issuedCredentialId, holderDid, customer) {
|
|
200
|
+
try {
|
|
201
|
+
// Get the offer
|
|
202
|
+
const offer = await this.getOfferDetails(issuedCredentialId, holderDid, customer);
|
|
203
|
+
// Update status to rejected
|
|
204
|
+
offer.status = 'rejected';
|
|
205
|
+
await this.repository.save(offer);
|
|
206
|
+
// Delete credential from Veramo dataStore
|
|
207
|
+
if (offer.veramoHash) {
|
|
208
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId).agent;
|
|
209
|
+
await identityService.deleteCredential(offer.veramoHash, customer);
|
|
210
|
+
}
|
|
211
|
+
return {
|
|
212
|
+
success: true,
|
|
213
|
+
message: 'Credential offer rejected successfully',
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
throw new Error(`Failed to reject offer: ${error}`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Cleanup expired credential offers
|
|
222
|
+
* Deletes credentials from dataStore and updates status
|
|
223
|
+
* This should be run as a cron job
|
|
224
|
+
* @param customer - Optional customer entity to filter by
|
|
225
|
+
* @returns Number of offers cleaned up
|
|
226
|
+
*/
|
|
227
|
+
async cleanupExpiredOffers(customer) {
|
|
228
|
+
try {
|
|
229
|
+
const now = new Date();
|
|
230
|
+
// Find expired offers
|
|
231
|
+
const whereCondition = {
|
|
232
|
+
status: 'offered',
|
|
233
|
+
offerExpiresAt: LessThan(now),
|
|
234
|
+
};
|
|
235
|
+
if (customer) {
|
|
236
|
+
whereCondition.customer = { customerId: customer.customerId };
|
|
237
|
+
}
|
|
238
|
+
const expiredOffers = await this.repository.find({
|
|
239
|
+
where: whereCondition,
|
|
240
|
+
});
|
|
241
|
+
let cleanedCount = 0;
|
|
242
|
+
for (const offer of expiredOffers) {
|
|
243
|
+
try {
|
|
244
|
+
// Update status to rejected
|
|
245
|
+
offer.status = 'rejected';
|
|
246
|
+
offer.lastError = 'Offer expired';
|
|
247
|
+
await this.repository.save(offer);
|
|
248
|
+
// Delete from dataStore if exists
|
|
249
|
+
if (offer.veramoHash && customer) {
|
|
250
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId).agent;
|
|
251
|
+
await identityService.deleteCredential(offer.veramoHash, customer);
|
|
252
|
+
}
|
|
253
|
+
cleanedCount++;
|
|
254
|
+
}
|
|
255
|
+
catch (error) {
|
|
256
|
+
console.error(`Failed to cleanup offer ${offer.issuedCredentialId}:`, error);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
return cleanedCount;
|
|
260
|
+
}
|
|
261
|
+
catch (error) {
|
|
262
|
+
throw new Error(`Failed to cleanup expired offers: ${error}`);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Helper: Get all DIDs belonging to the holder/customer
|
|
267
|
+
* @param customer - Customer entity
|
|
268
|
+
* @returns Array of DID strings
|
|
269
|
+
*/
|
|
270
|
+
async getHolderDids(customer) {
|
|
271
|
+
try {
|
|
272
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId);
|
|
273
|
+
const agent = identityService.agent;
|
|
274
|
+
if (!agent) {
|
|
275
|
+
throw new Error('Agent not initialized');
|
|
276
|
+
}
|
|
277
|
+
// Get all DIDs for this customer
|
|
278
|
+
const identifiers = await agent.listDids({ page: 1, limit: 1000 }, customer);
|
|
279
|
+
return identifiers.dids.map((d) => (typeof d === 'string' ? d : d.did));
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
throw new Error(`Failed to get holder DIDs: ${error}`);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Helper: Create a verifiable presentation
|
|
287
|
+
* @param credential - Verifiable credential to include
|
|
288
|
+
* @param holderDid - DID of the holder
|
|
289
|
+
* @param customer - Customer entity
|
|
290
|
+
* @param domain - Optional domain for the presentation
|
|
291
|
+
* @returns JWT presentation string
|
|
292
|
+
*/
|
|
293
|
+
async createPresentation(credential, holderDid, customer, domain) {
|
|
294
|
+
try {
|
|
295
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId).agent;
|
|
296
|
+
const presentationPayload = {
|
|
297
|
+
holder: holderDid,
|
|
298
|
+
verifiableCredential: [credential],
|
|
299
|
+
'@context': ['https://www.w3.org/2018/credentials/v1'],
|
|
300
|
+
type: ['VerifiablePresentation'],
|
|
301
|
+
};
|
|
302
|
+
const verificationOptions = domain ? { domain } : {};
|
|
303
|
+
const presentation = await identityService.createPresentation(presentationPayload, verificationOptions, customer);
|
|
304
|
+
// Return as JWT string if available, otherwise stringify
|
|
305
|
+
return typeof presentation === 'string' ? presentation : JSON.stringify(presentation);
|
|
306
|
+
}
|
|
307
|
+
catch (error) {
|
|
308
|
+
throw new Error(`Failed to create presentation: ${error}`);
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Import an externally issued credential into the dataStore
|
|
313
|
+
* @param credential - Verifiable credential (JSON object or JWT string)
|
|
314
|
+
* @param customer - Customer entity
|
|
315
|
+
* @param holderDid - DID of the holder importing the credential
|
|
316
|
+
* @returns Imported credential details
|
|
317
|
+
*/
|
|
318
|
+
async importCredential(credential, customer, holderDid) {
|
|
319
|
+
try {
|
|
320
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId).agent;
|
|
321
|
+
// Verify the credential first
|
|
322
|
+
const verificationOptions = {
|
|
323
|
+
verifyStatus: false, // Don't verify status for external credentials
|
|
324
|
+
};
|
|
325
|
+
const verification = await identityService.verifyCredential(credential, verificationOptions, customer);
|
|
326
|
+
if (!verification.verified) {
|
|
327
|
+
throw new Error(`Invalid credential: ${verification.error}`);
|
|
328
|
+
}
|
|
329
|
+
// Parse the credential to get details
|
|
330
|
+
const parsedCredential = new CheqdW3CVerifiableCredential(credential);
|
|
331
|
+
const credentialSubject = parsedCredential.credentialSubject;
|
|
332
|
+
// Verify subject matches holder DID
|
|
333
|
+
const subjectId = typeof credentialSubject === 'object' && 'id' in credentialSubject ? credentialSubject.id : null;
|
|
334
|
+
if (!subjectId) {
|
|
335
|
+
throw new Error('Credential does not have a valid subject ID');
|
|
336
|
+
}
|
|
337
|
+
// Check if holder DID exists in customer's wallet
|
|
338
|
+
const holderDids = await this.getHolderDids(customer);
|
|
339
|
+
if (!holderDids.includes(holderDid)) {
|
|
340
|
+
throw new Error('Holder DID does not exist in your wallet');
|
|
341
|
+
}
|
|
342
|
+
// Verify subject matches holder DID
|
|
343
|
+
if (subjectId !== holderDid) {
|
|
344
|
+
throw new Error('Credential subject does not match holder DID');
|
|
345
|
+
}
|
|
346
|
+
// Save to Veramo dataStore only
|
|
347
|
+
const credentialHash = await identityService.saveCredential(parsedCredential, customer);
|
|
348
|
+
return {
|
|
349
|
+
success: true,
|
|
350
|
+
credentialHash,
|
|
351
|
+
credential: parsedCredential,
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
catch (error) {
|
|
355
|
+
throw new Error(`Failed to import credential: ${error}`);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* List received credentials (accepted offers + imported credentials)
|
|
360
|
+
* @param customer - Customer entity
|
|
361
|
+
* @param holderDid - Optional DID to filter by subject
|
|
362
|
+
* @param category - Optional category to filter by ('credential' or 'accreditation')
|
|
363
|
+
* @param page - Page number for pagination (default: 1)
|
|
364
|
+
* @param limit - Number of results per page (default: 10)
|
|
365
|
+
* @returns Paginated list of received credentials with their hashes
|
|
366
|
+
*/
|
|
367
|
+
async listReceivedCredentials(customer, holderDid, category, page = 1, limit = 10) {
|
|
368
|
+
try {
|
|
369
|
+
// Get all DIDs owned by this customer
|
|
370
|
+
let subjectDids = [];
|
|
371
|
+
if (!holderDid) {
|
|
372
|
+
subjectDids = await this.getHolderDids(customer);
|
|
373
|
+
if (subjectDids.length === 0) {
|
|
374
|
+
// No DIDs found for customer, return empty result
|
|
375
|
+
return {
|
|
376
|
+
total: 0,
|
|
377
|
+
credentials: [],
|
|
378
|
+
page,
|
|
379
|
+
limit,
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
else {
|
|
384
|
+
// Verify the provided holderDid belongs to this customer
|
|
385
|
+
const customerDids = await this.getHolderDids(customer);
|
|
386
|
+
if (!customerDids.includes(holderDid)) {
|
|
387
|
+
throw new Error(`DID ${holderDid} not found in your wallet`);
|
|
388
|
+
}
|
|
389
|
+
subjectDids = [holderDid];
|
|
390
|
+
}
|
|
391
|
+
// Use direct TypeORM query on Credential entity to avoid beta dataStoreORM
|
|
392
|
+
// Left join with IssuedCredentialEntity to include both accepted offers and imported credentials
|
|
393
|
+
const credentialRepository = Connection.instance.dbConnection.getRepository(Credential);
|
|
394
|
+
const queryBuilder = credentialRepository
|
|
395
|
+
.createQueryBuilder('credential')
|
|
396
|
+
.leftJoin(IssuedCredentialEntity, 'issued', 'issued.veramoHash = credential.hash')
|
|
397
|
+
.addSelect('issued.category')
|
|
398
|
+
.where('credential.subjectDid IN (:...subjectDids)', { subjectDids })
|
|
399
|
+
.andWhere('(issued.status NOT IN (:...excludedStatuses) OR issued.status IS NULL)', {
|
|
400
|
+
excludedStatuses: ['offered', 'rejected'],
|
|
401
|
+
});
|
|
402
|
+
// Add category filter if provided
|
|
403
|
+
// Include both credentials matching the category AND imported credentials (which have issued.category = NULL)
|
|
404
|
+
if (category) {
|
|
405
|
+
queryBuilder.andWhere('(issued.category = :category OR issued.category IS NULL)', { category });
|
|
406
|
+
}
|
|
407
|
+
let total;
|
|
408
|
+
let finalCredentials;
|
|
409
|
+
// Handle two cases differently for correct pagination and total count
|
|
410
|
+
if (!category) {
|
|
411
|
+
// No category filter: Use efficient SQL pagination with count
|
|
412
|
+
queryBuilder.skip((page - 1) * limit).take(limit);
|
|
413
|
+
const [credentialRecords, count] = await queryBuilder.getManyAndCount();
|
|
414
|
+
total = count;
|
|
415
|
+
finalCredentials = credentialRecords.map((record) => ({
|
|
416
|
+
hash: record.hash,
|
|
417
|
+
credential: record.raw,
|
|
418
|
+
}));
|
|
419
|
+
}
|
|
420
|
+
else {
|
|
421
|
+
// Category filter applied: Fetch all records to filter by type in TypeScript, then manually paginate
|
|
422
|
+
const credentialRecords = await queryBuilder.getRawAndEntities();
|
|
423
|
+
// Extract credentials with category information from the join
|
|
424
|
+
let credentials = credentialRecords.entities.map((record, index) => {
|
|
425
|
+
const rawRecord = credentialRecords.raw[index];
|
|
426
|
+
return {
|
|
427
|
+
hash: record.hash,
|
|
428
|
+
credential: record.raw,
|
|
429
|
+
issuedCategory: rawRecord.issued_category,
|
|
430
|
+
};
|
|
431
|
+
});
|
|
432
|
+
// Filter imported credentials by their type
|
|
433
|
+
credentials = credentials.filter((item) => {
|
|
434
|
+
// If credential has IssuedCredentialEntity with category, it's already filtered by SQL
|
|
435
|
+
if (item.issuedCategory !== null) {
|
|
436
|
+
return true;
|
|
437
|
+
}
|
|
438
|
+
// For imported credentials (issuedCategory = null), check the credential type
|
|
439
|
+
const credentialType = Array.isArray(item.credential.type)
|
|
440
|
+
? item.credential.type
|
|
441
|
+
: [item.credential.type];
|
|
442
|
+
const isAccreditation = credentialType.some((type) => typeof type === 'string' && ACCREDITATION_TYPES.includes(type));
|
|
443
|
+
// Keep credential if category matches
|
|
444
|
+
return category === 'accreditation' ? isAccreditation : !isAccreditation;
|
|
445
|
+
});
|
|
446
|
+
// Get total count after filtering
|
|
447
|
+
total = credentials.length;
|
|
448
|
+
// Apply manual pagination
|
|
449
|
+
const startIndex = (page - 1) * limit;
|
|
450
|
+
credentials = credentials.slice(startIndex, startIndex + limit);
|
|
451
|
+
// Remove the temporary issuedCategory field
|
|
452
|
+
finalCredentials = credentials.map(({ hash, credential }) => ({ hash, credential }));
|
|
453
|
+
}
|
|
454
|
+
return {
|
|
455
|
+
total,
|
|
456
|
+
credentials: finalCredentials,
|
|
457
|
+
page,
|
|
458
|
+
limit,
|
|
459
|
+
};
|
|
460
|
+
}
|
|
461
|
+
catch (error) {
|
|
462
|
+
throw new Error(`Failed to list received credentials: ${error}`);
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
/**
|
|
466
|
+
* Get a specific received credential by hash
|
|
467
|
+
* @param credentialHash - Hash of the credential
|
|
468
|
+
* @param customer - Customer entity
|
|
469
|
+
* @returns Verifiable credential
|
|
470
|
+
*/
|
|
471
|
+
async getReceivedCredential(credentialHash, customer) {
|
|
472
|
+
try {
|
|
473
|
+
const identityService = new IdentityServiceStrategySetup(customer.customerId).agent;
|
|
474
|
+
// Use the new retrieveCredential() method instead of beta dataStore method
|
|
475
|
+
const credential = await identityService.retrieveCredential(credentialHash, customer);
|
|
476
|
+
if (!credential) {
|
|
477
|
+
throw new Error(`Credential with hash ${credentialHash} not found`);
|
|
478
|
+
}
|
|
479
|
+
// Verify the credential subject belongs to customer's wallet
|
|
480
|
+
const parsedCredential = new CheqdW3CVerifiableCredential(credential);
|
|
481
|
+
const credentialSubject = parsedCredential.credentialSubject;
|
|
482
|
+
const subjectId = typeof credentialSubject === 'object' && 'id' in credentialSubject ? credentialSubject.id : null;
|
|
483
|
+
if (!subjectId) {
|
|
484
|
+
throw new Error('Credential does not have a valid subject ID');
|
|
485
|
+
}
|
|
486
|
+
// Check if subject DID belongs to this customer
|
|
487
|
+
const holderDids = await this.getHolderDids(customer);
|
|
488
|
+
if (!holderDids.includes(subjectId)) {
|
|
489
|
+
throw new Error('Credential subject does not belong to your wallet');
|
|
490
|
+
}
|
|
491
|
+
return credential;
|
|
492
|
+
}
|
|
493
|
+
catch (error) {
|
|
494
|
+
throw new Error(`Failed to get received credential: ${error}`);
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
//# sourceMappingURL=received-credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"received-credentials.js","sourceRoot":"","sources":["../../../src/services/api/received-credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,5 +61,9 @@ export declare abstract class AbstractIdentityService implements IIdentityServic
|
|
|
61
61
|
getAPIKey(customer: CustomerEntity, user: UserEntity): Promise<APIKeyEntity | null>;
|
|
62
62
|
decryptAPIKey(apiKey: string): Promise<string>;
|
|
63
63
|
listOperations(where: ListOperationOptions, customer: CustomerEntity): Promise<any>;
|
|
64
|
+
didExists(did: string, customer: CustomerEntity): Promise<boolean>;
|
|
65
|
+
saveCredential(credential: VerifiableCredential, customer: CustomerEntity): Promise<string>;
|
|
66
|
+
deleteCredential(hash: string, customer: CustomerEntity): Promise<boolean>;
|
|
67
|
+
retrieveCredential(hash: string, customer: CustomerEntity): Promise<VerifiableCredential | null>;
|
|
64
68
|
}
|
|
65
69
|
//# sourceMappingURL=abstract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../../src/services/identity/abstract.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../../src/services/identity/abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,5 +126,17 @@ export class AbstractIdentityService {
|
|
|
126
126
|
listOperations(where, customer) {
|
|
127
127
|
throw new Error(`Not supported`);
|
|
128
128
|
}
|
|
129
|
+
didExists(did, customer) {
|
|
130
|
+
throw new Error(`Not supported`);
|
|
131
|
+
}
|
|
132
|
+
saveCredential(credential, customer) {
|
|
133
|
+
throw new Error(`Not supported`);
|
|
134
|
+
}
|
|
135
|
+
deleteCredential(hash, customer) {
|
|
136
|
+
throw new Error(`Not supported`);
|
|
137
|
+
}
|
|
138
|
+
retrieveCredential(hash, customer) {
|
|
139
|
+
throw new Error(`Not supported`);
|
|
140
|
+
}
|
|
129
141
|
}
|
|
130
142
|
//# sourceMappingURL=abstract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../src/services/identity/abstract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../src/services/identity/abstract.ts"],"names":[],"mappings":"AA6DA,MAAM,OAAgB,uBAAuB;IAC5C,KAAK,CAAe;IAEpB,iBAAiB,CAAU;IAE3B,aAAa,CAAU;IAEvB,SAAS;QACR,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,IAAuB,EAAE,QAAyB,EAAE,QAAiB;QAC9E,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CACR,IAAuB,EACvB,aAAqB,EACrB,QAAyB,EACzB,QAAiB;QAEjB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,OAAe,EAAE,WAAwB,EAAE,QAAwB;QAC5E,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,WAAwB,EAAE,QAAwB,EAAE,aAAwB;QACrF,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,QAAwB,EAAE,aAAwB;QAC5E,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CACR,GAAW,EACX,IAA4C,EAC5C,eAAuB,EACvB,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,QAAgB,EAAE,QAAwB;QAChE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,cAAc,CACb,OAAe,EACf,OAAwB,EACxB,QAAwB,EACxB,aAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA4B,EAAE,QAAwB;QACzE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,gBAAgB,CACf,UAA6B,EAC7B,MAAmC,EACnC,aAAmC,EACnC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,+BAA+B,CAC9B,GAAW,EACX,eAAgC,EAChC,aAAiD,EACjD,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,oCAAoC,CACnC,GAAW,EACX,eAAgC,EAChC,aAAgD,EAChD,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,6BAA6B,CAC5B,GAAW,EACX,eAAgC,EAChC,aAA+C,EAC/C,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,kCAAkC,CACjC,GAAW,EACX,eAAgC,EAChC,aAA8C,EAC9C,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,2BAA2B,CAC1B,GAAW,EACX,QAAgB,EAChB,aAAiD,EACjD,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,yBAAyB,CACxB,GAAW,EACX,QAAgB,EAChB,aAA+C,EAC/C,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,mBAAmB,CAClB,GAAW,EACX,aAAqC,EACrC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,wBAAwB,CACvB,GAAW,EACX,aAAoC,EACpC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,gBAAgB,CACf,GAAW,EACX,cAAsB,EACtB,QAAwB,EACxB,aAA0C,EAC1C,QAAyB;QAEzB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,wBAAwB,CACvB,iBAAoC,EACpC,QAAyB;QAEzB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,uBAAuB,CACtB,GAAW,EACX,eAAgC,EAChC,aAAyC,EACzC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,4BAA4B,CAC3B,GAAW,EACX,eAAgC,EAChC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,eAAe,CAAC,OAAqC,EAAE,QAAwB;QAC9E,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,aAAa,CAAC,YAAoB,EAAE,QAAwB;QAC3D,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,iBAAiB,CAChB,UAA+D,EAC/D,QAAgB,EAChB,OAAgB,EAChB,QAAwB,EACxB,YAAoB;QAEpB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,kBAAkB,CACjB,UAA+D,EAC/D,QAAgB,EAChB,OAAgB,EAChB,QAAwB,EACxB,YAAoB;QAEpB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,oBAAoB,CACnB,UAA+D,EAC/D,QAAgB,EAChB,OAAgB,EAChB,QAAwB,EACxB,YAAoB;QAEpB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,GAAW,EAAE,QAAwB;QAC3C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,QAAQ,CAAC,OAA8B,EAAE,QAAwB;QAChE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,GAAW,EAAE,QAAwB;QAC3C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,UAAU,CAAC,GAAW,EAAE,OAA8B;QACrD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,CAAC,MAAc,EAAE,aAAuB;QAC9C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,kBAAkB,CACjB,YAAiC,EACjC,mBAAwC,EACxC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,gBAAgB,CACf,UAAyC,EACzC,mBAAwC,EACxC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,kBAAkB,CACjB,YAA6C,EAC7C,mBAAwC,EACxC,QAAwB;QAExB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,oFAAoF;IACpF,SAAS,CAAC,MAAc,EAAE,QAAwB,EAAE,IAAgB;QACnE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,YAAY,CAAC,MAAoB,EAAE,SAAiB;QACnD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,SAAS,CAAC,QAAwB,EAAE,IAAgB;QACnD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,aAAa,CAAC,MAAc;QAC3B,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,cAAc,CAAC,KAA2B,EAAE,QAAwB;QACnE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,SAAS,CAAC,GAAW,EAAE,QAAwB;QAC9C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,cAAc,CAAC,UAAgC,EAAE,QAAwB;QACxE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,gBAAgB,CAAC,IAAY,EAAE,QAAwB;QACtD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IACD,kBAAkB,CAAC,IAAY,EAAE,QAAwB;QACxD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;CACD"}
|
|
@@ -63,6 +63,28 @@ export interface IIdentityService {
|
|
|
63
63
|
getAPIKey(customer: CustomerEntity, user: UserEntity): Promise<APIKeyEntity | null>;
|
|
64
64
|
decryptAPIKey(apiKey: string): Promise<string>;
|
|
65
65
|
listOperations(options: ListOperationOptions, customer: CustomerEntity): Promise<any>;
|
|
66
|
+
/**
|
|
67
|
+
* Check if a DID exists in the agent's identifier store
|
|
68
|
+
* @param did - The DID to check
|
|
69
|
+
* @param customer - Customer entity
|
|
70
|
+
* @returns true if DID exists, false otherwise
|
|
71
|
+
*/
|
|
72
|
+
didExists(did: string, customer: CustomerEntity): Promise<boolean>;
|
|
73
|
+
/**
|
|
74
|
+
* Save a verifiable credential to Veramo's dataStore
|
|
75
|
+
* @param credential - The verifiable credential to save
|
|
76
|
+
* @param customer - Customer entity
|
|
77
|
+
* @returns The hash of the saved credential
|
|
78
|
+
*/
|
|
79
|
+
saveCredential(credential: VerifiableCredential, customer: CustomerEntity): Promise<string>;
|
|
80
|
+
/**
|
|
81
|
+
* Delete a verifiable credential from Veramo's dataStore
|
|
82
|
+
* @param hash - The hash of the credential to delete
|
|
83
|
+
* @param customer - Customer entity
|
|
84
|
+
* @returns true if deleted successfully
|
|
85
|
+
*/
|
|
86
|
+
deleteCredential(hash: string, customer: CustomerEntity): Promise<boolean>;
|
|
87
|
+
retrieveCredential(hash: string, customer: CustomerEntity): Promise<VerifiableCredential | null>;
|
|
66
88
|
}
|
|
67
89
|
export declare class IdentityServiceStrategySetup {
|
|
68
90
|
agent: IIdentityService;
|