@sphereon/ssi-sdk.wellknown-did-issuer 0.33.1-feature.vcdm2.tsup.32 → 0.33.1-next.2
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/agent/WellKnownDidIssuer.d.ts +35 -0
- package/dist/agent/WellKnownDidIssuer.d.ts.map +1 -0
- package/dist/agent/WellKnownDidIssuer.js +218 -0
- package/dist/agent/WellKnownDidIssuer.js.map +1 -0
- package/dist/entities/DidConfigurationResourceEntity.d.ts +14 -0
- package/dist/entities/DidConfigurationResourceEntity.d.ts.map +1 -0
- package/dist/entities/DidConfigurationResourceEntity.js +103 -0
- package/dist/entities/DidConfigurationResourceEntity.js.map +1 -0
- package/dist/index.d.ts +8 -112
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +31 -3992
- package/dist/index.js.map +1 -1
- package/dist/migrations/generic/1-CreateWellknownDidIssuer.d.ts +7 -0
- package/dist/migrations/generic/1-CreateWellknownDidIssuer.d.ts.map +1 -0
- package/dist/migrations/generic/1-CreateWellknownDidIssuer.js +72 -0
- package/dist/migrations/generic/1-CreateWellknownDidIssuer.js.map +1 -0
- package/dist/migrations/generic/index.d.ts +10 -0
- package/dist/migrations/generic/index.d.ts.map +1 -0
- package/dist/migrations/generic/index.js +13 -0
- package/dist/migrations/generic/index.js.map +1 -0
- package/dist/migrations/index.d.ts +2 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +6 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/internal-migrations-ormconfig.d.ts +7 -0
- package/dist/migrations/internal-migrations-ormconfig.d.ts.map +1 -0
- package/dist/migrations/internal-migrations-ormconfig.js +29 -0
- package/dist/migrations/internal-migrations-ormconfig.js.map +1 -0
- package/dist/migrations/postgres/1661165115000-CreateWellknownDidIssuer.d.ts +7 -0
- package/dist/migrations/postgres/1661165115000-CreateWellknownDidIssuer.d.ts.map +1 -0
- package/dist/migrations/postgres/1661165115000-CreateWellknownDidIssuer.js +31 -0
- package/dist/migrations/postgres/1661165115000-CreateWellknownDidIssuer.js.map +1 -0
- package/dist/migrations/sqlite/1661161799000-CreateWellknownDidIssuer.d.ts +7 -0
- package/dist/migrations/sqlite/1661161799000-CreateWellknownDidIssuer.d.ts.map +1 -0
- package/dist/migrations/sqlite/1661161799000-CreateWellknownDidIssuer.js +31 -0
- package/dist/migrations/sqlite/1661161799000-CreateWellknownDidIssuer.js.map +1 -0
- package/dist/types/IWellKnownDidIssuer.d.ts +51 -0
- package/dist/types/IWellKnownDidIssuer.d.ts.map +1 -0
- package/dist/types/IWellKnownDidIssuer.js +3 -0
- package/dist/types/IWellKnownDidIssuer.js.map +1 -0
- package/package.json +15 -28
- package/src/agent/WellKnownDidIssuer.ts +0 -2
- package/dist/index.cjs +0 -4045
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -116
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { DomainLinkageCredential, IDidConfigurationResource } from '@sphereon/wellknown-dids-client';
|
|
2
|
+
import { IAgentPlugin } from '@veramo/core';
|
|
3
|
+
import { OrPromise } from '@veramo/utils';
|
|
4
|
+
import { Connection } from 'typeorm';
|
|
5
|
+
import { IAddLinkedDomainsServiceArgs, IGetDidConfigurationResourceArgs, IIssueDomainLinkageCredentialArgs, ISaveDidConfigurationResourceArgs, IWellKnownDidIssuer, IWellKnownDidIssuerOptionsArgs, RequiredContext } from '../types/IWellKnownDidIssuer';
|
|
6
|
+
/**
|
|
7
|
+
* {@inheritDoc IWellKnownDidIssuer}
|
|
8
|
+
*/
|
|
9
|
+
export declare class WellKnownDidIssuer implements IAgentPlugin {
|
|
10
|
+
private dbConnection;
|
|
11
|
+
readonly schema: any;
|
|
12
|
+
readonly methods: IWellKnownDidIssuer;
|
|
13
|
+
private readonly credentialIssuances;
|
|
14
|
+
private readonly didConfigurationResourceRelations;
|
|
15
|
+
constructor(dbConnection: OrPromise<Connection>, args?: IWellKnownDidIssuerOptionsArgs);
|
|
16
|
+
/** {@inheritDoc IWellKnownDidIssuer.registerSignatureVerification} */
|
|
17
|
+
private registerCredentialIssuance;
|
|
18
|
+
/** {@inheritDoc IWellKnownDidIssuer.removeSignatureVerification} */
|
|
19
|
+
private removeCredentialIssuance;
|
|
20
|
+
/** {@inheritDoc IWellKnownDidIssuer.issueDidConfigurationResource} */
|
|
21
|
+
private issueDidConfigurationResource;
|
|
22
|
+
/** {@inheritDoc IWellKnownDidIssuer.saveDidConfigurationResource} */
|
|
23
|
+
saveDidConfigurationResource(args: ISaveDidConfigurationResourceArgs, context: RequiredContext): Promise<void>;
|
|
24
|
+
/** {@inheritDoc IWellKnownDidIssuer.getDidConfigurationResource} */
|
|
25
|
+
getDidConfigurationResource(args: IGetDidConfigurationResourceArgs, context: RequiredContext): Promise<IDidConfigurationResource>;
|
|
26
|
+
/** {@inheritDoc IWellKnownDidIssuer.issueDomainLinkageCredential} */
|
|
27
|
+
issueDomainLinkageCredential(args: IIssueDomainLinkageCredentialArgs, context: RequiredContext): Promise<DomainLinkageCredential>;
|
|
28
|
+
/** {@inheritDoc IWellKnownDidIssuer.addLinkedDomainsService} */
|
|
29
|
+
addLinkedDomainsService(args: IAddLinkedDomainsServiceArgs, context: RequiredContext): Promise<void>;
|
|
30
|
+
private getCredentialIssuance;
|
|
31
|
+
private saveDomainLinkageCredential;
|
|
32
|
+
private normalizeCredential;
|
|
33
|
+
private mapIssuances;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=WellKnownDidIssuer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WellKnownDidIssuer.d.ts","sourceRoot":"","sources":["../../src/agent/WellKnownDidIssuer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EAI1B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,YAAY,EAAqC,MAAM,cAAc,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAGzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIpC,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAEhC,iCAAiC,EAGjC,iCAAiC,EACjC,mBAAmB,EACnB,8BAA8B,EAC9B,eAAe,EAChB,MAAM,8BAA8B,CAAA;AAGrC;;GAEG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IAgBnD,OAAO,CAAC,YAAY;IAftB,QAAQ,CAAC,MAAM,MAA+B;IAC9C,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAQpC;IAED,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkC;IACtE,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAiB;gBAGzD,YAAY,EAAE,SAAS,CAAC,UAAU,CAAC,EAC3C,IAAI,CAAC,EAAE,8BAA8B;IAKvC,sEAAsE;YACxD,0BAA0B;IAQxC,oEAAoE;YACtD,wBAAwB;IAItC,sEAAsE;YACxD,6BAA6B;IAsC3C,qEAAqE;IACxD,4BAA4B,CAAC,IAAI,EAAE,iCAAiC,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3H,oEAAoE;IACvD,2BAA2B,CAAC,IAAI,EAAE,gCAAgC,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAa9I,qEAAqE;IACxD,4BAA4B,CAAC,IAAI,EAAE,iCAAiC,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA0C9I,gEAAgE;IACnD,uBAAuB,CAAC,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAoCnG,qBAAqB;YAQrB,2BAA2B;IAiBzC,OAAO,CAAC,mBAAmB;YAIb,YAAY;CAY3B"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.WellKnownDidIssuer = void 0;
|
|
13
|
+
const ssi_sdk_credential_store_1 = require("@sphereon/ssi-sdk.credential-store");
|
|
14
|
+
const ssi_types_1 = require("@sphereon/ssi-types");
|
|
15
|
+
const wellknown_dids_client_1 = require("@sphereon/wellknown-dids-client");
|
|
16
|
+
const did_jwt_vc_1 = require("did-jwt-vc");
|
|
17
|
+
const uuid_1 = require("uuid");
|
|
18
|
+
const DidConfigurationResourceEntity_1 = require("../entities/DidConfigurationResourceEntity");
|
|
19
|
+
const index_1 = require("../index");
|
|
20
|
+
const ssi_sdk_data_store_1 = require("@sphereon/ssi-sdk.data-store");
|
|
21
|
+
/**
|
|
22
|
+
* {@inheritDoc IWellKnownDidIssuer}
|
|
23
|
+
*/
|
|
24
|
+
class WellKnownDidIssuer {
|
|
25
|
+
constructor(dbConnection, args) {
|
|
26
|
+
this.dbConnection = dbConnection;
|
|
27
|
+
this.schema = index_1.schema.IWellKnownDidVerifier;
|
|
28
|
+
this.methods = {
|
|
29
|
+
addLinkedDomainsService: this.addLinkedDomainsService.bind(this),
|
|
30
|
+
getDidConfigurationResource: this.getDidConfigurationResource.bind(this),
|
|
31
|
+
issueDidConfigurationResource: this.issueDidConfigurationResource.bind(this),
|
|
32
|
+
issueDomainLinkageCredential: this.issueDomainLinkageCredential.bind(this),
|
|
33
|
+
registerCredentialIssuance: this.registerCredentialIssuance.bind(this),
|
|
34
|
+
removeCredentialIssuance: this.removeCredentialIssuance.bind(this),
|
|
35
|
+
saveDidConfigurationResource: this.saveDidConfigurationResource.bind(this),
|
|
36
|
+
};
|
|
37
|
+
this.didConfigurationResourceRelations = ['linkedDids'];
|
|
38
|
+
this.credentialIssuances = (args && args.credentialIssuances) || {};
|
|
39
|
+
}
|
|
40
|
+
/** {@inheritDoc IWellKnownDidIssuer.registerSignatureVerification} */
|
|
41
|
+
registerCredentialIssuance(args, context) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
if (this.credentialIssuances[args.callbackName] !== undefined) {
|
|
44
|
+
return Promise.reject(new Error(`Credential issuance with callbackName: ${args.callbackName} already present`));
|
|
45
|
+
}
|
|
46
|
+
this.credentialIssuances[args.callbackName] = args.credentialIssuance;
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/** {@inheritDoc IWellKnownDidIssuer.removeSignatureVerification} */
|
|
50
|
+
removeCredentialIssuance(args, context) {
|
|
51
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
return delete this.credentialIssuances[args.callbackName];
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/** {@inheritDoc IWellKnownDidIssuer.issueDidConfigurationResource} */
|
|
56
|
+
issueDidConfigurationResource(args, context) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
if (!args.issuances.every((issuance) => issuance.origin === args.issuances[0].origin)) {
|
|
59
|
+
return Promise.reject(Error('All verifiableCredentials should be issued for the same origin'));
|
|
60
|
+
}
|
|
61
|
+
// TODO We should combine all origins into one service when we update to Veramo 3.1.6.next-165 or higher, as then we can support multiple origins
|
|
62
|
+
const addServices = args.issuances.map((issuance) => this.addLinkedDomainsService({
|
|
63
|
+
did: issuance.did,
|
|
64
|
+
origin: issuance.origin,
|
|
65
|
+
serviceId: issuance.serviceId,
|
|
66
|
+
}, context));
|
|
67
|
+
return Promise.all(addServices).then(() => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
return new wellknown_dids_client_1.WellKnownDidIssuer()
|
|
69
|
+
.issueDidConfigurationResource({
|
|
70
|
+
issuances: yield this.mapIssuances(args.issuances),
|
|
71
|
+
issueCallback: typeof args.credentialIssuance === 'string' ? yield this.getCredentialIssuance(args.credentialIssuance) : args.credentialIssuance,
|
|
72
|
+
})
|
|
73
|
+
.then((didConfigurationResource) => __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
if (args.save) {
|
|
75
|
+
// TODO add support for multiple origins when we upgrade Veramo version
|
|
76
|
+
yield this.saveDidConfigurationResource({ origin: args.issuances[0].origin, didConfigurationResource }, context);
|
|
77
|
+
}
|
|
78
|
+
return didConfigurationResource;
|
|
79
|
+
}))
|
|
80
|
+
.catch((error) => Promise.reject(Error(`Unable to issue DID configuration resource. Error: ${error.message}`)));
|
|
81
|
+
}));
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/** {@inheritDoc IWellKnownDidIssuer.saveDidConfigurationResource} */
|
|
85
|
+
saveDidConfigurationResource(args, context) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
const didConfigurationEntity = {
|
|
88
|
+
origin: args.origin,
|
|
89
|
+
context: args.didConfigurationResource['@context'],
|
|
90
|
+
linkedDids: args.didConfigurationResource.linked_dids.map((credential) => (0, DidConfigurationResourceEntity_1.createCredentialEntity)(this.normalizeCredential(credential))),
|
|
91
|
+
};
|
|
92
|
+
yield (yield this.dbConnection).getRepository(DidConfigurationResourceEntity_1.DidConfigurationResourceEntity).save(didConfigurationEntity, { transaction: true });
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/** {@inheritDoc IWellKnownDidIssuer.getDidConfigurationResource} */
|
|
96
|
+
getDidConfigurationResource(args, context) {
|
|
97
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
const result = yield (yield this.dbConnection).getRepository(DidConfigurationResourceEntity_1.DidConfigurationResourceEntity).findOne({
|
|
99
|
+
where: { origin: args.origin },
|
|
100
|
+
relations: this.didConfigurationResourceRelations,
|
|
101
|
+
});
|
|
102
|
+
if (!result) {
|
|
103
|
+
return Promise.reject(Error(`No DID configuration resource found for origin: ${args.origin}`));
|
|
104
|
+
}
|
|
105
|
+
return (0, DidConfigurationResourceEntity_1.didConfigurationResourceFrom)(result);
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
/** {@inheritDoc IWellKnownDidIssuer.issueDomainLinkageCredential} */
|
|
109
|
+
issueDomainLinkageCredential(args, context) {
|
|
110
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
111
|
+
const did = (0, ssi_types_1.parseDid)(args.did).did;
|
|
112
|
+
if (new URL(args.origin).origin !== args.origin) {
|
|
113
|
+
return Promise.reject(Error(`Origin ${args.origin} is not valid`));
|
|
114
|
+
}
|
|
115
|
+
if (new URL(args.origin).protocol !== 'https:') {
|
|
116
|
+
return Promise.reject(Error(`Origin ${args.origin} is not a https URL`));
|
|
117
|
+
}
|
|
118
|
+
if (args.issuanceDate && isNaN(Date.parse(args.issuanceDate))) {
|
|
119
|
+
return Promise.reject(Error(`IssuanceDate ${args.issuanceDate} is not a valid date`));
|
|
120
|
+
}
|
|
121
|
+
if (isNaN(Date.parse(args.expirationDate))) {
|
|
122
|
+
return Promise.reject(Error(`ExpirationDate ${args.expirationDate} is not a valid date`));
|
|
123
|
+
}
|
|
124
|
+
const credentialIssuance = typeof args.credentialIssuance === 'string'
|
|
125
|
+
? yield this.getCredentialIssuance(args.credentialIssuance)
|
|
126
|
+
: args.credentialIssuance;
|
|
127
|
+
return new wellknown_dids_client_1.WellKnownDidIssuer()
|
|
128
|
+
.issueDomainLinkageCredential({
|
|
129
|
+
did,
|
|
130
|
+
origin: args.origin,
|
|
131
|
+
issuanceDate: args.issuanceDate,
|
|
132
|
+
expirationDate: args.expirationDate,
|
|
133
|
+
options: args.options,
|
|
134
|
+
issueCallback: credentialIssuance,
|
|
135
|
+
})
|
|
136
|
+
.then((credential) => __awaiter(this, void 0, void 0, function* () {
|
|
137
|
+
if (args.save) {
|
|
138
|
+
yield this.saveDomainLinkageCredential(credential, context);
|
|
139
|
+
}
|
|
140
|
+
return credential;
|
|
141
|
+
}))
|
|
142
|
+
.catch((error) => Promise.reject(Error(`Unable to issue domain linkage credential for DID: ${did}. Error: ${error.message}`)));
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
/** {@inheritDoc IWellKnownDidIssuer.addLinkedDomainsService} */
|
|
146
|
+
addLinkedDomainsService(args, context) {
|
|
147
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
+
const did = (0, ssi_types_1.parseDid)(args.did).did;
|
|
149
|
+
if (new URL(args.origin).origin !== args.origin) {
|
|
150
|
+
return Promise.reject(Error(`Origin ${args.origin} is not valid`));
|
|
151
|
+
}
|
|
152
|
+
if (new URL(args.origin).protocol !== 'https:') {
|
|
153
|
+
return Promise.reject(Error(`Origin ${args.origin} is not a https URL`));
|
|
154
|
+
}
|
|
155
|
+
context.agent
|
|
156
|
+
.didManagerGet({ did })
|
|
157
|
+
.catch(() => Promise.reject(Error('DID cannot be found')))
|
|
158
|
+
.then((identifier) => __awaiter(this, void 0, void 0, function* () {
|
|
159
|
+
if (!identifier.services ||
|
|
160
|
+
identifier.services.filter(
|
|
161
|
+
// TODO we should also check for the origins in the serviceEndpoint objects when we start supporting multiple origins
|
|
162
|
+
(service) => service.type === wellknown_dids_client_1.ServiceTypesEnum.LINKED_DOMAINS && service.serviceEndpoint === args.origin).length === 0) {
|
|
163
|
+
yield context.agent.didManagerAddService({
|
|
164
|
+
did: identifier.did,
|
|
165
|
+
service: {
|
|
166
|
+
id: args.serviceId || (0, uuid_1.v4)(),
|
|
167
|
+
type: wellknown_dids_client_1.ServiceTypesEnum.LINKED_DOMAINS,
|
|
168
|
+
// TODO We should support a serviceEndpoint object here when we update to Veramo 3.1.6.next-165 or higher, as then we can support multiple origins
|
|
169
|
+
serviceEndpoint: args.origin,
|
|
170
|
+
},
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
}))
|
|
174
|
+
.catch((error) => Promise.reject(Error(`Unable to add LinkedDomains service to DID: ${args.did}. Error: ${error.message}`)));
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
getCredentialIssuance(callbackName) {
|
|
178
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
179
|
+
if (this.credentialIssuances[callbackName] === undefined) {
|
|
180
|
+
return Promise.reject(new Error(`Credential issuance not found for callbackName: ${callbackName}`));
|
|
181
|
+
}
|
|
182
|
+
return this.credentialIssuances[callbackName];
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
saveDomainLinkageCredential(credential, context) {
|
|
186
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
187
|
+
const vc = this.normalizeCredential(credential);
|
|
188
|
+
return context.agent.crsAddCredential({
|
|
189
|
+
credential: {
|
|
190
|
+
rawDocument: JSON.stringify(vc),
|
|
191
|
+
credentialRole: ssi_sdk_credential_store_1.CredentialRole.ISSUER,
|
|
192
|
+
regulationType: ssi_sdk_data_store_1.RegulationType.NON_REGULATED, // FIXME funke
|
|
193
|
+
kmsKeyRef: 'FIXME', // FIXME funke
|
|
194
|
+
identifierMethod: 'did',
|
|
195
|
+
issuerCorrelationId: ssi_types_1.CredentialMapper.issuerCorrelationIdFromIssuerType(vc.issuer),
|
|
196
|
+
issuerCorrelationType: ssi_sdk_credential_store_1.CredentialCorrelationType.DID,
|
|
197
|
+
subjectCorrelationId: ssi_types_1.CredentialMapper.issuerCorrelationIdFromIssuerType(vc.issuer), // FIXME get separate did for subject
|
|
198
|
+
subjectCorrelationType: ssi_sdk_credential_store_1.CredentialCorrelationType.DID,
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
normalizeCredential(credential) {
|
|
204
|
+
return typeof credential === 'string' ? (0, did_jwt_vc_1.normalizeCredential)(credential) : credential;
|
|
205
|
+
}
|
|
206
|
+
mapIssuances(issuances) {
|
|
207
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
208
|
+
const promises = issuances.map((issuance) => __awaiter(this, void 0, void 0, function* () {
|
|
209
|
+
return Object.assign(Object.assign({}, issuance), { issueCallback: typeof issuance.credentialIssuance === 'string'
|
|
210
|
+
? yield this.getCredentialIssuance(issuance.credentialIssuance)
|
|
211
|
+
: issuance.credentialIssuance });
|
|
212
|
+
}));
|
|
213
|
+
return Promise.all(promises);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
exports.WellKnownDidIssuer = WellKnownDidIssuer;
|
|
218
|
+
//# sourceMappingURL=WellKnownDidIssuer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WellKnownDidIssuer.js","sourceRoot":"","sources":["../../src/agent/WellKnownDidIssuer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IDidConfigurationResource } from '@sphereon/wellknown-dids-client';
|
|
2
|
+
import { VerifiableCredential } from '@veramo/core';
|
|
3
|
+
import { Credential } from '@veramo/data-store';
|
|
4
|
+
import { BaseEntity } from 'typeorm';
|
|
5
|
+
export declare class DidConfigurationResourceEntity extends BaseEntity {
|
|
6
|
+
origin: string;
|
|
7
|
+
context: string;
|
|
8
|
+
linkedDids: Array<Credential>;
|
|
9
|
+
createdAt: Date;
|
|
10
|
+
lastUpdatedAt: Date;
|
|
11
|
+
}
|
|
12
|
+
export declare const didConfigurationResourceFrom: (didConfigurationResource: DidConfigurationResourceEntity) => IDidConfigurationResource;
|
|
13
|
+
export declare const createCredentialEntity: (vci: VerifiableCredential) => Credential;
|
|
14
|
+
//# sourceMappingURL=DidConfigurationResourceEntity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DidConfigurationResourceEntity.d.ts","sourceRoot":"","sources":["../../src/entities/DidConfigurationResourceEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,yBAAyB,EAAkC,MAAM,iCAAiC,CAAA;AACpI,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,UAAU,EAAqB,MAAM,oBAAoB,CAAA;AAElE,OAAO,EAA4F,UAAU,EAAE,MAAM,SAAS,CAAA;AAE9H,qBACa,8BAA+B,SAAQ,UAAU;IAE5D,MAAM,EAAG,MAAM,CAAA;IAGf,OAAO,EAAG,MAAM,CAAA;IAKhB,UAAU,EAAG,KAAK,CAAC,UAAU,CAAC,CAAA;IAG9B,SAAS,EAAG,IAAI,CAAA;IAGhB,aAAa,EAAG,IAAI,CAAA;CACrB;AAED,eAAO,MAAM,4BAA4B,6BAA8B,8BAA8B,KAAG,yBAKvG,CAAA;AAUD,eAAO,MAAM,sBAAsB,QAAS,oBAAoB,KAAG,UAiDlE,CAAA"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.createCredentialEntity = exports.didConfigurationResourceFrom = exports.DidConfigurationResourceEntity = void 0;
|
|
13
|
+
const data_store_1 = require("@veramo/data-store");
|
|
14
|
+
const utils_1 = require("@veramo/utils");
|
|
15
|
+
const typeorm_1 = require("typeorm");
|
|
16
|
+
let DidConfigurationResourceEntity = class DidConfigurationResourceEntity extends typeorm_1.BaseEntity {
|
|
17
|
+
};
|
|
18
|
+
exports.DidConfigurationResourceEntity = DidConfigurationResourceEntity;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, typeorm_1.PrimaryColumn)({ nullable: false }),
|
|
21
|
+
__metadata("design:type", String)
|
|
22
|
+
], DidConfigurationResourceEntity.prototype, "origin", void 0);
|
|
23
|
+
__decorate([
|
|
24
|
+
(0, typeorm_1.Column)({ nullable: false }),
|
|
25
|
+
__metadata("design:type", String)
|
|
26
|
+
], DidConfigurationResourceEntity.prototype, "context", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, typeorm_1.ManyToMany)(() => data_store_1.Credential, (credential) => credential.hash, { nullable: false, cascade: true, onDelete: 'NO ACTION' }),
|
|
29
|
+
(0, typeorm_1.JoinTable)({ name: 'DidConfigurationResourceCredentials' }),
|
|
30
|
+
__metadata("design:type", Array)
|
|
31
|
+
], DidConfigurationResourceEntity.prototype, "linkedDids", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, typeorm_1.CreateDateColumn)({ name: 'created_at', nullable: false }),
|
|
34
|
+
__metadata("design:type", Date)
|
|
35
|
+
], DidConfigurationResourceEntity.prototype, "createdAt", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
(0, typeorm_1.UpdateDateColumn)({ name: 'last_updated_at', nullable: false }),
|
|
38
|
+
__metadata("design:type", Date)
|
|
39
|
+
], DidConfigurationResourceEntity.prototype, "lastUpdatedAt", void 0);
|
|
40
|
+
exports.DidConfigurationResourceEntity = DidConfigurationResourceEntity = __decorate([
|
|
41
|
+
(0, typeorm_1.Entity)('DidConfigurationResource')
|
|
42
|
+
], DidConfigurationResourceEntity);
|
|
43
|
+
const didConfigurationResourceFrom = (didConfigurationResource) => {
|
|
44
|
+
return {
|
|
45
|
+
'@context': didConfigurationResource.context,
|
|
46
|
+
linked_dids: linkedDidsFrom(didConfigurationResource.linkedDids),
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
exports.didConfigurationResourceFrom = didConfigurationResourceFrom;
|
|
50
|
+
const linkedDidsFrom = (credentials) => {
|
|
51
|
+
return credentials.map((credential) => {
|
|
52
|
+
var _a, _b, _c, _d;
|
|
53
|
+
return ((_b = (_a = credential === null || credential === void 0 ? void 0 : credential.raw) === null || _a === void 0 ? void 0 : _a.proof) === null || _b === void 0 ? void 0 : _b.type) === 'JwtProof2020' && typeof ((_d = (_c = credential === null || credential === void 0 ? void 0 : credential.raw) === null || _c === void 0 ? void 0 : _c.proof) === null || _d === void 0 ? void 0 : _d.jwt) === 'string'
|
|
54
|
+
? credential.raw.proof.jwt
|
|
55
|
+
: credential.raw;
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
const createCredentialEntity = (vci) => {
|
|
59
|
+
const vc = vci;
|
|
60
|
+
const credential = new data_store_1.Credential();
|
|
61
|
+
credential.context = (0, utils_1.asArray)(vc['@context']);
|
|
62
|
+
credential.type = (0, utils_1.asArray)(vc.type || []);
|
|
63
|
+
credential.id = vc.id;
|
|
64
|
+
if (vc.issuanceDate) {
|
|
65
|
+
credential.issuanceDate = new Date(vc.issuanceDate);
|
|
66
|
+
}
|
|
67
|
+
if (vc.expirationDate) {
|
|
68
|
+
credential.expirationDate = new Date(vc.expirationDate);
|
|
69
|
+
}
|
|
70
|
+
const issuer = new data_store_1.Identifier();
|
|
71
|
+
issuer.did = (0, utils_1.extractIssuer)(vc);
|
|
72
|
+
credential.issuer = issuer;
|
|
73
|
+
if (vc.credentialSubject.id) {
|
|
74
|
+
const subject = new data_store_1.Identifier();
|
|
75
|
+
subject.did = vc.credentialSubject.id;
|
|
76
|
+
credential.subject = subject;
|
|
77
|
+
}
|
|
78
|
+
credential.claims = [];
|
|
79
|
+
for (const type in vc.credentialSubject) {
|
|
80
|
+
if (vc.credentialSubject.hasOwnProperty(type)) {
|
|
81
|
+
const value = vc.credentialSubject[type];
|
|
82
|
+
if (type !== 'id') {
|
|
83
|
+
const isObj = typeof value === 'function' || (typeof value === 'object' && !!value);
|
|
84
|
+
const claim = new data_store_1.Claim();
|
|
85
|
+
claim.hash = (0, utils_1.computeEntryHash)(JSON.stringify(vc) + type);
|
|
86
|
+
claim.type = type;
|
|
87
|
+
claim.value = isObj ? JSON.stringify(value) : value;
|
|
88
|
+
claim.isObj = isObj;
|
|
89
|
+
claim.issuer = credential.issuer;
|
|
90
|
+
claim.subject = credential.subject;
|
|
91
|
+
claim.expirationDate = credential.expirationDate;
|
|
92
|
+
claim.issuanceDate = credential.issuanceDate;
|
|
93
|
+
claim.credentialType = credential.type;
|
|
94
|
+
claim.context = credential.context;
|
|
95
|
+
credential.claims.push(claim);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
credential.raw = vci;
|
|
100
|
+
return credential;
|
|
101
|
+
};
|
|
102
|
+
exports.createCredentialEntity = createCredentialEntity;
|
|
103
|
+
//# sourceMappingURL=DidConfigurationResourceEntity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DidConfigurationResourceEntity.js","sourceRoot":"","sources":["../../src/entities/DidConfigurationResourceEntity.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,116 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BaseEntity, Connection, MigrationInterface, QueryRunner } from 'typeorm';
|
|
3
|
-
import { IDidConfigurationResource, IIssueDomainLinkageCredentialOptions, IssuanceCallback, DomainLinkageCredential } from '@sphereon/wellknown-dids-client';
|
|
4
|
-
import { IPluginMethodMap, IAgentContext, IDIDManager, IAgentPlugin } from '@veramo/core';
|
|
5
|
-
import { OrPromise } from '@veramo/utils';
|
|
6
|
-
import { ICredentialStore } from '@sphereon/ssi-sdk.credential-store';
|
|
7
|
-
|
|
8
|
-
declare class DidConfigurationResourceEntity extends BaseEntity {
|
|
9
|
-
origin: string;
|
|
10
|
-
context: string;
|
|
11
|
-
linkedDids: Array<Credential>;
|
|
12
|
-
createdAt: Date;
|
|
13
|
-
lastUpdatedAt: Date;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
interface IWellKnownDidIssuer extends IPluginMethodMap {
|
|
17
|
-
addLinkedDomainsService(args: IAddLinkedDomainsServiceArgs, context: RequiredContext): Promise<void>;
|
|
18
|
-
getDidConfigurationResource(args: IGetDidConfigurationResourceArgs, context: RequiredContext): Promise<IDidConfigurationResource>;
|
|
19
|
-
issueDidConfigurationResource(args: IIssueDidConfigurationResourceArgs, context: RequiredContext): Promise<IDidConfigurationResource>;
|
|
20
|
-
issueDomainLinkageCredential(args: IIssueDomainLinkageCredentialArgs, context: RequiredContext): Promise<DomainLinkageCredential>;
|
|
21
|
-
registerCredentialIssuance(args: IRegisterIssueCredentialArgs, context: RequiredContext): Promise<void>;
|
|
22
|
-
removeCredentialIssuance(args: IRemoveCredentialIssuanceArgs, context: RequiredContext): Promise<boolean>;
|
|
23
|
-
saveDidConfigurationResource(args: ISaveDidConfigurationResourceArgs, context: RequiredContext): Promise<void>;
|
|
24
|
-
}
|
|
25
|
-
interface IWellKnownDidIssuerOptionsArgs {
|
|
26
|
-
credentialIssuances?: Record<string, IssuanceCallback>;
|
|
27
|
-
}
|
|
28
|
-
interface IRegisterIssueCredentialArgs {
|
|
29
|
-
callbackName: string;
|
|
30
|
-
credentialIssuance: IssuanceCallback;
|
|
31
|
-
}
|
|
32
|
-
interface IRemoveCredentialIssuanceArgs {
|
|
33
|
-
callbackName: string;
|
|
34
|
-
}
|
|
35
|
-
interface IIssueDidConfigurationResourceArgs {
|
|
36
|
-
issuances: Array<IIssueDomainLinkageCredentialArgs>;
|
|
37
|
-
credentialIssuance?: string | IssuanceCallback;
|
|
38
|
-
save?: boolean;
|
|
39
|
-
}
|
|
40
|
-
interface IIssueDomainLinkageCredentialArgs {
|
|
41
|
-
did: string;
|
|
42
|
-
origin: string;
|
|
43
|
-
serviceId?: string;
|
|
44
|
-
issuanceDate?: string;
|
|
45
|
-
expirationDate: string;
|
|
46
|
-
save?: boolean;
|
|
47
|
-
options: IIssueDomainLinkageCredentialOptions;
|
|
48
|
-
credentialIssuance?: string | IssuanceCallback;
|
|
49
|
-
}
|
|
50
|
-
interface IGetDidConfigurationResourceArgs {
|
|
51
|
-
origin: string;
|
|
52
|
-
}
|
|
53
|
-
interface IAddLinkedDomainsServiceArgs {
|
|
54
|
-
did: string;
|
|
55
|
-
origin: string;
|
|
56
|
-
serviceId?: string;
|
|
57
|
-
}
|
|
58
|
-
interface ISaveDidConfigurationResourceArgs {
|
|
59
|
-
origin: string;
|
|
60
|
-
didConfigurationResource: IDidConfigurationResource;
|
|
61
|
-
}
|
|
62
|
-
type RequiredContext = IAgentContext<IDIDManager & ICredentialStore>;
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* {@inheritDoc IWellKnownDidIssuer}
|
|
66
|
-
*/
|
|
67
|
-
declare class WellKnownDidIssuer implements IAgentPlugin {
|
|
68
|
-
private dbConnection;
|
|
69
|
-
readonly schema: any;
|
|
70
|
-
readonly methods: IWellKnownDidIssuer;
|
|
71
|
-
private readonly credentialIssuances;
|
|
72
|
-
private readonly didConfigurationResourceRelations;
|
|
73
|
-
constructor(dbConnection: OrPromise<Connection>, args?: IWellKnownDidIssuerOptionsArgs);
|
|
74
|
-
/** {@inheritDoc IWellKnownDidIssuer.registerSignatureVerification} */
|
|
75
|
-
private registerCredentialIssuance;
|
|
76
|
-
/** {@inheritDoc IWellKnownDidIssuer.removeSignatureVerification} */
|
|
77
|
-
private removeCredentialIssuance;
|
|
78
|
-
/** {@inheritDoc IWellKnownDidIssuer.issueDidConfigurationResource} */
|
|
79
|
-
private issueDidConfigurationResource;
|
|
80
|
-
/** {@inheritDoc IWellKnownDidIssuer.saveDidConfigurationResource} */
|
|
81
|
-
saveDidConfigurationResource(args: ISaveDidConfigurationResourceArgs, context: RequiredContext): Promise<void>;
|
|
82
|
-
/** {@inheritDoc IWellKnownDidIssuer.getDidConfigurationResource} */
|
|
83
|
-
getDidConfigurationResource(args: IGetDidConfigurationResourceArgs, context: RequiredContext): Promise<IDidConfigurationResource>;
|
|
84
|
-
/** {@inheritDoc IWellKnownDidIssuer.issueDomainLinkageCredential} */
|
|
85
|
-
issueDomainLinkageCredential(args: IIssueDomainLinkageCredentialArgs, context: RequiredContext): Promise<DomainLinkageCredential>;
|
|
86
|
-
/** {@inheritDoc IWellKnownDidIssuer.addLinkedDomainsService} */
|
|
87
|
-
addLinkedDomainsService(args: IAddLinkedDomainsServiceArgs, context: RequiredContext): Promise<void>;
|
|
88
|
-
private getCredentialIssuance;
|
|
89
|
-
private saveDomainLinkageCredential;
|
|
90
|
-
private normalizeCredential;
|
|
91
|
-
private mapIssuances;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
declare class CreateWellknownDidIssuer1661162010000 implements MigrationInterface {
|
|
95
|
-
name: string;
|
|
96
|
-
up(queryRunner: QueryRunner): Promise<void>;
|
|
97
|
-
down(queryRunner: QueryRunner): Promise<void>;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* The migrations array that SHOULD be used when initializing a TypeORM database connection.
|
|
102
|
-
*
|
|
103
|
-
* These ensure the correct creation of tables and the proper migrations of data when tables change between versions.
|
|
104
|
-
*
|
|
105
|
-
* @public
|
|
106
|
-
*/
|
|
107
|
-
declare const WellknownDidIssuerMigrations: (typeof CreateWellknownDidIssuer1661162010000)[];
|
|
108
|
-
|
|
1
|
+
import { DidConfigurationResourceEntity } from './entities/DidConfigurationResourceEntity';
|
|
109
2
|
/**
|
|
110
3
|
* @public
|
|
111
4
|
*/
|
|
112
5
|
declare const schema: any;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
export
|
|
6
|
+
export { schema };
|
|
7
|
+
export { DidConfigurationResourceEntity } from './entities/DidConfigurationResourceEntity';
|
|
8
|
+
export { WellKnownDidIssuer } from './agent/WellKnownDidIssuer';
|
|
9
|
+
export * from './types/IWellKnownDidIssuer';
|
|
10
|
+
export declare const WellknownDidIssuerEntities: (typeof DidConfigurationResourceEntity)[];
|
|
11
|
+
export { WellknownDidIssuerMigrations } from './migrations';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAA;AAE1F;;GAEG;AACH,QAAA,MAAM,MAAM,KAAmC,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB,OAAO,EAAE,8BAA8B,EAAE,MAAM,2CAA2C,CAAA;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,cAAc,6BAA6B,CAAA;AAC3C,eAAO,MAAM,0BAA0B,2CAAmC,CAAA;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAA"}
|