@sphereon/ssi-sdk.vc-status-list-issuer-drivers 0.32.1-fix.160 → 0.32.1-next.113

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/drivers.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { DataSources } from '@sphereon/ssi-sdk.agent-config';
2
2
  import { IAddStatusListEntryArgs, IGetStatusListEntryByCredentialIdArgs, IGetStatusListEntryByIndexArgs, IStatusListEntryEntity, StatusListStore } from '@sphereon/ssi-sdk.data-store';
3
- import { StatusList2021EntryCredentialStatus, StatusListOAuthEntryCredentialStatus, StatusListResult } from '@sphereon/ssi-sdk.vc-status-list';
4
- import { StatusListCredentialIdMode, StatusListDriverType, StatusListType, StatusListCredential } from '@sphereon/ssi-types';
3
+ import { StatusList2021EntryCredentialStatus, StatusListDetails } from '@sphereon/ssi-sdk.vc-status-list';
4
+ import { OriginalVerifiableCredential, StatusListCredentialIdMode, StatusListDriverType } from '@sphereon/ssi-types';
5
5
  import { DataSource } from 'typeorm';
6
6
  import { IStatusListDriver } from './types';
7
7
  export interface StatusListManagementOptions {
@@ -44,20 +44,17 @@ export declare class AgentDataSourceStatusListDriver implements IStatusListDrive
44
44
  getOptions(): DriverOptions;
45
45
  getType(): StatusListDriverType;
46
46
  createStatusList(args: {
47
- statusListCredential: StatusListCredential;
47
+ statusListCredential: OriginalVerifiableCredential;
48
48
  correlationId?: string;
49
49
  credentialIdMode?: StatusListCredentialIdMode;
50
- }): Promise<StatusListResult>;
50
+ }): Promise<StatusListDetails>;
51
51
  updateStatusList(args: {
52
- statusListCredential: StatusListCredential;
52
+ statusListCredential: OriginalVerifiableCredential;
53
53
  correlationId: string;
54
- type: StatusListType;
55
- }): Promise<StatusListResult>;
54
+ }): Promise<StatusListDetails>;
56
55
  deleteStatusList(): Promise<boolean>;
57
- private isStatusList2021Entity;
58
- private isOAuthStatusListEntity;
59
56
  updateStatusListEntry(args: IAddStatusListEntryArgs): Promise<{
60
- credentialStatus: StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus;
57
+ credentialStatus: StatusList2021EntryCredentialStatus;
61
58
  statusListEntry: IStatusListEntryEntity;
62
59
  }>;
63
60
  getStatusListEntryByCredentialId(args: IGetStatusListEntryByCredentialIdArgs): Promise<IStatusListEntryEntity | undefined>;
@@ -71,7 +68,7 @@ export declare class AgentDataSourceStatusListDriver implements IStatusListDrive
71
68
  }): Promise<number>;
72
69
  getStatusList(args?: {
73
70
  correlationId?: string;
74
- }): Promise<StatusListResult>;
71
+ }): Promise<StatusListDetails>;
75
72
  isStatusListIndexInUse(): Promise<boolean>;
76
73
  }
77
74
  //# sourceMappingURL=drivers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"drivers.d.ts","sourceRoot":"","sources":["../src/drivers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drivers.d.ts","sourceRoot":"","sources":["../src/drivers.ts"],"names":[],"mappings":"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"}
package/dist/drivers.js CHANGED
@@ -16,8 +16,6 @@ const ssi_sdk_agent_config_1 = require("@sphereon/ssi-sdk.agent-config");
16
16
  const ssi_sdk_data_store_1 = require("@sphereon/ssi-sdk.data-store");
17
17
  const ssi_sdk_vc_status_list_1 = require("@sphereon/ssi-sdk.vc-status-list");
18
18
  const ssi_types_1 = require("@sphereon/ssi-types");
19
- const status_list_adapters_1 = require("./status-list-adapters");
20
- const StatusListEntities_1 = require("@sphereon/ssi-sdk.data-store/dist/entities/statusList/StatusListEntities");
21
19
  function getOptions(args) {
22
20
  return {
23
21
  id: args.id,
@@ -100,10 +98,22 @@ class AgentDataSourceStatusListDriver {
100
98
  }
101
99
  const credentialIdMode = (_b = args.credentialIdMode) !== null && _b !== void 0 ? _b : ssi_types_1.StatusListCredentialIdMode.ISSUANCE;
102
100
  const details = yield (0, ssi_sdk_vc_status_list_1.statusListCredentialToDetails)(Object.assign(Object.assign({}, args), { correlationId, driverType: this.getType() }));
103
- // (StatusListStore does the duplicate entity check)
101
+ const entity = yield (yield this.statusListStore.getStatusListRepo()).findOne({
102
+ where: [
103
+ {
104
+ id: details.id,
105
+ },
106
+ {
107
+ correlationId,
108
+ },
109
+ ],
110
+ });
111
+ if (entity) {
112
+ throw Error(`Status list ${details.id}, correlationId ${args.correlationId} already exists`);
113
+ }
114
+ this._statusListLength = details.length;
104
115
  yield this.statusListStore.addStatusList(Object.assign(Object.assign({}, details), { credentialIdMode,
105
116
  correlationId, driverType: this.getType() }));
106
- this._statusListLength = details.length;
107
117
  return details;
108
118
  });
109
119
  }
@@ -112,7 +122,7 @@ class AgentDataSourceStatusListDriver {
112
122
  var _a;
113
123
  const correlationId = (_a = args.correlationId) !== null && _a !== void 0 ? _a : this.options.correlationId;
114
124
  const details = yield (0, ssi_sdk_vc_status_list_1.statusListCredentialToDetails)(Object.assign(Object.assign({}, args), { correlationId, driverType: this.getType() }));
115
- const entity = yield (yield this.statusListStore.getStatusListRepo(args.type)).findOne({
125
+ const entity = yield (yield this.statusListStore.getStatusListRepo()).findOne({
116
126
  where: [
117
127
  {
118
128
  id: details.id,
@@ -136,43 +146,19 @@ class AgentDataSourceStatusListDriver {
136
146
  return Promise.resolve(true);
137
147
  });
138
148
  }
139
- isStatusList2021Entity(statusList) {
140
- return statusList instanceof StatusListEntities_1.StatusList2021Entity;
141
- }
142
- isOAuthStatusListEntity(statusList) {
143
- return statusList instanceof StatusListEntities_1.OAuthStatusListEntity;
144
- }
145
149
  updateStatusListEntry(args) {
146
150
  return __awaiter(this, void 0, void 0, function* () {
147
151
  var _a;
148
- const statusList = typeof args.statusList === 'string' ? (0, status_list_adapters_1.statusListResultToEntity)(yield this.getStatusList()) : args.statusList;
152
+ const statusList = typeof args.statusList === 'string' ? yield this.getStatusList() : args.statusList;
149
153
  const statusListEntry = yield this.statusListStore.updateStatusListEntry(Object.assign(Object.assign({}, args), { statusList: statusList.id }));
150
- if (this.isStatusList2021Entity(statusList)) {
151
- return {
152
- credentialStatus: {
153
- id: `${statusList.id}#${statusListEntry.statusListIndex}`,
154
- type: 'StatusList2021Entry',
155
- statusPurpose: (_a = statusList.statusPurpose) !== null && _a !== void 0 ? _a : 'revocation',
156
- statusListIndex: '' + statusListEntry.statusListIndex,
157
- statusListCredential: statusList.id,
158
- },
159
- statusListEntry,
160
- };
161
- }
162
- else if (this.isOAuthStatusListEntity(statusList)) {
163
- return {
164
- credentialStatus: {
165
- id: `${statusList.id}#${statusListEntry.statusListIndex}`,
166
- type: 'OAuthStatusListEntry',
167
- bitsPerStatus: statusList.bitsPerStatus,
168
- statusListIndex: '' + statusListEntry.statusListIndex,
169
- statusListCredential: statusList.id,
170
- expiresAt: statusList.expiresAt,
171
- },
172
- statusListEntry,
173
- };
174
- }
175
- throw new Error(`Unsupported status list type: ${typeof statusList}`);
154
+ const credentialStatus = {
155
+ id: `${statusList.id}#${statusListEntry.statusListIndex}`,
156
+ type: 'StatusList2021Entry',
157
+ statusPurpose: (_a = statusList.statusPurpose) !== null && _a !== void 0 ? _a : 'revocation',
158
+ statusListIndex: '' + statusListEntry.statusListIndex,
159
+ statusListCredential: statusList.id,
160
+ };
161
+ return { credentialStatus, statusListEntry };
176
162
  });
177
163
  }
178
164
  getStatusListEntryByCredentialId(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"drivers.js","sourceRoot":"","sources":["../src/drivers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drivers.js","sourceRoot":"","sources":["../src/drivers.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { IIdentifierResolution } from '@sphereon/ssi-sdk-ext.identifier-resolution';
2
2
  import { IAddStatusListEntryArgs, IGetStatusListEntryByCredentialIdArgs, IGetStatusListEntryByIndexArgs, IStatusListEntryEntity, StatusListStore } from '@sphereon/ssi-sdk.data-store';
3
- import { IStatusListPlugin, StatusList2021EntryCredentialStatus, StatusListOAuthEntryCredentialStatus, StatusListResult } from '@sphereon/ssi-sdk.vc-status-list';
4
- import { StatusListCredential, StatusListDriverType } from '@sphereon/ssi-types';
3
+ import { IStatusListPlugin, StatusList2021EntryCredentialStatus, StatusListDetails } from '@sphereon/ssi-sdk.vc-status-list';
4
+ import { OriginalVerifiableCredential, StatusListDriverType } from '@sphereon/ssi-types';
5
5
  import { IAgentContext, ICredentialIssuer, ICredentialPlugin, ICredentialVerifier, IDataStoreORM, IDIDManager, IKeyManager, IResolver } from '@veramo/core';
6
6
  import { DriverOptions } from './drivers';
7
7
  export type IRequiredPlugins = IDataStoreORM & IDIDManager & IKeyManager & IIdentifierResolution & ICredentialIssuer & ICredentialVerifier & ICredentialPlugin & IStatusListPlugin & IResolver;
@@ -14,21 +14,21 @@ export interface IStatusListDriver {
14
14
  correlationId?: string;
15
15
  }): Promise<number>;
16
16
  createStatusList(args: {
17
- statusListCredential: StatusListCredential;
17
+ statusListCredential: OriginalVerifiableCredential;
18
18
  correlationId?: string;
19
- }): Promise<StatusListResult>;
19
+ }): Promise<StatusListDetails>;
20
20
  getStatusList(args?: {
21
21
  correlationId?: string;
22
- }): Promise<StatusListResult>;
22
+ }): Promise<StatusListDetails>;
23
23
  updateStatusListEntry(args: IAddStatusListEntryArgs): Promise<{
24
- credentialStatus: StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus;
24
+ credentialStatus: StatusList2021EntryCredentialStatus;
25
25
  statusListEntry: IStatusListEntryEntity;
26
26
  }>;
27
27
  getStatusListEntryByCredentialId(args: IGetStatusListEntryByCredentialIdArgs): Promise<IStatusListEntryEntity | undefined>;
28
28
  getStatusListEntryByIndex(args: IGetStatusListEntryByIndexArgs): Promise<IStatusListEntryEntity | undefined>;
29
29
  updateStatusList(args: {
30
- statusListCredential: StatusListCredential;
31
- }): Promise<StatusListResult>;
30
+ statusListCredential: OriginalVerifiableCredential;
31
+ }): Promise<StatusListDetails>;
32
32
  deleteStatusList(): Promise<boolean>;
33
33
  getRandomNewStatusListIndex(args?: {
34
34
  correlationId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AACnF,OAAO,EACL,uBAAuB,EACvB,qCAAqC,EACrC,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EAChB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,oCAAoC,EACpC,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAC1C,WAAW,GACX,WAAW,GACX,qBAAqB,GACrB,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,SAAS,CAAA;AACX,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAA;AAE9D,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,eAAe,CAAA;IAEhC,OAAO,IAAI,oBAAoB,CAAA;IAE/B,UAAU,IAAI,aAAa,CAAA;IAE3B,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvE,gBAAgB,CAAC,IAAI,EAAE;QAAE,oBAAoB,EAAE,oBAAoB,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAEzH,aAAa,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAE3E,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC;QAC5D,gBAAgB,EAAE,mCAAmC,GAAG,oCAAoC,CAAA;QAC5F,eAAe,EAAE,sBAAsB,CAAA;KACxC,CAAC,CAAA;IAEF,gCAAgC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAA;IAE1H,yBAAyB,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAA;IAE5G,gBAAgB,CAAC,IAAI,EAAE;QAAE,oBAAoB,EAAE,oBAAoB,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAEjG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpC,2BAA2B,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAE/E,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAC3C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AACnF,OAAO,EACL,uBAAuB,EACvB,qCAAqC,EACrC,8BAA8B,EAC9B,sBAAsB,EACtB,eAAe,EAChB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,mCAAmC,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AAC5H,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACxF,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAC1C,WAAW,GACX,WAAW,GACX,qBAAqB,GACrB,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,SAAS,CAAA;AACX,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAA;AAE9D,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,eAAe,CAAA;IAEhC,OAAO,IAAI,oBAAoB,CAAA;IAE/B,UAAU,IAAI,aAAa,CAAA;IAE3B,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvE,gBAAgB,CAAC,IAAI,EAAE;QAAE,oBAAoB,EAAE,4BAA4B,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAElI,aAAa,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE5E,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC;QAC5D,gBAAgB,EAAE,mCAAmC,CAAA;QACrD,eAAe,EAAE,sBAAsB,CAAA;KACxC,CAAC,CAAA;IAEF,gCAAgC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAA;IAE1H,yBAAyB,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAAA;IAE5G,gBAAgB,CAAC,IAAI,EAAE;QAAE,oBAAoB,EAAE,4BAA4B,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE1G,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpC,2BAA2B,CAAC,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAE/E,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAC3C"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.vc-status-list-issuer-drivers",
3
3
  "description": "Sphereon SSI-SDK plugin for Status List management, like StatusList2021. Issuer drivers module",
4
- "version": "0.32.1-fix.160+61781f48",
4
+ "version": "0.32.1-next.113+5b666268",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -10,14 +10,14 @@
10
10
  "build:clean": "tsc --build --clean && tsc --build"
11
11
  },
12
12
  "dependencies": {
13
- "@sphereon/ssi-express-support": "0.32.1-fix.160+61781f48",
13
+ "@sphereon/ssi-express-support": "0.32.1-next.113+5b666268",
14
14
  "@sphereon/ssi-sdk-ext.did-utils": "0.27.0",
15
15
  "@sphereon/ssi-sdk-ext.identifier-resolution": "0.27.0",
16
- "@sphereon/ssi-sdk.agent-config": "0.32.1-fix.160+61781f48",
17
- "@sphereon/ssi-sdk.core": "0.32.1-fix.160+61781f48",
18
- "@sphereon/ssi-sdk.data-store": "0.32.1-fix.160+61781f48",
19
- "@sphereon/ssi-sdk.vc-status-list": "0.32.1-fix.160+61781f48",
20
- "@sphereon/ssi-types": "0.32.1-fix.160+61781f48",
16
+ "@sphereon/ssi-sdk.agent-config": "0.32.1-next.113+5b666268",
17
+ "@sphereon/ssi-sdk.core": "0.32.1-next.113+5b666268",
18
+ "@sphereon/ssi-sdk.data-store": "0.32.1-next.113+5b666268",
19
+ "@sphereon/ssi-sdk.vc-status-list": "0.32.1-next.113+5b666268",
20
+ "@sphereon/ssi-types": "0.32.1-next.113+5b666268",
21
21
  "@sphereon/vc-status-list": "7.0.0-next.0",
22
22
  "@veramo/core": "4.2.0",
23
23
  "debug": "^4.3.5",
@@ -49,5 +49,5 @@
49
49
  "StatusList2021"
50
50
  ],
51
51
  "nx": {},
52
- "gitHead": "61781f48e7a0ae4621b18557d4dc37603c51c37c"
52
+ "gitHead": "5b666268b482b6a08a6edc00b4b713faf69247e1"
53
53
  }
package/src/drivers.ts CHANGED
@@ -5,20 +5,12 @@ import {
5
5
  IGetStatusListEntryByIndexArgs,
6
6
  IStatusListEntity,
7
7
  IStatusListEntryEntity,
8
- StatusListEntity,
9
8
  StatusListStore,
10
9
  } from '@sphereon/ssi-sdk.data-store'
11
- import {
12
- StatusList2021EntryCredentialStatus,
13
- statusListCredentialToDetails,
14
- StatusListOAuthEntryCredentialStatus,
15
- StatusListResult,
16
- } from '@sphereon/ssi-sdk.vc-status-list'
17
- import { StatusListCredentialIdMode, StatusListDriverType, StatusListType, StatusListCredential } from '@sphereon/ssi-types'
10
+ import { StatusList2021EntryCredentialStatus, statusListCredentialToDetails, StatusListDetails } from '@sphereon/ssi-sdk.vc-status-list'
11
+ import { OriginalVerifiableCredential, StatusListCredentialIdMode, StatusListDriverType } from '@sphereon/ssi-types'
18
12
  import { DataSource } from 'typeorm'
19
13
  import { IStatusListDriver } from './types'
20
- import { statusListResultToEntity } from './status-list-adapters'
21
- import { OAuthStatusListEntity, StatusList2021Entity } from '@sphereon/ssi-sdk.data-store/dist/entities/statusList/StatusListEntities'
22
14
 
23
15
  export interface StatusListManagementOptions {
24
16
  id?: string
@@ -129,37 +121,46 @@ export class AgentDataSourceStatusListDriver implements IStatusListDriver {
129
121
  }
130
122
 
131
123
  async createStatusList(args: {
132
- statusListCredential: StatusListCredential
124
+ statusListCredential: OriginalVerifiableCredential
133
125
  correlationId?: string
134
126
  credentialIdMode?: StatusListCredentialIdMode
135
- }): Promise<StatusListResult> {
127
+ }): Promise<StatusListDetails> {
136
128
  const correlationId = args.correlationId ?? this.options.correlationId
137
129
  if (!correlationId) {
138
130
  throw Error('Either a correlationId needs to be set as an option, or it needs to be provided when creating a status list. None found')
139
131
  }
140
132
  const credentialIdMode = args.credentialIdMode ?? StatusListCredentialIdMode.ISSUANCE
141
133
  const details = await statusListCredentialToDetails({ ...args, correlationId, driverType: this.getType() })
142
-
143
- // (StatusListStore does the duplicate entity check)
134
+ const entity = await (
135
+ await this.statusListStore.getStatusListRepo()
136
+ ).findOne({
137
+ where: [
138
+ {
139
+ id: details.id,
140
+ },
141
+ {
142
+ correlationId,
143
+ },
144
+ ],
145
+ })
146
+ if (entity) {
147
+ throw Error(`Status list ${details.id}, correlationId ${args.correlationId} already exists`)
148
+ }
149
+ this._statusListLength = details.length
144
150
  await this.statusListStore.addStatusList({
145
151
  ...details,
146
152
  credentialIdMode,
147
153
  correlationId,
148
154
  driverType: this.getType(),
149
155
  })
150
- this._statusListLength = details.length
151
156
  return details
152
157
  }
153
158
 
154
- async updateStatusList(args: {
155
- statusListCredential: StatusListCredential
156
- correlationId: string
157
- type: StatusListType
158
- }): Promise<StatusListResult> {
159
+ async updateStatusList(args: { statusListCredential: OriginalVerifiableCredential; correlationId: string }): Promise<StatusListDetails> {
159
160
  const correlationId = args.correlationId ?? this.options.correlationId
160
161
  const details = await statusListCredentialToDetails({ ...args, correlationId, driverType: this.getType() })
161
162
  const entity = await (
162
- await this.statusListStore.getStatusListRepo(args.type)
163
+ await this.statusListStore.getStatusListRepo()
163
164
  ).findOne({
164
165
  where: [
165
166
  {
@@ -188,48 +189,21 @@ export class AgentDataSourceStatusListDriver implements IStatusListDriver {
188
189
  return Promise.resolve(true)
189
190
  }
190
191
 
191
- private isStatusList2021Entity(statusList: StatusListEntity): statusList is StatusList2021Entity {
192
- return statusList instanceof StatusList2021Entity
193
- }
194
-
195
- private isOAuthStatusListEntity(statusList: StatusListEntity): statusList is OAuthStatusListEntity {
196
- return statusList instanceof OAuthStatusListEntity
197
- }
198
-
199
192
  async updateStatusListEntry(args: IAddStatusListEntryArgs): Promise<{
200
- credentialStatus: StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus
193
+ credentialStatus: StatusList2021EntryCredentialStatus
201
194
  statusListEntry: IStatusListEntryEntity
202
195
  }> {
203
- const statusList: StatusListEntity = typeof args.statusList === 'string' ? statusListResultToEntity(await this.getStatusList()) : args.statusList
196
+ const statusList = typeof args.statusList === 'string' ? await this.getStatusList() : args.statusList
204
197
 
205
198
  const statusListEntry = await this.statusListStore.updateStatusListEntry({ ...args, statusList: statusList.id })
206
-
207
- if (this.isStatusList2021Entity(statusList)) {
208
- return {
209
- credentialStatus: {
210
- id: `${statusList.id}#${statusListEntry.statusListIndex}`,
211
- type: 'StatusList2021Entry',
212
- statusPurpose: statusList.statusPurpose ?? 'revocation',
213
- statusListIndex: '' + statusListEntry.statusListIndex,
214
- statusListCredential: statusList.id,
215
- },
216
- statusListEntry,
217
- }
218
- } else if (this.isOAuthStatusListEntity(statusList)) {
219
- return {
220
- credentialStatus: {
221
- id: `${statusList.id}#${statusListEntry.statusListIndex}`,
222
- type: 'OAuthStatusListEntry',
223
- bitsPerStatus: statusList.bitsPerStatus,
224
- statusListIndex: '' + statusListEntry.statusListIndex,
225
- statusListCredential: statusList.id,
226
- expiresAt: statusList.expiresAt,
227
- },
228
- statusListEntry,
229
- }
199
+ const credentialStatus: StatusList2021EntryCredentialStatus = {
200
+ id: `${statusList.id}#${statusListEntry.statusListIndex}`,
201
+ type: 'StatusList2021Entry',
202
+ statusPurpose: statusList.statusPurpose ?? 'revocation',
203
+ statusListIndex: '' + statusListEntry.statusListIndex,
204
+ statusListCredential: statusList.id,
230
205
  }
231
-
232
- throw new Error(`Unsupported status list type: ${typeof statusList}`)
206
+ return { credentialStatus, statusListEntry }
233
207
  }
234
208
 
235
209
  async getStatusListEntryByCredentialId(args: IGetStatusListEntryByCredentialIdArgs): Promise<IStatusListEntryEntity | undefined> {
@@ -277,7 +251,7 @@ export class AgentDataSourceStatusListDriver implements IStatusListDriver {
277
251
  return this._statusListLength!
278
252
  }
279
253
 
280
- async getStatusList(args?: { correlationId?: string }): Promise<StatusListResult> {
254
+ async getStatusList(args?: { correlationId?: string }): Promise<StatusListDetails> {
281
255
  const id = this.options.id
282
256
  const correlationId = args?.correlationId ?? this.options.correlationId
283
257
  return await this.statusListStore
package/src/types.ts CHANGED
@@ -6,13 +6,8 @@ import {
6
6
  IStatusListEntryEntity,
7
7
  StatusListStore,
8
8
  } from '@sphereon/ssi-sdk.data-store'
9
- import {
10
- IStatusListPlugin,
11
- StatusList2021EntryCredentialStatus,
12
- StatusListOAuthEntryCredentialStatus,
13
- StatusListResult,
14
- } from '@sphereon/ssi-sdk.vc-status-list'
15
- import { StatusListCredential, StatusListDriverType } from '@sphereon/ssi-types'
9
+ import { IStatusListPlugin, StatusList2021EntryCredentialStatus, StatusListDetails } from '@sphereon/ssi-sdk.vc-status-list'
10
+ import { OriginalVerifiableCredential, StatusListDriverType } from '@sphereon/ssi-types'
16
11
  import {
17
12
  IAgentContext,
18
13
  ICredentialIssuer,
@@ -45,12 +40,12 @@ export interface IStatusListDriver {
45
40
 
46
41
  getStatusListLength(args?: { correlationId?: string }): Promise<number>
47
42
 
48
- createStatusList(args: { statusListCredential: StatusListCredential; correlationId?: string }): Promise<StatusListResult>
43
+ createStatusList(args: { statusListCredential: OriginalVerifiableCredential; correlationId?: string }): Promise<StatusListDetails>
49
44
 
50
- getStatusList(args?: { correlationId?: string }): Promise<StatusListResult>
45
+ getStatusList(args?: { correlationId?: string }): Promise<StatusListDetails>
51
46
 
52
47
  updateStatusListEntry(args: IAddStatusListEntryArgs): Promise<{
53
- credentialStatus: StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus
48
+ credentialStatus: StatusList2021EntryCredentialStatus
54
49
  statusListEntry: IStatusListEntryEntity
55
50
  }>
56
51
 
@@ -58,7 +53,7 @@ export interface IStatusListDriver {
58
53
 
59
54
  getStatusListEntryByIndex(args: IGetStatusListEntryByIndexArgs): Promise<IStatusListEntryEntity | undefined>
60
55
 
61
- updateStatusList(args: { statusListCredential: StatusListCredential }): Promise<StatusListResult>
56
+ updateStatusList(args: { statusListCredential: OriginalVerifiableCredential }): Promise<StatusListDetails>
62
57
 
63
58
  deleteStatusList(): Promise<boolean>
64
59
 
@@ -1,4 +0,0 @@
1
- import { OAuthStatusListEntity, StatusList2021Entity } from '@sphereon/ssi-sdk.data-store/dist/entities/statusList/StatusListEntities';
2
- import { StatusListResult } from '@sphereon/ssi-sdk.vc-status-list';
3
- export declare function statusListResultToEntity(result: StatusListResult): StatusList2021Entity | OAuthStatusListEntity;
4
- //# sourceMappingURL=status-list-adapters.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status-list-adapters.d.ts","sourceRoot":"","sources":["../src/status-list-adapters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,0EAA0E,CAAA;AACtI,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAEnE,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,oBAAoB,GAAG,qBAAqB,CAiC/G"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.statusListResultToEntity = statusListResultToEntity;
4
- const ssi_types_1 = require("@sphereon/ssi-types");
5
- const StatusListEntities_1 = require("@sphereon/ssi-sdk.data-store/dist/entities/statusList/StatusListEntities");
6
- function statusListResultToEntity(result) {
7
- const baseFields = {
8
- id: result.id,
9
- correlationId: result.correlationId,
10
- driverType: result.driverType,
11
- credentialIdMode: result.credentialIdMode,
12
- length: result.length,
13
- issuer: result.issuer,
14
- type: result.type,
15
- proofFormat: result.proofFormat,
16
- statusListCredential: result.statusListCredential,
17
- };
18
- if (result.type === ssi_types_1.StatusListType.StatusList2021) {
19
- if (!result.statusList2021) {
20
- throw new Error('Missing statusList2021 details');
21
- }
22
- return Object.assign(new StatusListEntities_1.StatusList2021Entity(), Object.assign(Object.assign({}, baseFields), { indexingDirection: result.statusList2021.indexingDirection, statusPurpose: result.statusList2021.statusPurpose }));
23
- }
24
- else if (result.type === ssi_types_1.StatusListType.OAuthStatusList) {
25
- if (!result.oauthStatusList) {
26
- throw new Error('Missing oauthStatusList details');
27
- }
28
- return Object.assign(new StatusListEntities_1.OAuthStatusListEntity(), Object.assign(Object.assign({}, baseFields), { bitsPerStatus: result.oauthStatusList.bitsPerStatus, expiresAt: result.oauthStatusList.expiresAt }));
29
- }
30
- throw new Error(`Unsupported status list type: ${result.type}`);
31
- }
32
- //# sourceMappingURL=status-list-adapters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status-list-adapters.js","sourceRoot":"","sources":["../src/status-list-adapters.ts"],"names":[],"mappings":";;AAIA,4DAiCC;AArCD,mDAAoD;AACpD,iHAAsI;AAGtI,SAAgB,wBAAwB,CAAC,MAAwB;IAC/D,MAAM,UAAU,GAAG;QACjB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;KAClD,CAAA;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,0BAAc,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,yCAAoB,EAAE,kCAC1C,UAAU,KACb,iBAAiB,EAAE,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAC1D,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,aAAa,IAClD,CAAA;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,0BAAc,CAAC,eAAe,EAAE,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QACpD,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,0CAAqB,EAAE,kCAC3C,UAAU,KACb,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,aAAa,EACnD,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,SAAS,IAC3C,CAAA;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;AACjE,CAAC"}
@@ -1,38 +0,0 @@
1
- import { StatusListType } from '@sphereon/ssi-types'
2
- import { OAuthStatusListEntity, StatusList2021Entity } from '@sphereon/ssi-sdk.data-store/dist/entities/statusList/StatusListEntities'
3
- import { StatusListResult } from '@sphereon/ssi-sdk.vc-status-list'
4
-
5
- export function statusListResultToEntity(result: StatusListResult): StatusList2021Entity | OAuthStatusListEntity {
6
- const baseFields = {
7
- id: result.id,
8
- correlationId: result.correlationId,
9
- driverType: result.driverType,
10
- credentialIdMode: result.credentialIdMode,
11
- length: result.length,
12
- issuer: result.issuer,
13
- type: result.type,
14
- proofFormat: result.proofFormat,
15
- statusListCredential: result.statusListCredential,
16
- }
17
-
18
- if (result.type === StatusListType.StatusList2021) {
19
- if (!result.statusList2021) {
20
- throw new Error('Missing statusList2021 details')
21
- }
22
- return Object.assign(new StatusList2021Entity(), {
23
- ...baseFields,
24
- indexingDirection: result.statusList2021.indexingDirection,
25
- statusPurpose: result.statusList2021.statusPurpose,
26
- })
27
- } else if (result.type === StatusListType.OAuthStatusList) {
28
- if (!result.oauthStatusList) {
29
- throw new Error('Missing oauthStatusList details')
30
- }
31
- return Object.assign(new OAuthStatusListEntity(), {
32
- ...baseFields,
33
- bitsPerStatus: result.oauthStatusList.bitsPerStatus,
34
- expiresAt: result.oauthStatusList.expiresAt,
35
- })
36
- }
37
- throw new Error(`Unsupported status list type: ${result.type}`)
38
- }