@sphereon/ssi-sdk.w3c-vc-api 0.13.1-unstable.13 → 0.13.1-unstable.18
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/api-functions.d.ts +27 -0
- package/dist/api-functions.d.ts.map +1 -0
- package/dist/api-functions.js +163 -0
- package/dist/api-functions.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +57 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/vc-api-server.d.ts +18 -0
- package/dist/vc-api-server.d.ts.map +1 -0
- package/dist/vc-api-server.js +98 -0
- package/dist/vc-api-server.js.map +1 -0
- package/package.json +11 -10
- package/src/api-functions.ts +183 -0
- package/src/index.ts +2 -1
- package/src/types.ts +68 -0
- package/src/vc-api-server.ts +85 -0
- package/dist/VCAPIServer.d.ts +0 -78
- package/dist/VCAPIServer.d.ts.map +0 -1
- package/dist/VCAPIServer.js +0 -245
- package/dist/VCAPIServer.js.map +0 -1
- package/src/VCAPIServer.ts +0 -283
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { VerifiableCredential } from '@veramo/core';
|
|
2
|
+
import { Router } from 'express';
|
|
3
|
+
import { IRequiredContext, IVCAPIIssueOpts } from './types';
|
|
4
|
+
export declare function issueCredentialEndpoint(router: Router, context: IRequiredContext, opts?: {
|
|
5
|
+
issueCredentialOpts?: IVCAPIIssueOpts;
|
|
6
|
+
issueCredentialPath?: string;
|
|
7
|
+
persistIssuedCredentials?: boolean;
|
|
8
|
+
}): void;
|
|
9
|
+
export declare function getCredentialsEndpoint(router: Router, context: IRequiredContext, opts?: {
|
|
10
|
+
getCredentialsPath?: string;
|
|
11
|
+
}): void;
|
|
12
|
+
export declare function getCredentialEndpoint(router: Router, context: IRequiredContext, opts?: {
|
|
13
|
+
getCredentialPath?: string;
|
|
14
|
+
}): void;
|
|
15
|
+
export declare function verifyCredentialEndpoint(router: Router, context: IRequiredContext, opts?: {
|
|
16
|
+
verifyCredentialPath?: string;
|
|
17
|
+
fetchRemoteContexts?: boolean;
|
|
18
|
+
}): void;
|
|
19
|
+
export declare function deleteCredentialEndpoint(router: Router, context: IRequiredContext, opts?: {
|
|
20
|
+
deleteCredentialsPath?: string;
|
|
21
|
+
}): void;
|
|
22
|
+
export declare function getCredentialByIdOrHash(context: IRequiredContext, idOrHash: string): Promise<{
|
|
23
|
+
id: string;
|
|
24
|
+
hash?: string;
|
|
25
|
+
vc?: VerifiableCredential;
|
|
26
|
+
}>;
|
|
27
|
+
//# sourceMappingURL=api-functions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-functions.d.ts","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAEtE,OAAO,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE3D,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE;IACL,mBAAmB,CAAC,EAAE,eAAe,CAAA;IACrC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC,QAwBF;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE;IACL,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,QAWF;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE;IACL,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,QAkBF;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE;IACL,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,QAqBF;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,EACzB,IAAI,CAAC,EAAE;IACL,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B,QAsBF;AAWD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IACT,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,oBAAoB,CAAA;CAC1B,CAAC,CA0BD"}
|
|
@@ -0,0 +1,163 @@
|
|
|
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.getCredentialByIdOrHash = exports.deleteCredentialEndpoint = exports.verifyCredentialEndpoint = exports.getCredentialEndpoint = exports.getCredentialsEndpoint = exports.issueCredentialEndpoint = void 0;
|
|
13
|
+
const uuid_1 = require("uuid");
|
|
14
|
+
function issueCredentialEndpoint(router, context, opts) {
|
|
15
|
+
var _a;
|
|
16
|
+
router.post((_a = opts === null || opts === void 0 ? void 0 : opts.issueCredentialPath) !== null && _a !== void 0 ? _a : '/credentials/issue', (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
var _b, _c;
|
|
18
|
+
try {
|
|
19
|
+
const credential = request.body.credential;
|
|
20
|
+
if (!credential) {
|
|
21
|
+
return sendErrorResponse(response, 400, 'No credential supplied');
|
|
22
|
+
}
|
|
23
|
+
if (!credential.id) {
|
|
24
|
+
credential.id = `urn:uuid:${(0, uuid_1.v4)()}`;
|
|
25
|
+
}
|
|
26
|
+
const issueOpts = opts === null || opts === void 0 ? void 0 : opts.issueCredentialOpts;
|
|
27
|
+
const vc = yield context.agent.createVerifiableCredential({
|
|
28
|
+
credential,
|
|
29
|
+
save: (_b = opts === null || opts === void 0 ? void 0 : opts.persistIssuedCredentials) !== null && _b !== void 0 ? _b : true,
|
|
30
|
+
proofFormat: (_c = issueOpts === null || issueOpts === void 0 ? void 0 : issueOpts.proofFormat) !== null && _c !== void 0 ? _c : 'lds',
|
|
31
|
+
fetchRemoteContexts: (issueOpts === null || issueOpts === void 0 ? void 0 : issueOpts.fetchRemoteContexts) || true,
|
|
32
|
+
});
|
|
33
|
+
response.statusCode = 201;
|
|
34
|
+
return response.send({ verifiableCredential: vc });
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
return sendErrorResponse(response, 500, e.message, e);
|
|
38
|
+
}
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
exports.issueCredentialEndpoint = issueCredentialEndpoint;
|
|
42
|
+
function getCredentialsEndpoint(router, context, opts) {
|
|
43
|
+
var _a;
|
|
44
|
+
router.get((_a = opts === null || opts === void 0 ? void 0 : opts.getCredentialsPath) !== null && _a !== void 0 ? _a : '/credentials', (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
try {
|
|
46
|
+
const uniqueVCs = yield context.agent.dataStoreORMGetVerifiableCredentials();
|
|
47
|
+
response.statusCode = 202;
|
|
48
|
+
return response.send(uniqueVCs.map((uVC) => uVC.verifiableCredential));
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
return sendErrorResponse(response, 500, e.message, e);
|
|
52
|
+
}
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
exports.getCredentialsEndpoint = getCredentialsEndpoint;
|
|
56
|
+
function getCredentialEndpoint(router, context, opts) {
|
|
57
|
+
var _a;
|
|
58
|
+
router.get((_a = opts === null || opts === void 0 ? void 0 : opts.getCredentialPath) !== null && _a !== void 0 ? _a : '/credentials/:id', (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
try {
|
|
60
|
+
const id = request.params.id;
|
|
61
|
+
if (!id) {
|
|
62
|
+
return sendErrorResponse(response, 400, 'no id provided');
|
|
63
|
+
}
|
|
64
|
+
let vcInfo = yield getCredentialByIdOrHash(context, id);
|
|
65
|
+
if (!vcInfo.vc) {
|
|
66
|
+
return sendErrorResponse(response, 404, `id ${id} not found`);
|
|
67
|
+
}
|
|
68
|
+
response.statusCode = 200;
|
|
69
|
+
return response.send(vcInfo.vc);
|
|
70
|
+
}
|
|
71
|
+
catch (e) {
|
|
72
|
+
return sendErrorResponse(response, 500, e.message, e);
|
|
73
|
+
}
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
76
|
+
exports.getCredentialEndpoint = getCredentialEndpoint;
|
|
77
|
+
function verifyCredentialEndpoint(router, context, opts) {
|
|
78
|
+
var _a;
|
|
79
|
+
router.post((_a = opts === null || opts === void 0 ? void 0 : opts.verifyCredentialPath) !== null && _a !== void 0 ? _a : '/credentials/verify', (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
try {
|
|
81
|
+
console.log(request.body);
|
|
82
|
+
const credential = request.body.verifiableCredential;
|
|
83
|
+
// const options: IIssueOptionsPayload = request.body.options
|
|
84
|
+
if (!credential) {
|
|
85
|
+
return sendErrorResponse(response, 400, 'No verifiable credential supplied');
|
|
86
|
+
}
|
|
87
|
+
const verifyResult = yield context.agent.verifyCredential({
|
|
88
|
+
credential,
|
|
89
|
+
fetchRemoteContexts: (opts === null || opts === void 0 ? void 0 : opts.fetchRemoteContexts) !== false,
|
|
90
|
+
});
|
|
91
|
+
response.statusCode = 200;
|
|
92
|
+
return response.send(verifyResult);
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
return sendErrorResponse(response, 500, e.message, e);
|
|
96
|
+
}
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
exports.verifyCredentialEndpoint = verifyCredentialEndpoint;
|
|
100
|
+
function deleteCredentialEndpoint(router, context, opts) {
|
|
101
|
+
var _a;
|
|
102
|
+
router.delete((_a = opts === null || opts === void 0 ? void 0 : opts.deleteCredentialsPath) !== null && _a !== void 0 ? _a : '/credentials/:id', (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
try {
|
|
104
|
+
const id = request.params.id;
|
|
105
|
+
if (!id) {
|
|
106
|
+
return sendErrorResponse(response, 400, 'no id provided');
|
|
107
|
+
}
|
|
108
|
+
let vcInfo = yield getCredentialByIdOrHash(context, id);
|
|
109
|
+
if (!vcInfo.vc || !vcInfo.hash) {
|
|
110
|
+
return sendErrorResponse(response, 404, `id ${id} not found`);
|
|
111
|
+
}
|
|
112
|
+
const success = context.agent.dataStoreDeleteVerifiableCredential({ hash: vcInfo.hash });
|
|
113
|
+
if (!success) {
|
|
114
|
+
return sendErrorResponse(response, 400, `Could not delete Verifiable Credential with id ${id}`);
|
|
115
|
+
}
|
|
116
|
+
response.statusCode = 200;
|
|
117
|
+
return response.send();
|
|
118
|
+
}
|
|
119
|
+
catch (e) {
|
|
120
|
+
return sendErrorResponse(response, 500, e.message, e);
|
|
121
|
+
}
|
|
122
|
+
}));
|
|
123
|
+
}
|
|
124
|
+
exports.deleteCredentialEndpoint = deleteCredentialEndpoint;
|
|
125
|
+
function sendErrorResponse(response, statusCode, message, error) {
|
|
126
|
+
console.log(message);
|
|
127
|
+
if (error) {
|
|
128
|
+
console.log(error);
|
|
129
|
+
}
|
|
130
|
+
response.statusCode = statusCode;
|
|
131
|
+
return response.status(statusCode).send(message);
|
|
132
|
+
}
|
|
133
|
+
function getCredentialByIdOrHash(context, idOrHash) {
|
|
134
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
let vc;
|
|
136
|
+
let hash;
|
|
137
|
+
const uniqueVCs = yield context.agent.dataStoreORMGetVerifiableCredentials({
|
|
138
|
+
where: [
|
|
139
|
+
{
|
|
140
|
+
column: 'id',
|
|
141
|
+
value: [idOrHash],
|
|
142
|
+
op: 'Equal',
|
|
143
|
+
},
|
|
144
|
+
],
|
|
145
|
+
});
|
|
146
|
+
if (uniqueVCs.length === 0) {
|
|
147
|
+
hash = idOrHash;
|
|
148
|
+
vc = yield context.agent.dataStoreGetVerifiableCredential({ hash });
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
const uniqueVC = uniqueVCs[0];
|
|
152
|
+
hash = uniqueVC.hash;
|
|
153
|
+
vc = uniqueVC.verifiableCredential;
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
vc,
|
|
157
|
+
id: idOrHash,
|
|
158
|
+
hash,
|
|
159
|
+
};
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
exports.getCredentialByIdOrHash = getCredentialByIdOrHash;
|
|
163
|
+
//# sourceMappingURL=api-functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-functions.js","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
/**
|
|
18
18
|
* @public
|
|
19
19
|
*/
|
|
20
|
-
__exportStar(require("./
|
|
20
|
+
__exportStar(require("./vc-api-server"), exports);
|
|
21
21
|
__exportStar(require("./types"), exports);
|
|
22
|
+
__exportStar(require("./api-functions"), exports);
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,kDAA+B;AAC/B,0CAAuB;AACvB,kDAA+B"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,62 @@
|
|
|
1
1
|
import { IAgentContext, ICredentialIssuer, ICredentialPlugin, ICredentialVerifier, IDataStore, IDataStoreORM, IDIDManager, IKeyManager, IResolver } from '@veramo/core';
|
|
2
2
|
import { IPresentationExchange } from '@sphereon/ssi-sdk.presentation-exchange';
|
|
3
|
+
import { ProofFormat } from '@veramo/core/src/types/ICredentialIssuer';
|
|
3
4
|
export type IRequiredPlugins = IDataStore & IDataStoreORM & IDIDManager & IKeyManager & ICredentialIssuer & ICredentialVerifier & IPresentationExchange & ICredentialPlugin & IResolver;
|
|
4
5
|
export type IRequiredContext = IAgentContext<IRequiredPlugins>;
|
|
6
|
+
export interface IVCAPIOpts {
|
|
7
|
+
pathOpts?: IVCAPIPathOpts;
|
|
8
|
+
issueCredentialOpts?: IVCAPIIssueOpts;
|
|
9
|
+
serverOpts?: IServerOpts;
|
|
10
|
+
}
|
|
11
|
+
export interface IServerOpts {
|
|
12
|
+
port?: number;
|
|
13
|
+
cookieSigningKey?: string;
|
|
14
|
+
hostname?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface IVCAPIPathOpts {
|
|
17
|
+
basePath?: string;
|
|
18
|
+
issueCredentialPath?: string;
|
|
19
|
+
getCredentialsPath?: string;
|
|
20
|
+
getCredentialPath?: string;
|
|
21
|
+
deleteCredentialPath?: string;
|
|
22
|
+
verifyCredentialPath?: string;
|
|
23
|
+
verifyPresentationPath?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface IVCAPIIssueOpts {
|
|
26
|
+
persistIssuedCredentials?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* The desired format for the VerifiablePresentation to be created.
|
|
29
|
+
*/
|
|
30
|
+
proofFormat: ProofFormat;
|
|
31
|
+
/**
|
|
32
|
+
* Remove payload members during JWT-JSON transformation. Defaults to `true`.
|
|
33
|
+
* See https://www.w3.org/TR/vc-data-model/#jwt-encoding
|
|
34
|
+
*/
|
|
35
|
+
removeOriginalFields?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* [Optional] The ID of the key that should sign this credential.
|
|
38
|
+
* If this is not specified, the first matching key will be used.
|
|
39
|
+
*/
|
|
40
|
+
keyRef?: string;
|
|
41
|
+
/**
|
|
42
|
+
* When dealing with JSON-LD you also MUST provide the proper contexts.
|
|
43
|
+
* Set this to `true` ONLY if you want the `@context` URLs to be fetched in case they are not preloaded.
|
|
44
|
+
* The context definitions SHOULD rather be provided at startup instead of being fetched.
|
|
45
|
+
*
|
|
46
|
+
* Defaults to `false`
|
|
47
|
+
*/
|
|
48
|
+
fetchRemoteContexts?: boolean;
|
|
49
|
+
}
|
|
50
|
+
export interface IIssueOptionsPayload {
|
|
51
|
+
created?: string;
|
|
52
|
+
challenge?: string;
|
|
53
|
+
domain?: string;
|
|
54
|
+
credentialStatus?: {
|
|
55
|
+
type: string;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
export interface ChallengeOptsPayload {
|
|
59
|
+
challenge?: string;
|
|
60
|
+
domain?: string;
|
|
61
|
+
}
|
|
5
62
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAEtE,MAAM,MAAM,gBAAgB,GAAG,UAAU,GACvC,aAAa,GACb,WAAW,GACX,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,qBAAqB,GACrB,iBAAiB,GACjB,SAAS,CAAA;AACX,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAA;AAE9D,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,mBAAmB,CAAC,EAAE,eAAe,CAAA;IAErC,UAAU,CAAC,EAAE,WAAW,CAAA;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAElC;;OAEG;IACH,WAAW,EAAE,WAAW,CAAA;IAExB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE;QACjB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { TAgent } from '@veramo/core';
|
|
2
|
+
import { Express } from 'express';
|
|
3
|
+
import { IRequiredPlugins, IVCAPIOpts } from './types';
|
|
4
|
+
export declare class VcApiServer {
|
|
5
|
+
private readonly _express;
|
|
6
|
+
private readonly _agent;
|
|
7
|
+
private readonly _opts?;
|
|
8
|
+
constructor(args: {
|
|
9
|
+
agent: TAgent<IRequiredPlugins>;
|
|
10
|
+
express?: Express;
|
|
11
|
+
opts?: IVCAPIOpts;
|
|
12
|
+
});
|
|
13
|
+
get agent(): TAgent<IRequiredPlugins>;
|
|
14
|
+
get opts(): IVCAPIOpts | undefined;
|
|
15
|
+
get express(): Express;
|
|
16
|
+
private setupExpress;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=vc-api-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vc-api-server.d.ts","sourceRoot":"","sources":["../src/vc-api-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAIrC,OAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAQ1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEtD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAY;gBAEvB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE;IAyB3F,IAAI,KAAK,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAEpC;IAED,IAAI,IAAI,IAAI,UAAU,GAAG,SAAS,CAEjC;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,OAAO,CAAC,YAAY;CA2BrB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.VcApiServer = void 0;
|
|
30
|
+
const ssi_sdk_core_1 = require("@sphereon/ssi-sdk.core");
|
|
31
|
+
const body_parser_1 = __importDefault(require("body-parser"));
|
|
32
|
+
const cookie_parser_1 = __importDefault(require("cookie-parser"));
|
|
33
|
+
const dotenv = __importStar(require("dotenv-flow"));
|
|
34
|
+
const express_1 = __importDefault(require("express"));
|
|
35
|
+
const api_functions_1 = require("./api-functions");
|
|
36
|
+
class VcApiServer {
|
|
37
|
+
constructor(args) {
|
|
38
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
39
|
+
const { agent, opts } = args;
|
|
40
|
+
this._agent = agent;
|
|
41
|
+
this._opts = opts;
|
|
42
|
+
const existingExpress = !!args.express;
|
|
43
|
+
this._express = (_a = args.express) !== null && _a !== void 0 ? _a : (0, express_1.default)();
|
|
44
|
+
this.setupExpress(existingExpress);
|
|
45
|
+
const router = express_1.default.Router();
|
|
46
|
+
const context = (0, ssi_sdk_core_1.agentContext)(agent);
|
|
47
|
+
// Credential endpoints
|
|
48
|
+
(0, api_functions_1.issueCredentialEndpoint)(router, context, {
|
|
49
|
+
issueCredentialOpts: opts === null || opts === void 0 ? void 0 : opts.issueCredentialOpts,
|
|
50
|
+
issueCredentialPath: (_b = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _b === void 0 ? void 0 : _b.issueCredentialPath,
|
|
51
|
+
});
|
|
52
|
+
(0, api_functions_1.getCredentialEndpoint)(router, context, { getCredentialPath: (_c = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _c === void 0 ? void 0 : _c.getCredentialPath });
|
|
53
|
+
(0, api_functions_1.getCredentialsEndpoint)(router, context, { getCredentialsPath: (_d = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _d === void 0 ? void 0 : _d.getCredentialsPath });
|
|
54
|
+
(0, api_functions_1.deleteCredentialEndpoint)(router, context, { deleteCredentialsPath: (_e = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _e === void 0 ? void 0 : _e.deleteCredentialPath }); // not in spec. TODO: Authz
|
|
55
|
+
(0, api_functions_1.verifyCredentialEndpoint)(router, context, {
|
|
56
|
+
verifyCredentialPath: (_f = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _f === void 0 ? void 0 : _f.verifyCredentialPath,
|
|
57
|
+
fetchRemoteContexts: (_g = opts === null || opts === void 0 ? void 0 : opts.issueCredentialOpts) === null || _g === void 0 ? void 0 : _g.fetchRemoteContexts,
|
|
58
|
+
});
|
|
59
|
+
this._express.use((_j = (_h = opts === null || opts === void 0 ? void 0 : opts.pathOpts) === null || _h === void 0 ? void 0 : _h.basePath) !== null && _j !== void 0 ? _j : '', router);
|
|
60
|
+
}
|
|
61
|
+
get agent() {
|
|
62
|
+
return this._agent;
|
|
63
|
+
}
|
|
64
|
+
get opts() {
|
|
65
|
+
return this._opts;
|
|
66
|
+
}
|
|
67
|
+
get express() {
|
|
68
|
+
return this._express;
|
|
69
|
+
}
|
|
70
|
+
setupExpress(existingExpress) {
|
|
71
|
+
var _a, _b, _c, _d, _e, _f;
|
|
72
|
+
dotenv.config();
|
|
73
|
+
if (!existingExpress) {
|
|
74
|
+
const port = ((_b = (_a = this.opts) === null || _a === void 0 ? void 0 : _a.serverOpts) === null || _b === void 0 ? void 0 : _b.port) || process.env.PORT || 5000;
|
|
75
|
+
const secret = ((_d = (_c = this.opts) === null || _c === void 0 ? void 0 : _c.serverOpts) === null || _d === void 0 ? void 0 : _d.cookieSigningKey) || process.env.COOKIE_SIGNING_KEY;
|
|
76
|
+
const hostname = ((_f = (_e = this.opts) === null || _e === void 0 ? void 0 : _e.serverOpts) === null || _f === void 0 ? void 0 : _f.hostname) || '0.0.0.0';
|
|
77
|
+
this._express.use((req, res, next) => {
|
|
78
|
+
res.header('Access-Control-Allow-Origin', '*');
|
|
79
|
+
// Request methods you wish to allow
|
|
80
|
+
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
|
|
81
|
+
// Request headers you wish to allow
|
|
82
|
+
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
|
|
83
|
+
// Set to true if you need the website to include cookies in the requests sent
|
|
84
|
+
// to the API (e.g. in case you use sessions)
|
|
85
|
+
res.setHeader('Access-Control-Allow-Credentials', 'true');
|
|
86
|
+
next();
|
|
87
|
+
});
|
|
88
|
+
// this.express.use(cors({ credentials: true }));
|
|
89
|
+
// this.express.use('/proxy', proxy('www.gssoogle.com'));
|
|
90
|
+
this._express.use(body_parser_1.default.urlencoded({ extended: true }));
|
|
91
|
+
this._express.use(body_parser_1.default.json());
|
|
92
|
+
this._express.use((0, cookie_parser_1.default)(secret));
|
|
93
|
+
this._express.listen(port, hostname, () => console.log(`Listening on ${hostname}, port ${port}`));
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.VcApiServer = VcApiServer;
|
|
98
|
+
//# sourceMappingURL=vc-api-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vc-api-server.js","sourceRoot":"","sources":["../src/vc-api-server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk.w3c-vc-api",
|
|
3
|
-
"version": "0.13.1-unstable.
|
|
3
|
+
"version": "0.13.1-unstable.18+203d050",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
"build": "tsc --build",
|
|
9
9
|
"build:clean": "tsc --build --clean && tsc --build",
|
|
10
10
|
"start:prod": "node build/index.js",
|
|
11
|
-
"start:dev": "ts-node __tests__/
|
|
11
|
+
"start:dev": "ts-node __tests__/agent.ts"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@sphereon/did-auth-siop": "0.3.2-unstable.6",
|
|
15
|
-
"@sphereon/ssi-sdk.
|
|
16
|
-
"@sphereon/ssi-sdk.
|
|
17
|
-
"@sphereon/ssi-
|
|
15
|
+
"@sphereon/ssi-sdk.core": "0.13.1-unstable.18+203d050",
|
|
16
|
+
"@sphereon/ssi-sdk.kv-store-temp": "0.13.1-unstable.18+203d050",
|
|
17
|
+
"@sphereon/ssi-sdk.presentation-exchange": "0.13.1-unstable.18+203d050",
|
|
18
|
+
"@sphereon/ssi-types": "0.13.1-unstable.18+203d050",
|
|
18
19
|
"@types/uuid": "^9.0.1",
|
|
19
20
|
"@veramo/core": "4.2.0",
|
|
20
21
|
"@veramo/credential-w3c": "4.2.0",
|
|
@@ -32,10 +33,10 @@
|
|
|
32
33
|
"@sphereon/did-uni-client": "^0.6.0",
|
|
33
34
|
"@sphereon/pex": "^2.0.1",
|
|
34
35
|
"@sphereon/pex-models": "^2.0.2",
|
|
35
|
-
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.12.
|
|
36
|
-
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.12.
|
|
37
|
-
"@sphereon/ssi-sdk.data-store": "0.13.1-unstable.
|
|
38
|
-
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.13.1-unstable.
|
|
36
|
+
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.12.2-next.4",
|
|
37
|
+
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.12.2-next.4",
|
|
38
|
+
"@sphereon/ssi-sdk.data-store": "0.13.1-unstable.18+203d050",
|
|
39
|
+
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.13.1-unstable.18+203d050",
|
|
39
40
|
"@types/body-parser": "^1.19.2",
|
|
40
41
|
"@types/cookie-parser": "^1.4.3",
|
|
41
42
|
"@types/cors": "^2.8.13",
|
|
@@ -89,5 +90,5 @@
|
|
|
89
90
|
"OpenID Connect",
|
|
90
91
|
"Authenticator"
|
|
91
92
|
],
|
|
92
|
-
"gitHead": "
|
|
93
|
+
"gitHead": "203d050d48bb12709ba6fe6ae5c30b5931ccb5fb"
|
|
93
94
|
}
|