@sphereon/ssi-sdk.vc-status-list-issuer-rest-api 0.32.1-feature.VDX.341.57 → 0.32.1-fix.142
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.map +1 -1
- package/dist/api-functions.js +6 -4
- package/dist/api-functions.js.map +1 -1
- package/package.json +11 -10
- package/src/api-functions.ts +14 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-functions.d.ts","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"AAQA,OAAO,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,EAAE,iCAAiC,EAAE,gBAAgB,EAAE,+BAA+B,EAAiC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"api-functions.d.ts","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"AAQA,OAAO,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,EAAE,iCAAiC,EAAE,gBAAgB,EAAE,+BAA+B,EAAiC,MAAM,SAAS,CAAA;AAK7I,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,iCAAiC,QAmB7H;AAcD,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,iCAAiC,QAkBjI;AAED,wBAAgB,0CAA0C,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,iCAAiC,QA0D5I;AACD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,+BAA+B,QAwEvH"}
|
package/dist/api-functions.js
CHANGED
|
@@ -20,6 +20,7 @@ const ssi_express_support_1 = require("@sphereon/ssi-express-support");
|
|
|
20
20
|
const ssi_sdk_vc_status_list_1 = require("@sphereon/ssi-sdk.vc-status-list");
|
|
21
21
|
const ssi_sdk_vc_status_list_issuer_drivers_1 = require("@sphereon/ssi-sdk.vc-status-list-issuer-drivers");
|
|
22
22
|
const debug_1 = __importDefault(require("debug"));
|
|
23
|
+
const ssi_types_1 = require("@sphereon/ssi-types");
|
|
23
24
|
const debug = (0, debug_1.default)('sphereon:ssi-sdk:status-list');
|
|
24
25
|
function createNewStatusListEndpoint(router, context, opts) {
|
|
25
26
|
var _a;
|
|
@@ -82,7 +83,7 @@ function getStatusListCredentialIndexStatusEndpoint(router, context, opts) {
|
|
|
82
83
|
}
|
|
83
84
|
const path = (_a = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _a !== void 0 ? _a : '/status-lists/:index/status/index/:statusListIndex';
|
|
84
85
|
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* () {
|
|
85
|
-
var _a, _b, _c, _d;
|
|
86
|
+
var _a, _b, _c, _d, _e;
|
|
86
87
|
try {
|
|
87
88
|
//todo: Check index against correlationId first. Then match originalUrl against statusList id
|
|
88
89
|
const statusListIndexStr = request.params.statusListIndex;
|
|
@@ -112,7 +113,8 @@ function getStatusListCredentialIndexStatusEndpoint(router, context, opts) {
|
|
|
112
113
|
correlationId: details.correlationId,
|
|
113
114
|
errorOnNotFound: false,
|
|
114
115
|
});
|
|
115
|
-
const
|
|
116
|
+
const type = details.type === ssi_types_1.StatusListType.StatusList2021 ? 'StatusList2021Entry' : details.type;
|
|
117
|
+
const status = yield (0, ssi_sdk_vc_status_list_1.checkStatusIndexFromStatusListCredential)(Object.assign(Object.assign({ statusListCredential: details.statusListCredential }, (details.type === ssi_types_1.StatusListType.StatusList2021 ? { statusPurpose: (_e = details.statusList2021) === null || _e === void 0 ? void 0 : _e.statusPurpose } : {})), { type, id: details.id, statusListIndex }));
|
|
116
118
|
if (!entry) {
|
|
117
119
|
// The fact we have nothing on it means the status is okay
|
|
118
120
|
entry = {
|
|
@@ -176,11 +178,11 @@ function updateW3CStatusEndpoint(router, context, opts) {
|
|
|
176
178
|
if (!updateItem.status) {
|
|
177
179
|
return (0, ssi_express_support_1.sendErrorResponse)(response, 400, `Required 'status' value was missing in the credentialStatus array for credentialId ${credentialId}`);
|
|
178
180
|
}
|
|
179
|
-
const value = updateItem.status === '0' || updateItem.status.toLowerCase() === 'false' ?
|
|
181
|
+
const value = updateItem.status === '0' || updateItem.status.toLowerCase() === 'false' ? 0 : 1;
|
|
180
182
|
const statusList = statusListId !== null && statusListId !== void 0 ? statusListId : statusListEntry.statusList;
|
|
181
183
|
yield driver.updateStatusListEntry(Object.assign(Object.assign({}, statusListEntry), { statusListIndex, statusList, credentialId, value: value ? '1' : '0' }));
|
|
182
184
|
// todo: optimize. We are now creating a new VC for every item passed in. Probably wise to look at DB as well
|
|
183
|
-
details = yield (0, ssi_sdk_vc_status_list_1.updateStatusIndexFromStatusListCredential)({ statusListCredential, statusListIndex, value, keyRef: opts.keyRef }, context);
|
|
185
|
+
details = yield (0, ssi_sdk_vc_status_list_1.updateStatusIndexFromStatusListCredential)({ statusListCredential: statusListCredential, statusListIndex, value, keyRef: opts.keyRef }, context);
|
|
184
186
|
details = yield driver.updateStatusList({ statusListCredential: details.statusListCredential });
|
|
185
187
|
}
|
|
186
188
|
response.statusCode = 200;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-functions.js","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"api-functions.js","sourceRoot":"","sources":["../src/api-functions.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk.vc-status-list-issuer-rest-api",
|
|
3
3
|
"description": "Sphereon SSI-SDK plugin for Status List management, like StatusList2021. Issuer drivers module",
|
|
4
|
-
"version": "0.32.1-
|
|
4
|
+
"version": "0.32.1-fix.142+84bbb0fc",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -12,14 +12,15 @@
|
|
|
12
12
|
"start:dev2": "node --experimental-specifier-resolution=node --loader ts-node/esm __tests__/agent.ts"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@sphereon/ssi-express-support": "0.32.1-
|
|
15
|
+
"@sphereon/ssi-express-support": "0.32.1-fix.142+84bbb0fc",
|
|
16
16
|
"@sphereon/ssi-sdk-ext.did-utils": "0.27.0",
|
|
17
17
|
"@sphereon/ssi-sdk-ext.identifier-resolution": "0.27.0",
|
|
18
|
-
"@sphereon/ssi-sdk.
|
|
19
|
-
"@sphereon/ssi-sdk.
|
|
20
|
-
"@sphereon/ssi-sdk.
|
|
21
|
-
"@sphereon/ssi-sdk.vc-status-list
|
|
22
|
-
"@sphereon/ssi-
|
|
18
|
+
"@sphereon/ssi-sdk-ext.jwt-service": "0.27.0",
|
|
19
|
+
"@sphereon/ssi-sdk.core": "0.32.1-fix.142+84bbb0fc",
|
|
20
|
+
"@sphereon/ssi-sdk.data-store": "0.32.1-fix.142+84bbb0fc",
|
|
21
|
+
"@sphereon/ssi-sdk.vc-status-list": "0.32.1-fix.142+84bbb0fc",
|
|
22
|
+
"@sphereon/ssi-sdk.vc-status-list-issuer-drivers": "0.32.1-fix.142+84bbb0fc",
|
|
23
|
+
"@sphereon/ssi-types": "0.32.1-fix.142+84bbb0fc",
|
|
23
24
|
"@sphereon/vc-status-list": "7.0.0-next.0",
|
|
24
25
|
"@veramo/core": "4.2.0",
|
|
25
26
|
"debug": "^4.3.5",
|
|
@@ -33,9 +34,9 @@
|
|
|
33
34
|
"@sphereon/did-uni-client": "^0.6.3",
|
|
34
35
|
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.27.0",
|
|
35
36
|
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.27.0",
|
|
36
|
-
"@sphereon/ssi-sdk.agent-config": "0.32.1-
|
|
37
|
+
"@sphereon/ssi-sdk.agent-config": "0.32.1-fix.142+84bbb0fc",
|
|
37
38
|
"@sphereon/ssi-sdk.data-store": "workspace:*",
|
|
38
|
-
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.32.1-
|
|
39
|
+
"@sphereon/ssi-sdk.vc-handler-ld-local": "0.32.1-fix.142+84bbb0fc",
|
|
39
40
|
"@types/body-parser": "^1.19.5",
|
|
40
41
|
"@types/cookie-parser": "^1.4.7",
|
|
41
42
|
"@types/cors": "^2.8.17",
|
|
@@ -79,5 +80,5 @@
|
|
|
79
80
|
"StatusList2021"
|
|
80
81
|
],
|
|
81
82
|
"nx": {},
|
|
82
|
-
"gitHead": "
|
|
83
|
+
"gitHead": "84bbb0fc66ce12a9a453054e4f39306c9871547f"
|
|
83
84
|
}
|
package/src/api-functions.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { getDriver } from '@sphereon/ssi-sdk.vc-status-list-issuer-drivers'
|
|
|
8
8
|
import Debug from 'debug'
|
|
9
9
|
import { Request, Response, Router } from 'express'
|
|
10
10
|
import { ICredentialStatusListEndpointOpts, IRequiredContext, IW3CredentialStatusEndpointOpts, UpdateCredentialStatusRequest } from './types'
|
|
11
|
+
import { StatusListType } from '@sphereon/ssi-types'
|
|
11
12
|
|
|
12
13
|
const debug = Debug('sphereon:ssi-sdk:status-list')
|
|
13
14
|
|
|
@@ -100,7 +101,14 @@ export function getStatusListCredentialIndexStatusEndpoint(router: Router, conte
|
|
|
100
101
|
correlationId: details.correlationId,
|
|
101
102
|
errorOnNotFound: false,
|
|
102
103
|
})
|
|
103
|
-
const
|
|
104
|
+
const type = details.type === StatusListType.StatusList2021 ? 'StatusList2021Entry' : details.type
|
|
105
|
+
const status = await checkStatusIndexFromStatusListCredential({
|
|
106
|
+
statusListCredential: details.statusListCredential,
|
|
107
|
+
...(details.type === StatusListType.StatusList2021 ? { statusPurpose: details.statusList2021?.statusPurpose } : {}),
|
|
108
|
+
type,
|
|
109
|
+
id: details.id,
|
|
110
|
+
statusListIndex,
|
|
111
|
+
})
|
|
104
112
|
if (!entry) {
|
|
105
113
|
// The fact we have nothing on it means the status is okay
|
|
106
114
|
entry = {
|
|
@@ -170,12 +178,15 @@ export function updateW3CStatusEndpoint(router: Router, context: IRequiredContex
|
|
|
170
178
|
`Required 'status' value was missing in the credentialStatus array for credentialId ${credentialId}`,
|
|
171
179
|
)
|
|
172
180
|
}
|
|
173
|
-
const value = updateItem.status === '0' || updateItem.status.toLowerCase() === 'false' ?
|
|
181
|
+
const value = updateItem.status === '0' || updateItem.status.toLowerCase() === 'false' ? 0 : 1
|
|
174
182
|
const statusList = statusListId ?? statusListEntry.statusList
|
|
175
183
|
await driver.updateStatusListEntry({ ...statusListEntry, statusListIndex, statusList, credentialId, value: value ? '1' : '0' })
|
|
176
184
|
|
|
177
185
|
// todo: optimize. We are now creating a new VC for every item passed in. Probably wise to look at DB as well
|
|
178
|
-
details = await updateStatusIndexFromStatusListCredential(
|
|
186
|
+
details = await updateStatusIndexFromStatusListCredential(
|
|
187
|
+
{ statusListCredential: statusListCredential, statusListIndex, value, keyRef: opts.keyRef },
|
|
188
|
+
context,
|
|
189
|
+
)
|
|
179
190
|
details = await driver.updateStatusList({ statusListCredential: details.statusListCredential })
|
|
180
191
|
}
|
|
181
192
|
|