@sphereon/ssi-sdk.w3c-vc-api 0.14.2-unstable.13 → 0.14.2-unstable.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -11
- package/dist/api-functions.d.ts +1 -1
- package/dist/api-functions.d.ts.map +1 -1
- package/dist/api-functions.js +18 -18
- package/dist/api-functions.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/vc-api-server.d.ts +2 -2
- package/dist/vc-api-server.d.ts.map +1 -1
- package/dist/vc-api-server.js +1 -1
- package/dist/vc-api-server.js.map +1 -1
- package/package.json +10 -10
- package/src/api-functions.ts +1 -1
- package/src/types.ts +1 -1
- package/src/vc-api-server.ts +3 -3
package/README.md
CHANGED
|
@@ -40,18 +40,15 @@ curl -X POST\
|
|
|
40
40
|
"https://agent/credentials/issue"
|
|
41
41
|
-d '<json body below>'
|
|
42
42
|
```
|
|
43
|
+
|
|
43
44
|
Body:
|
|
45
|
+
|
|
44
46
|
```json
|
|
45
47
|
{
|
|
46
48
|
"verifiableCredential": {
|
|
47
|
-
"@context": [
|
|
48
|
-
"https://www.w3.org/2018/credentials/v1"
|
|
49
|
-
],
|
|
49
|
+
"@context": ["https://www.w3.org/2018/credentials/v1"],
|
|
50
50
|
"id": "https://example.com/8790171",
|
|
51
|
-
"type": [
|
|
52
|
-
"VerifiableCredential",
|
|
53
|
-
"GS1CompanyPrefixLicenseCredential"
|
|
54
|
-
],
|
|
51
|
+
"type": ["VerifiableCredential", "GS1CompanyPrefixLicenseCredential"],
|
|
55
52
|
"issuer": "did:web:example.com",
|
|
56
53
|
"issuanceDate": "2023-06-22T00:00:00.000Z",
|
|
57
54
|
"validUntil": "2024-06-22T00:00:00.000Z",
|
|
@@ -71,12 +68,9 @@ Body:
|
|
|
71
68
|
```
|
|
72
69
|
|
|
73
70
|
```json
|
|
74
|
-
{
|
|
75
|
-
|
|
76
|
-
}
|
|
71
|
+
{}
|
|
77
72
|
```
|
|
78
73
|
|
|
79
|
-
|
|
80
74
|
## Configure API
|
|
81
75
|
|
|
82
76
|
You can configure and build the API in multiple ways. This module also exposes functions for every endpoint, so you are
|
package/dist/api-functions.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ISingleEndpointOpts } from '@sphereon/ssi-
|
|
1
|
+
import { ISingleEndpointOpts } from '@sphereon/ssi-express-support';
|
|
2
2
|
import { Router } from 'express';
|
|
3
3
|
import { IIssueCredentialEndpointOpts, IRequiredContext, IVerifyCredentialEndpointOpts } from './types';
|
|
4
4
|
export declare function issueCredentialEndpoint(router: Router, context: IRequiredContext, opts?: IIssueCredentialEndpointOpts): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-functions.d.ts","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,mBAAmB,EAAqB,MAAM,
|
|
1
|
+
{"version":3,"file":"api-functions.d.ts","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,mBAAmB,EAAqB,MAAM,+BAA+B,CAAA;AAGjG,OAAO,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAE,4BAA4B,EAAE,gBAAgB,EAAmB,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAExH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,4BAA4B,QA6BrH;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,mBAAmB,QAe3G;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,mBAAmB,QAsB1G;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,6BAA6B,QAwBvH;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,mBAAmB,QAyB7G"}
|
package/dist/api-functions.js
CHANGED
|
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.deleteCredentialEndpoint = exports.verifyCredentialEndpoint = exports.getCredentialEndpoint = exports.getCredentialsEndpoint = exports.issueCredentialEndpoint = void 0;
|
|
13
13
|
const ssi_sdk_core_1 = require("@sphereon/ssi-sdk.core");
|
|
14
|
-
const
|
|
14
|
+
const ssi_express_support_1 = require("@sphereon/ssi-express-support");
|
|
15
15
|
const uuid_1 = require("uuid");
|
|
16
16
|
function issueCredentialEndpoint(router, context, opts) {
|
|
17
17
|
var _a;
|
|
@@ -20,12 +20,12 @@ function issueCredentialEndpoint(router, context, opts) {
|
|
|
20
20
|
return;
|
|
21
21
|
}
|
|
22
22
|
const path = (_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/issue';
|
|
23
|
-
router.post(path, (0,
|
|
23
|
+
router.post(path, (0, ssi_express_support_1.checkAuth)(opts === null || opts === void 0 ? void 0 : opts.endpoint), (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
24
24
|
var _b;
|
|
25
25
|
try {
|
|
26
26
|
const credential = request.body.credential;
|
|
27
27
|
if (!credential) {
|
|
28
|
-
return (0,
|
|
28
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, 'No credential supplied');
|
|
29
29
|
}
|
|
30
30
|
if (!credential.id) {
|
|
31
31
|
credential.id = `urn:uuid:${(0, uuid_1.v4)()}`;
|
|
@@ -41,7 +41,7 @@ function issueCredentialEndpoint(router, context, opts) {
|
|
|
41
41
|
return response.send({ verifiableCredential: vc });
|
|
42
42
|
}
|
|
43
43
|
catch (e) {
|
|
44
|
-
return (0,
|
|
44
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 500, e.message, e);
|
|
45
45
|
}
|
|
46
46
|
}));
|
|
47
47
|
}
|
|
@@ -53,14 +53,14 @@ function getCredentialsEndpoint(router, context, opts) {
|
|
|
53
53
|
return;
|
|
54
54
|
}
|
|
55
55
|
const path = (_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials';
|
|
56
|
-
router.get(path, (0,
|
|
56
|
+
router.get(path, (0, ssi_express_support_1.checkAuth)(opts === null || opts === void 0 ? void 0 : opts.endpoint), (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
57
57
|
try {
|
|
58
58
|
const uniqueVCs = yield context.agent.dataStoreORMGetVerifiableCredentials();
|
|
59
59
|
response.statusCode = 202;
|
|
60
60
|
return response.send(uniqueVCs.map((uVC) => uVC.verifiableCredential));
|
|
61
61
|
}
|
|
62
62
|
catch (e) {
|
|
63
|
-
return (0,
|
|
63
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 500, e.message, e);
|
|
64
64
|
}
|
|
65
65
|
}));
|
|
66
66
|
}
|
|
@@ -72,21 +72,21 @@ function getCredentialEndpoint(router, context, opts) {
|
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
74
|
const path = (_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/:id';
|
|
75
|
-
router.get(path, (0,
|
|
75
|
+
router.get(path, (0, ssi_express_support_1.checkAuth)(opts === null || opts === void 0 ? void 0 : opts.endpoint), (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
76
76
|
try {
|
|
77
77
|
const id = request.params.id;
|
|
78
78
|
if (!id) {
|
|
79
|
-
return (0,
|
|
79
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, 'no id provided');
|
|
80
80
|
}
|
|
81
81
|
let vcInfo = yield (0, ssi_sdk_core_1.getCredentialByIdOrHash)(context, id);
|
|
82
82
|
if (!vcInfo.vc) {
|
|
83
|
-
return (0,
|
|
83
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 404, `id ${id} not found`);
|
|
84
84
|
}
|
|
85
85
|
response.statusCode = 200;
|
|
86
86
|
return response.send(vcInfo.vc);
|
|
87
87
|
}
|
|
88
88
|
catch (e) {
|
|
89
|
-
return (0,
|
|
89
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 500, e.message, e);
|
|
90
90
|
}
|
|
91
91
|
}));
|
|
92
92
|
}
|
|
@@ -97,13 +97,13 @@ function verifyCredentialEndpoint(router, context, opts) {
|
|
|
97
97
|
console.log(`Verify credential endpoint is disabled`);
|
|
98
98
|
return;
|
|
99
99
|
}
|
|
100
|
-
router.post((_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/verify', (0,
|
|
100
|
+
router.post((_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/verify', (0, ssi_express_support_1.checkAuth)(opts === null || opts === void 0 ? void 0 : opts.endpoint), (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
101
101
|
try {
|
|
102
102
|
console.log(request.body);
|
|
103
103
|
const credential = request.body.verifiableCredential;
|
|
104
104
|
// const options: IIssueOptionsPayload = request.body.options
|
|
105
105
|
if (!credential) {
|
|
106
|
-
return (0,
|
|
106
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, 'No verifiable credential supplied');
|
|
107
107
|
}
|
|
108
108
|
const verifyResult = yield context.agent.verifyCredential({
|
|
109
109
|
credential,
|
|
@@ -113,7 +113,7 @@ function verifyCredentialEndpoint(router, context, opts) {
|
|
|
113
113
|
return response.send(verifyResult);
|
|
114
114
|
}
|
|
115
115
|
catch (e) {
|
|
116
|
-
return (0,
|
|
116
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 500, e.message, e);
|
|
117
117
|
}
|
|
118
118
|
}));
|
|
119
119
|
}
|
|
@@ -124,25 +124,25 @@ function deleteCredentialEndpoint(router, context, opts) {
|
|
|
124
124
|
console.log(`Delete credential endpoint is disabled`);
|
|
125
125
|
return;
|
|
126
126
|
}
|
|
127
|
-
router.delete((_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/:id', (0,
|
|
127
|
+
router.delete((_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/credentials/:id', (0, ssi_express_support_1.checkAuth)(opts === null || opts === void 0 ? void 0 : opts.endpoint), (request, response) => __awaiter(this, void 0, void 0, function* () {
|
|
128
128
|
try {
|
|
129
129
|
const id = request.params.id;
|
|
130
130
|
if (!id) {
|
|
131
|
-
return (0,
|
|
131
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, 'no id provided');
|
|
132
132
|
}
|
|
133
133
|
let vcInfo = yield (0, ssi_sdk_core_1.getCredentialByIdOrHash)(context, id);
|
|
134
134
|
if (!vcInfo.vc || !vcInfo.hash) {
|
|
135
|
-
return (0,
|
|
135
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 404, `id ${id} not found`);
|
|
136
136
|
}
|
|
137
137
|
const success = context.agent.dataStoreDeleteVerifiableCredential({ hash: vcInfo.hash });
|
|
138
138
|
if (!success) {
|
|
139
|
-
return (0,
|
|
139
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, `Could not delete Verifiable Credential with id ${id}`);
|
|
140
140
|
}
|
|
141
141
|
response.statusCode = 200;
|
|
142
142
|
return response.send();
|
|
143
143
|
}
|
|
144
144
|
catch (e) {
|
|
145
|
-
return (0,
|
|
145
|
+
return (0, ssi_express_support_1.sendErrorResponse)(response, 500, e.message, e);
|
|
146
146
|
}
|
|
147
147
|
}));
|
|
148
148
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-functions.js","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAgE;AAChE
|
|
1
|
+
{"version":3,"file":"api-functions.js","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GenericAuthArgs, ISingleEndpointOpts } from '@sphereon/ssi-
|
|
1
|
+
import { GenericAuthArgs, ISingleEndpointOpts } from '@sphereon/ssi-express-support';
|
|
2
2
|
import { IAgentContext, ICredentialIssuer, ICredentialPlugin, ICredentialVerifier, IDataStore, IDataStoreORM, IDIDManager, IKeyManager, IResolver } from '@veramo/core';
|
|
3
3
|
import { ProofFormat } from '@veramo/core/src/types/ICredentialIssuer';
|
|
4
4
|
export type IRequiredPlugins = IDataStore & IDataStoreORM & IDIDManager & IKeyManager & ICredentialIssuer & ICredentialVerifier & ICredentialPlugin & IResolver;
|
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,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACpF,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,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAEtE,MAAM,MAAM,gBAAgB,GAAG,UAAU,GACvC,aAAa,GACb,WAAW,GACX,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,SAAS,CAAA;AACX,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAA;AAI9D,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAA;IAEjC,mBAAmB,CAAC,EAAE,eAAe,CAAA;CACtC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,eAAe,CAAC,EAAE,4BAA4B,CAAA;IAC9C,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,gBAAgB,CAAC,EAAE,mBAAmB,CAAA;IACtC,gBAAgB,CAAC,EAAE,6BAA6B,CAAA;IAChD,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAA;AAEnE,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,aAAa,EAAE,CAAA;IAChC,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,4BAA6B,SAAQ,mBAAmB;IACvE,mBAAmB,CAAC,EAAE,eAAe,CAAA;IACrC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,MAAM,WAAW,6BAA8B,SAAQ,mBAAmB;IACxE,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"}
|
package/dist/vc-api-server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ExpressSupport } from '@sphereon/ssi-express-support';
|
|
2
2
|
import { TAgent } from '@veramo/core';
|
|
3
3
|
import express, { Express } from 'express';
|
|
4
4
|
import { IRequiredPlugins, IVCAPIOpts } from './types';
|
|
@@ -10,7 +10,7 @@ export declare class VcApiServer {
|
|
|
10
10
|
private readonly _router;
|
|
11
11
|
constructor(args: {
|
|
12
12
|
agent: TAgent<IRequiredPlugins>;
|
|
13
|
-
|
|
13
|
+
expressSupport: ExpressSupport;
|
|
14
14
|
opts?: IVCAPIOpts;
|
|
15
15
|
});
|
|
16
16
|
get agent(): TAgent<IRequiredPlugins>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-api-server.d.ts","sourceRoot":"","sources":["../src/vc-api-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vc-api-server.d.ts","sourceRoot":"","sources":["../src/vc-api-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,OAAO,OAAO,EAAE,EAAE,OAAO,EAAU,MAAM,SAAS,CAAA;AAQlD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEtD,qBAAa,WAAW;IACtB,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,CAE3B;IAED,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;gBAEpB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAAC,cAAc,EAAE,cAAc,CAAC;QAAC,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE;IAyCxG,IAAI,KAAK,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAEpC;IAED,IAAI,IAAI,IAAI,UAAU,GAAG,SAAS,CAEjC;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;CACF"}
|
package/dist/vc-api-server.js
CHANGED
|
@@ -23,7 +23,7 @@ class VcApiServer {
|
|
|
23
23
|
copyGlobalAuthToEndpoint(opts, 'verifyCredential');
|
|
24
24
|
}
|
|
25
25
|
this._opts = opts;
|
|
26
|
-
this._express = args.
|
|
26
|
+
this._express = args.expressSupport.express;
|
|
27
27
|
this._router = express_1.default.Router();
|
|
28
28
|
const context = (0, ssi_sdk_core_1.agentContext)(agent);
|
|
29
29
|
const features = (_c = (_b = opts === null || opts === void 0 ? void 0 : opts.issueCredentialOpts) === null || _b === void 0 ? void 0 : _b.enableFeatures) !== null && _c !== void 0 ? _c : ['vc-issue', 'vc-persist', 'vc-verify'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-api-server.js","sourceRoot":"","sources":["../src/vc-api-server.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAqD;AAIrD,sDAAkD;AAClD,mDAMwB;AAGxB,MAAa,WAAW;IACtB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAOD,YAAY,
|
|
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.14.2-unstable.
|
|
3
|
+
"version": "0.14.2-unstable.32+e4b4f77",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
"start:dev": "ts-node __tests__/agent.ts"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@sphereon/did-auth-siop": "0.3.2-unstable.
|
|
15
|
-
"@sphereon/ssi-
|
|
16
|
-
"@sphereon/ssi-sdk.
|
|
17
|
-
"@sphereon/ssi-sdk.kv-store-temp": "0.14.2-unstable.
|
|
18
|
-
"@sphereon/ssi-sdk.presentation-exchange": "0.14.2-unstable.
|
|
19
|
-
"@sphereon/ssi-types": "0.14.2-unstable.
|
|
14
|
+
"@sphereon/did-auth-siop": "0.3.2-unstable.8",
|
|
15
|
+
"@sphereon/ssi-express-support": "0.14.2-unstable.32+e4b4f77",
|
|
16
|
+
"@sphereon/ssi-sdk.core": "0.14.2-unstable.32+e4b4f77",
|
|
17
|
+
"@sphereon/ssi-sdk.kv-store-temp": "0.14.2-unstable.32+e4b4f77",
|
|
18
|
+
"@sphereon/ssi-sdk.presentation-exchange": "0.14.2-unstable.32+e4b4f77",
|
|
19
|
+
"@sphereon/ssi-types": "0.14.2-unstable.32+e4b4f77",
|
|
20
20
|
"@types/uuid": "^9.0.1",
|
|
21
21
|
"@veramo/core": "4.2.0",
|
|
22
22
|
"@veramo/credential-w3c": "4.2.0",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"@sphereon/did-uni-client": "^0.6.0",
|
|
35
35
|
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.13.0",
|
|
36
36
|
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.13.0",
|
|
37
|
-
"@sphereon/ssi-sdk.data-store": "0.14.2-unstable.
|
|
38
|
-
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.14.2-unstable.
|
|
37
|
+
"@sphereon/ssi-sdk.data-store": "0.14.2-unstable.32+e4b4f77",
|
|
38
|
+
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.14.2-unstable.32+e4b4f77",
|
|
39
39
|
"@types/body-parser": "^1.19.2",
|
|
40
40
|
"@types/cookie-parser": "^1.4.3",
|
|
41
41
|
"@types/cors": "^2.8.13",
|
|
@@ -86,5 +86,5 @@
|
|
|
86
86
|
"W3C",
|
|
87
87
|
"VC API"
|
|
88
88
|
],
|
|
89
|
-
"gitHead": "
|
|
89
|
+
"gitHead": "e4b4f77318fff6dfdf2e164d2b5b217ba0ff325c"
|
|
90
90
|
}
|
package/src/api-functions.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getCredentialByIdOrHash } from '@sphereon/ssi-sdk.core'
|
|
2
|
-
import { checkAuth, ISingleEndpointOpts, sendErrorResponse } from '@sphereon/ssi-
|
|
2
|
+
import { checkAuth, ISingleEndpointOpts, sendErrorResponse } from '@sphereon/ssi-express-support'
|
|
3
3
|
import { CredentialPayload } from '@veramo/core'
|
|
4
4
|
import { W3CVerifiableCredential } from '@veramo/core/src/types/vc-data-model'
|
|
5
5
|
import { Request, Response, Router } from 'express'
|
package/src/types.ts
CHANGED
package/src/vc-api-server.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { agentContext } from '@sphereon/ssi-sdk.core'
|
|
2
|
-
import {
|
|
2
|
+
import { ExpressSupport } from '@sphereon/ssi-express-support'
|
|
3
3
|
import { TAgent } from '@veramo/core'
|
|
4
4
|
|
|
5
5
|
import express, { Express, Router } from 'express'
|
|
@@ -22,7 +22,7 @@ export class VcApiServer {
|
|
|
22
22
|
private readonly _opts?: IVCAPIOpts
|
|
23
23
|
private readonly _router: Router
|
|
24
24
|
|
|
25
|
-
constructor(args: { agent: TAgent<IRequiredPlugins>;
|
|
25
|
+
constructor(args: { agent: TAgent<IRequiredPlugins>; expressSupport: ExpressSupport; opts?: IVCAPIOpts }) {
|
|
26
26
|
const { agent, opts } = args
|
|
27
27
|
this._agent = agent
|
|
28
28
|
if (opts?.endpointOpts?.globalAuth) {
|
|
@@ -34,7 +34,7 @@ export class VcApiServer {
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
this._opts = opts
|
|
37
|
-
this._express = args.
|
|
37
|
+
this._express = args.expressSupport.express
|
|
38
38
|
this._router = express.Router()
|
|
39
39
|
|
|
40
40
|
const context = agentContext(agent)
|