@sphereon/ssi-sdk.data-store 0.32.1-feature.VDX.341.56 → 0.32.1-feature.new.develop.273
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/entities/oid4vcState/Oid4vcStateEntity.d.ts +13 -0
- package/dist/entities/oid4vcState/Oid4vcStateEntity.d.ts.map +1 -0
- package/dist/entities/oid4vcState/Oid4vcStateEntity.js +57 -0
- package/dist/entities/oid4vcState/Oid4vcStateEntity.js.map +1 -0
- package/dist/entities/{statusList2021 → statusList}/StatusList2021EntryEntity.d.ts +4 -3
- package/dist/entities/statusList/StatusList2021EntryEntity.d.ts.map +1 -0
- package/dist/entities/{statusList2021 → statusList}/StatusList2021EntryEntity.js +11 -6
- package/dist/entities/statusList/StatusList2021EntryEntity.js.map +1 -0
- package/dist/entities/statusList/StatusListEntities.d.ts +23 -0
- package/dist/entities/statusList/StatusListEntities.d.ts.map +1 -0
- package/dist/entities/{statusList2021/StatusList2021Entity.js → statusList/StatusListEntities.js} +45 -16
- package/dist/entities/statusList/StatusListEntities.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -6
- package/dist/index.js.map +1 -1
- package/dist/migrations/generic/4-CreateStatusList.d.ts.map +1 -1
- package/dist/migrations/generic/4-CreateStatusList.js +22 -12
- package/dist/migrations/generic/4-CreateStatusList.js.map +1 -1
- package/dist/migrations/postgres/1693866470001-CreateStatusList.d.ts.map +1 -1
- package/dist/migrations/postgres/1693866470001-CreateStatusList.js +40 -7
- package/dist/migrations/postgres/1693866470001-CreateStatusList.js.map +1 -1
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.d.ts +7 -0
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.d.ts.map +1 -0
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.js +39 -0
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.js.map +1 -0
- package/dist/migrations/sqlite/1693866470000-CreateStatusList.d.ts.map +1 -1
- package/dist/migrations/sqlite/1693866470000-CreateStatusList.js +45 -5
- package/dist/migrations/sqlite/1693866470000-CreateStatusList.js.map +1 -1
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.d.ts +7 -0
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.d.ts.map +1 -0
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.js +96 -0
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.js.map +1 -0
- package/dist/statusList/IStatusListStore.d.ts +2 -2
- package/dist/statusList/IStatusListStore.d.ts.map +1 -1
- package/dist/statusList/StatusListStore.d.ts +9 -8
- package/dist/statusList/StatusListStore.d.ts.map +1 -1
- package/dist/statusList/StatusListStore.js +72 -42
- package/dist/statusList/StatusListStore.js.map +1 -1
- package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.d.ts +2 -2
- package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.d.ts.map +1 -1
- package/dist/types/statusList/IAbstractStatusListStore.d.ts +5 -4
- package/dist/types/statusList/IAbstractStatusListStore.d.ts.map +1 -1
- package/dist/types/statusList/statusList.d.ts +13 -7
- package/dist/types/statusList/statusList.d.ts.map +1 -1
- package/dist/utils/statusList/MappingUtils.d.ts +5 -0
- package/dist/utils/statusList/MappingUtils.d.ts.map +1 -0
- package/dist/utils/statusList/MappingUtils.js +69 -0
- package/dist/utils/statusList/MappingUtils.js.map +1 -0
- package/package.json +7 -7
- package/src/__tests__/statusList.entities.test.ts +216 -0
- package/src/__tests__/statusList.store.test.ts +232 -0
- package/src/entities/oid4vcState/Oid4vcStateEntity.ts +32 -0
- package/src/entities/{statusList2021 → statusList}/StatusList2021EntryEntity.ts +10 -6
- package/src/entities/{statusList2021/StatusList2021Entity.ts → statusList/StatusListEntities.ts} +38 -18
- package/src/index.ts +8 -3
- package/src/migrations/generic/4-CreateStatusList.ts +22 -12
- package/src/migrations/postgres/1693866470001-CreateStatusList.ts +42 -9
- package/src/migrations/postgres/1737110469001-UpdateStatusList.ts +25 -0
- package/src/migrations/sqlite/1693866470000-CreateStatusList.ts +45 -5
- package/src/migrations/sqlite/1737110469000-UpdateStatusList.ts +94 -0
- package/src/statusList/IStatusListStore.ts +2 -2
- package/src/statusList/StatusListStore.ts +94 -51
- package/src/types/digitalCredential/IAbstractDigitalCredentialStore.ts +2 -2
- package/src/types/statusList/IAbstractStatusListStore.ts +5 -4
- package/src/types/statusList/statusList.ts +24 -16
- package/src/utils/statusList/MappingUtils.ts +82 -0
- package/dist/entities/statusList2021/StatusList2021Entity.d.ts +0 -19
- package/dist/entities/statusList2021/StatusList2021Entity.d.ts.map +0 -1
- package/dist/entities/statusList2021/StatusList2021Entity.js.map +0 -1
- package/dist/entities/statusList2021/StatusList2021EntryEntity.d.ts.map +0 -1
- package/dist/entities/statusList2021/StatusList2021EntryEntity.js.map +0 -1
|
@@ -0,0 +1,39 @@
|
|
|
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.UpdateStatusList1737110469001 = void 0;
|
|
13
|
+
class UpdateStatusList1737110469001 {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.name = 'UpdateStatusList1737110469001';
|
|
16
|
+
}
|
|
17
|
+
up(queryRunner) {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
// Add new enum value
|
|
20
|
+
yield queryRunner.query(`ALTER TYPE "StatusList_type_enum" ADD VALUE 'OAuthStatusList'`);
|
|
21
|
+
// Make columns nullable and add new columns
|
|
22
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ALTER COLUMN "indexingDirection" DROP NOT NULL`);
|
|
23
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ALTER COLUMN "statusPurpose" DROP NOT NULL`);
|
|
24
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ADD "bitsPerStatus" integer`);
|
|
25
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ADD "expiresAt" timestamp with time zone`);
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
down(queryRunner) {
|
|
29
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" DROP COLUMN "expiresAt"`);
|
|
31
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" DROP COLUMN "bitsPerStatus"`);
|
|
32
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ALTER COLUMN "statusPurpose" SET NOT NULL`);
|
|
33
|
+
yield queryRunner.query(`ALTER TABLE "StatusList" ALTER COLUMN "indexingDirection" SET NOT NULL`);
|
|
34
|
+
// Note: Cannot remove enum value in Postgres, would need to recreate the type
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.UpdateStatusList1737110469001 = UpdateStatusList1737110469001;
|
|
39
|
+
//# sourceMappingURL=1737110469001-UpdateStatusList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1737110469001-UpdateStatusList.js","sourceRoot":"","sources":["../../../src/migrations/postgres/1737110469001-UpdateStatusList.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,6BAA6B;IAA1C;QACE,SAAI,GAAG,+BAA+B,CAAA;IAqBxC,CAAC;IAnBc,EAAE,CAAC,WAAwB;;YACtC,qBAAqB;YACrB,MAAM,WAAW,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAA;YAExF,4CAA4C;YAC5C,MAAM,WAAW,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAA;YAClG,MAAM,WAAW,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAA;YAC9F,MAAM,WAAW,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAA;YAC/E,MAAM,WAAW,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAA;QAC9F,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAA;YAC3E,MAAM,WAAW,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAA;YAC/E,MAAM,WAAW,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAA;YAC7F,MAAM,WAAW,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAA;YAEjG,8EAA8E;QAChF,CAAC;KAAA;CACF;AAtBD,sEAsBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1693866470000-CreateStatusList.d.ts","sourceRoot":"","sources":["../../../src/migrations/sqlite/1693866470000-CreateStatusList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,6BAA8B,YAAW,kBAAkB;IACtE,IAAI,SAAkC;IAEzB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"1693866470000-CreateStatusList.d.ts","sourceRoot":"","sources":["../../../src/migrations/sqlite/1693866470000-CreateStatusList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,6BAA8B,YAAW,kBAAkB;IACtE,IAAI,SAAkC;IAEzB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAsD3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAI3D"}
|
|
@@ -16,16 +16,56 @@ class CreateStatusList1693866470002 {
|
|
|
16
16
|
}
|
|
17
17
|
up(queryRunner) {
|
|
18
18
|
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
yield queryRunner.query(`CREATE TABLE "StatusListEntry"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
yield queryRunner.query(`CREATE TABLE "StatusListEntry"
|
|
20
|
+
(
|
|
21
|
+
"statusListId" varchar NOT NULL,
|
|
22
|
+
"statusListIndex" integer NOT NULL,
|
|
23
|
+
"credentialId" varchar,
|
|
24
|
+
"credentialHash" varchar(128),
|
|
25
|
+
"correlationId" varchar(255),
|
|
26
|
+
"value" varchar(50),
|
|
27
|
+
PRIMARY KEY ("statusListId", "statusListIndex")
|
|
28
|
+
)`);
|
|
29
|
+
yield queryRunner.query(`CREATE TABLE "StatusList"
|
|
30
|
+
(
|
|
31
|
+
"id" varchar PRIMARY KEY NOT NULL,
|
|
32
|
+
"correlationId" varchar NOT NULL,
|
|
33
|
+
"length" integer NOT NULL,
|
|
34
|
+
"issuer" text NOT NULL,
|
|
35
|
+
"type" varchar CHECK ( "type" IN ('StatusList2021') ) NOT NULL DEFAULT ('StatusList2021'),
|
|
36
|
+
"driverType" varchar CHECK ( "driverType" IN ('agent_typeorm', 'agent_kv_store', 'github',
|
|
37
|
+
'agent_filesystem') ) NOT NULL DEFAULT ('agent_typeorm'),
|
|
38
|
+
"credentialIdMode" varchar CHECK ( "credentialIdMode" IN ('ISSUANCE', 'PERSISTENCE', 'NEVER') ) NOT NULL DEFAULT ('ISSUANCE'),
|
|
39
|
+
"proofFormat" varchar CHECK ( "proofFormat" IN ('lds', 'jwt') ) NOT NULL DEFAULT ('lds'),
|
|
40
|
+
"indexingDirection" varchar CHECK ( "indexingDirection" IN ('rightToLeft') ) NOT NULL DEFAULT ('rightToLeft'),
|
|
41
|
+
"statusPurpose" varchar NOT NULL DEFAULT ('revocation'),
|
|
42
|
+
"statusListCredential" text,
|
|
43
|
+
CONSTRAINT "UQ_correlationId" UNIQUE ("correlationId")
|
|
44
|
+
)`);
|
|
45
|
+
yield queryRunner.query(`CREATE TABLE "temporary_StatusListEntry"
|
|
46
|
+
(
|
|
47
|
+
"statusListId" varchar NOT NULL,
|
|
48
|
+
"statusListIndex" integer NOT NULL,
|
|
49
|
+
"credentialId" varchar,
|
|
50
|
+
"credentialHash" varchar(128),
|
|
51
|
+
"correlationId" varchar(255),
|
|
52
|
+
"value" varchar(50),
|
|
53
|
+
CONSTRAINT "FK_statusListEntry_statusListId" FOREIGN KEY ("statusListId") REFERENCES "StatusList" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION,
|
|
54
|
+
PRIMARY KEY ("statusListId", "statusListIndex")
|
|
55
|
+
)`);
|
|
56
|
+
yield queryRunner.query(`INSERT INTO "temporary_StatusListEntry"("statusListId", "statusListIndex", "credentialId",
|
|
57
|
+
"credentialHash", "correlationId", "value")
|
|
58
|
+
SELECT "statusListId", "statusListIndex", "credentialId", "credentialHash", "correlationId", "value"
|
|
59
|
+
FROM "StatusListEntry"`);
|
|
23
60
|
yield queryRunner.query(`DROP TABLE "StatusListEntry"`);
|
|
24
61
|
yield queryRunner.query(`ALTER TABLE "temporary_StatusListEntry" RENAME TO "StatusListEntry"`);
|
|
25
62
|
});
|
|
26
63
|
}
|
|
27
64
|
down(queryRunner) {
|
|
28
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
yield queryRunner.query(`DROP TABLE "StatusListEntry"`);
|
|
67
|
+
yield queryRunner.query(`DROP TABLE "StatusList"`);
|
|
68
|
+
});
|
|
29
69
|
}
|
|
30
70
|
}
|
|
31
71
|
exports.CreateStatusList1693866470002 = CreateStatusList1693866470002;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1693866470000-CreateStatusList.js","sourceRoot":"","sources":["../../../src/migrations/sqlite/1693866470000-CreateStatusList.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,6BAA6B;IAA1C;QACE,SAAI,GAAG,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"1693866470000-CreateStatusList.js","sourceRoot":"","sources":["../../../src/migrations/sqlite/1693866470000-CreateStatusList.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,6BAA6B;IAA1C;QACE,SAAI,GAAG,+BAA+B,CAAA;IA4DxC,CAAC;IA1Dc,EAAE,CAAC,WAAwB;;YACtC,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;eASS,CACV,CAAA;YACD,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;;;;;;;eAeS,CACV,CAAA;YACD,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;;eAUS,CACV,CAAA;YACD,MAAM,WAAW,CAAC,KAAK,CACrB;;;oCAG8B,CAC/B,CAAA;YACD,MAAM,WAAW,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;YACvD,MAAM,WAAW,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAA;QAChG,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;YACvD,MAAM,WAAW,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;QACpD,CAAC;KAAA;CACF;AA7DD,sEA6DC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
2
|
+
export declare class UpdateStatusList1737110469000 implements MigrationInterface {
|
|
3
|
+
name: string;
|
|
4
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
5
|
+
down(queryRunner: QueryRunner): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=1737110469000-UpdateStatusList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1737110469000-UpdateStatusList.d.ts","sourceRoot":"","sources":["../../../src/migrations/sqlite/1737110469000-UpdateStatusList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,6BAA8B,YAAW,kBAAkB;IACtE,IAAI,SAAkC;IAEzB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAgD3D"}
|
|
@@ -0,0 +1,96 @@
|
|
|
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.UpdateStatusList1737110469000 = void 0;
|
|
13
|
+
class UpdateStatusList1737110469000 {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.name = 'UpdateStatusList1737110469000';
|
|
16
|
+
}
|
|
17
|
+
up(queryRunner) {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
// Create temporary table with new schema
|
|
20
|
+
yield queryRunner.query(`CREATE TABLE "temporary_StatusList" (
|
|
21
|
+
"id" varchar PRIMARY KEY NOT NULL,
|
|
22
|
+
"correlationId" varchar NOT NULL,
|
|
23
|
+
"length" integer NOT NULL,
|
|
24
|
+
"issuer" text NOT NULL,
|
|
25
|
+
"type" varchar CHECK( "type" IN ('StatusList2021', 'OAuthStatusList') ) NOT NULL DEFAULT ('StatusList2021'),
|
|
26
|
+
"driverType" varchar CHECK( "driverType" IN ('agent_typeorm','agent_kv_store','github','agent_filesystem') ) NOT NULL DEFAULT ('agent_typeorm'),
|
|
27
|
+
"credentialIdMode" varchar CHECK( "credentialIdMode" IN ('ISSUANCE','PERSISTENCE','NEVER') ) NOT NULL DEFAULT ('ISSUANCE'),
|
|
28
|
+
"proofFormat" varchar CHECK( "proofFormat" IN ('lds','jwt') ) NOT NULL DEFAULT ('lds'),
|
|
29
|
+
"indexingDirection" varchar CHECK( "indexingDirection" IN ('rightToLeft') ),
|
|
30
|
+
"statusPurpose" varchar,
|
|
31
|
+
"statusListCredential" text,
|
|
32
|
+
"bitsPerStatus" integer,
|
|
33
|
+
"expiresAt" datetime,
|
|
34
|
+
CONSTRAINT "UQ_correlationId" UNIQUE ("correlationId")
|
|
35
|
+
)`);
|
|
36
|
+
// Copy data from old table to temporary table
|
|
37
|
+
yield queryRunner.query(`INSERT INTO "temporary_StatusList"(
|
|
38
|
+
"id", "correlationId", "length", "issuer", "type", "driverType",
|
|
39
|
+
"credentialIdMode", "proofFormat", "indexingDirection", "statusPurpose",
|
|
40
|
+
"statusListCredential"
|
|
41
|
+
)
|
|
42
|
+
SELECT
|
|
43
|
+
"id", "correlationId", "length", "issuer", "type", "driverType",
|
|
44
|
+
"credentialIdMode", "proofFormat", "indexingDirection", "statusPurpose",
|
|
45
|
+
"statusListCredential"
|
|
46
|
+
FROM "StatusList"`);
|
|
47
|
+
// Drop old table and rename temporary table
|
|
48
|
+
yield queryRunner.query(`DROP TABLE "StatusList"`);
|
|
49
|
+
yield queryRunner.query(`ALTER TABLE "temporary_StatusList" RENAME TO "StatusList"`);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
down(queryRunner) {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
yield queryRunner.query(`
|
|
55
|
+
ALTER TABLE "StatusListEntry"
|
|
56
|
+
RENAME COLUMN "entryCorrelationId" TO "correlationId"
|
|
57
|
+
`);
|
|
58
|
+
yield queryRunner.query(`
|
|
59
|
+
ALTER TABLE "StatusListEntry"
|
|
60
|
+
DROP COLUMN "statusListCorrelationId"
|
|
61
|
+
`);
|
|
62
|
+
// Create temporary table with old schema
|
|
63
|
+
yield queryRunner.query(`CREATE TABLE "temporary_StatusList" (
|
|
64
|
+
"id" varchar PRIMARY KEY NOT NULL,
|
|
65
|
+
"correlationId" varchar NOT NULL,
|
|
66
|
+
"length" integer NOT NULL,
|
|
67
|
+
"issuer" text NOT NULL,
|
|
68
|
+
"type" varchar CHECK( "type" IN ('StatusList2021') ) NOT NULL DEFAULT ('StatusList2021'),
|
|
69
|
+
"driverType" varchar CHECK( "driverType" IN ('agent_typeorm','agent_kv_store','github','agent_filesystem') ) NOT NULL DEFAULT ('agent_typeorm'),
|
|
70
|
+
"credentialIdMode" varchar CHECK( "credentialIdMode" IN ('ISSUANCE','PERSISTENCE','NEVER') ) NOT NULL DEFAULT ('ISSUANCE'),
|
|
71
|
+
"proofFormat" varchar CHECK( "proofFormat" IN ('lds','jwt') ) NOT NULL DEFAULT ('lds'),
|
|
72
|
+
"indexingDirection" varchar CHECK( "indexingDirection" IN ('rightToLeft') ) NOT NULL DEFAULT ('rightToLeft'),
|
|
73
|
+
"statusPurpose" varchar NOT NULL DEFAULT ('revocation'),
|
|
74
|
+
"statusListCredential" text,
|
|
75
|
+
CONSTRAINT "UQ_correlationId" UNIQUE ("correlationId")
|
|
76
|
+
)`);
|
|
77
|
+
// Copy data back, excluding new columns
|
|
78
|
+
yield queryRunner.query(`INSERT INTO "temporary_StatusList"(
|
|
79
|
+
"id", "correlationId", "length", "issuer", "type", "driverType",
|
|
80
|
+
"credentialIdMode", "proofFormat", "indexingDirection", "statusPurpose",
|
|
81
|
+
"statusListCredential"
|
|
82
|
+
)
|
|
83
|
+
SELECT
|
|
84
|
+
"id", "correlationId", "length", "issuer",
|
|
85
|
+
CASE WHEN "type" = 'OAuthStatusList' THEN 'StatusList2021' ELSE "type" END,
|
|
86
|
+
"driverType", "credentialIdMode", "proofFormat", "indexingDirection",
|
|
87
|
+
COALESCE("statusPurpose", 'revocation'), "statusListCredential"
|
|
88
|
+
FROM "StatusList"`);
|
|
89
|
+
// Drop new table and rename temporary table back
|
|
90
|
+
yield queryRunner.query(`DROP TABLE "StatusList"`);
|
|
91
|
+
yield queryRunner.query(`ALTER TABLE "temporary_StatusList" RENAME TO "StatusList"`);
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.UpdateStatusList1737110469000 = UpdateStatusList1737110469000;
|
|
96
|
+
//# sourceMappingURL=1737110469000-UpdateStatusList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1737110469000-UpdateStatusList.js","sourceRoot":"","sources":["../../../src/migrations/sqlite/1737110469000-UpdateStatusList.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,6BAA6B;IAA1C;QACE,SAAI,GAAG,+BAA+B,CAAA;IA0FxC,CAAC;IAxFc,EAAE,CAAC,WAAwB;;YACtC,yCAAyC;YACzC,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;;;;;;;cAeQ,CACT,CAAA;YAED,8CAA8C;YAC9C,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;8BASwB,CACzB,CAAA;YAED,4CAA4C;YAC5C,MAAM,WAAW,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAClD,MAAM,WAAW,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAA;QACtF,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC;;;IAGxB,CAAC,CAAA;YAED,MAAM,WAAW,CAAC,KAAK,CAAC;;;IAGxB,CAAC,CAAA;YAED,yCAAyC;YACzC,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;;;;;cAaQ,CACT,CAAA;YAED,wCAAwC;YACxC,MAAM,WAAW,CAAC,KAAK,CACrB;;;;;;;;;;8BAUwB,CACzB,CAAA;YAED,iDAAiD;YACjD,MAAM,WAAW,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAClD,MAAM,WAAW,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAA;QACtF,CAAC;KAAA;CACF;AA3FD,sEA2FC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { StatusListEntryEntity } from '../entities/
|
|
1
|
+
import { StatusListEntryEntity } from '../entities/statusList/StatusList2021EntryEntity';
|
|
2
2
|
import { IAddStatusListArgs, IAddStatusListEntryArgs, IGetStatusListArgs, IGetStatusListEntriesArgs, IGetStatusListEntryByCredentialIdArgs, IGetStatusListEntryByIndexArgs, IGetStatusListsArgs, IRemoveStatusListArgs, IStatusListEntryAvailableArgs, IUpdateStatusListIndexArgs } from '../types';
|
|
3
3
|
import { IStatusListEntity, IStatusListEntryEntity } from '../types';
|
|
4
4
|
export interface IStatusListStore {
|
|
5
5
|
getStatusList(args: IGetStatusListArgs): Promise<IStatusListEntity>;
|
|
6
6
|
getStatusLists(args: IGetStatusListsArgs): Promise<Array<IStatusListEntity>>;
|
|
7
|
-
removeStatusList(args: IRemoveStatusListArgs): Promise<
|
|
7
|
+
removeStatusList(args: IRemoveStatusListArgs): Promise<boolean>;
|
|
8
8
|
addStatusList(args: IAddStatusListArgs): Promise<IStatusListEntity>;
|
|
9
9
|
updateStatusList(args: IUpdateStatusListIndexArgs): Promise<IStatusListEntity>;
|
|
10
10
|
availableStatusListEntries(args: IStatusListEntryAvailableArgs): Promise<number[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IStatusListStore.d.ts","sourceRoot":"","sources":["../../src/statusList/IStatusListStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"IStatusListStore.d.ts","sourceRoot":"","sources":["../../src/statusList/IStatusListStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAA;AACxF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,EACzB,qCAAqC,EACrC,8BAA8B,EAC9B,mBAAmB,EACnB,qBAAqB,EACrB,6BAA6B,EAC7B,0BAA0B,EAC3B,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAEnE,cAAc,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAE5E,gBAAgB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE/D,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAEnE,gBAAgB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE9E,0BAA0B,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAElF,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAElF,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAErF,yBAAyB,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAA;IAE3G,gCAAgC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAA;IAEzH,4BAA4B,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpF,mCAAmC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAElG,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAA;IAExF,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;CACpE"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { OrPromise } from '@sphereon/ssi-types';
|
|
1
|
+
import { OrPromise, StatusListType } from '@sphereon/ssi-types';
|
|
2
2
|
import { DataSource, Repository } from 'typeorm';
|
|
3
|
-
import { StatusListEntity } from '../entities/
|
|
4
|
-
import { StatusListEntryEntity } from '../entities/
|
|
5
|
-
import { IAddStatusListArgs, IAddStatusListEntryArgs, IGetStatusListArgs, IGetStatusListEntriesArgs, IGetStatusListEntryByCredentialIdArgs, IGetStatusListEntryByIndexArgs, IGetStatusListsArgs, IRemoveStatusListArgs,
|
|
3
|
+
import { StatusListEntity } from '../entities/statusList/StatusListEntities';
|
|
4
|
+
import { StatusListEntryEntity } from '../entities/statusList/StatusList2021EntryEntity';
|
|
5
|
+
import { IAddStatusListArgs, IAddStatusListEntryArgs, IGetStatusListArgs, IGetStatusListEntriesArgs, IGetStatusListEntryByCredentialIdArgs, IGetStatusListEntryByIndexArgs, IGetStatusListsArgs, IRemoveStatusListArgs, IStatusListEntity, IStatusListEntryAvailableArgs, IStatusListEntryEntity, IUpdateStatusListIndexArgs } from '../types';
|
|
6
6
|
import { IStatusListStore } from './IStatusListStore';
|
|
7
7
|
export declare class StatusListStore implements IStatusListStore {
|
|
8
8
|
private readonly _dbConnection;
|
|
@@ -19,18 +19,19 @@ export declare class StatusListStore implements IStatusListStore {
|
|
|
19
19
|
availableStatusListEntries(args: IStatusListEntryAvailableArgs): Promise<number[]>;
|
|
20
20
|
addStatusListEntry(args: IAddStatusListEntryArgs): Promise<IStatusListEntryEntity>;
|
|
21
21
|
updateStatusListEntry(args: IAddStatusListEntryArgs): Promise<IStatusListEntryEntity>;
|
|
22
|
-
getStatusListEntryByIndex(
|
|
23
|
-
removeStatusListEntryByIndex(args: IGetStatusListEntryByIndexArgs): Promise<boolean>;
|
|
22
|
+
getStatusListEntryByIndex({ statusListId, statusListCorrelationId, statusListIndex, entryCorrelationId, errorOnNotFound, }: IGetStatusListEntryByIndexArgs): Promise<StatusListEntryEntity | undefined>;
|
|
24
23
|
getStatusListEntryByCredentialId(args: IGetStatusListEntryByCredentialIdArgs): Promise<StatusListEntryEntity | undefined>;
|
|
25
24
|
removeStatusListEntryByCredentialId(args: IGetStatusListEntryByCredentialIdArgs): Promise<boolean>;
|
|
25
|
+
removeStatusListEntryByIndex(args: IGetStatusListEntryByIndexArgs): Promise<boolean>;
|
|
26
26
|
getStatusListEntries(args: IGetStatusListEntriesArgs): Promise<StatusListEntryEntity[]>;
|
|
27
27
|
getStatusList(args: IGetStatusListArgs): Promise<IStatusListEntity>;
|
|
28
|
+
private getStatusListEntity;
|
|
28
29
|
getStatusLists(args: IGetStatusListsArgs): Promise<Array<IStatusListEntity>>;
|
|
29
30
|
addStatusList(args: IAddStatusListArgs): Promise<IStatusListEntity>;
|
|
30
31
|
updateStatusList(args: IUpdateStatusListIndexArgs): Promise<IStatusListEntity>;
|
|
31
|
-
removeStatusList(args: IRemoveStatusListArgs): Promise<
|
|
32
|
+
removeStatusList(args: IRemoveStatusListArgs): Promise<boolean>;
|
|
32
33
|
private getDS;
|
|
33
|
-
getStatusListRepo(): Promise<Repository<StatusListEntity>>;
|
|
34
|
+
getStatusListRepo(type?: StatusListType): Promise<Repository<StatusListEntity>>;
|
|
34
35
|
getStatusListEntryRepo(): Promise<Repository<StatusListEntryEntity>>;
|
|
35
36
|
}
|
|
36
37
|
//# sourceMappingURL=StatusListStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusListStore.d.ts","sourceRoot":"","sources":["../../src/statusList/StatusListStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/
|
|
1
|
+
{"version":3,"file":"StatusListStore.d.ts","sourceRoot":"","sources":["../../src/statusList/StatusListStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAE/D,OAAO,EAAE,UAAU,EAAM,UAAU,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAA+C,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AACzH,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAA;AACxF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,EACzB,qCAAqC,EACrC,8BAA8B,EAC9B,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,0BAA0B,EAC3B,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAKrD,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;gBAEzC,YAAY,EAAE,SAAS,CAAC,UAAU,CAAC;IAI/C;;;;;;;;OAQG;IACG,0BAA0B,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAelF,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIlF,qBAAqB,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAyBrF,yBAAyB,CAAC,EAC9B,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,EAAE,8BAA8B,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IA8BxE,gCAAgC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAuBzH,mCAAmC,CAAC,IAAI,EAAE,qCAAqC,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBlG,4BAA4B,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBpF,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAIvF,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAI3D,mBAAmB;IAiB3B,cAAc,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAc5E,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkBnE,gBAAgB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQ9E,gBAAgB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC;YASvD,KAAK;IAIb,iBAAiB,CAAC,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAY/E,sBAAsB,IAAI,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;CAG3E"}
|
|
@@ -13,10 +13,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.StatusListStore = void 0;
|
|
16
|
+
const ssi_types_1 = require("@sphereon/ssi-types");
|
|
16
17
|
const debug_1 = __importDefault(require("debug"));
|
|
17
18
|
const typeorm_1 = require("typeorm");
|
|
18
|
-
const
|
|
19
|
-
const StatusList2021EntryEntity_1 = require("../entities/
|
|
19
|
+
const StatusListEntities_1 = require("../entities/statusList/StatusListEntities");
|
|
20
|
+
const StatusList2021EntryEntity_1 = require("../entities/statusList/StatusList2021EntryEntity");
|
|
21
|
+
const MappingUtils_1 = require("../utils/statusList/MappingUtils");
|
|
20
22
|
const debug = (0, debug_1.default)('sphereon:ssi-sdk:data-store:status-list');
|
|
21
23
|
class StatusListStore {
|
|
22
24
|
constructor(dbConnection) {
|
|
@@ -52,7 +54,8 @@ class StatusListStore {
|
|
|
52
54
|
}
|
|
53
55
|
updateStatusListEntry(args) {
|
|
54
56
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
|
|
57
|
+
var _a, _b, _c;
|
|
58
|
+
const statusListId = (_a = args.statusListId) !== null && _a !== void 0 ? _a : (_b = args.statusList) === null || _b === void 0 ? void 0 : _b.id;
|
|
56
59
|
const result = yield this.getStatusListEntryByIndex(Object.assign(Object.assign({}, args), { statusListId, errorOnNotFound: false }));
|
|
57
60
|
const updatedEntry = {
|
|
58
61
|
value: args.value,
|
|
@@ -60,52 +63,43 @@ class StatusListStore {
|
|
|
60
63
|
credentialHash: args.credentialHash,
|
|
61
64
|
credentialId: args.credentialId,
|
|
62
65
|
};
|
|
63
|
-
const
|
|
66
|
+
const updStatusListId = (_c = result === null || result === void 0 ? void 0 : result.statusListId) !== null && _c !== void 0 ? _c : statusListId;
|
|
67
|
+
const updateResult = yield (yield this.getStatusListEntryRepo()).upsert(Object.assign(Object.assign({}, (result !== null && result !== void 0 ? result : { statusListId: updStatusListId, statusListIndex: args.statusListIndex })), updatedEntry), { conflictPaths: ['statusList', 'statusListIndex'] });
|
|
64
68
|
console.log(updateResult);
|
|
65
|
-
return (yield this.getStatusListEntryByIndex(Object.assign(Object.assign({}, args), { statusListId, errorOnNotFound: true })));
|
|
69
|
+
return (yield this.getStatusListEntryByIndex(Object.assign(Object.assign({}, args), { statusListId: updStatusListId, errorOnNotFound: true })));
|
|
66
70
|
});
|
|
67
71
|
}
|
|
68
|
-
getStatusListEntryByIndex(
|
|
69
|
-
return __awaiter(this,
|
|
70
|
-
if (!
|
|
71
|
-
throw Error(`Cannot get statusList entry
|
|
72
|
+
getStatusListEntryByIndex(_a) {
|
|
73
|
+
return __awaiter(this, arguments, void 0, function* ({ statusListId, statusListCorrelationId, statusListIndex, entryCorrelationId, errorOnNotFound, }) {
|
|
74
|
+
if (!statusListId && !statusListCorrelationId) {
|
|
75
|
+
throw Error(`Cannot get statusList entry without either a statusList id or statusListCorrelationId`);
|
|
76
|
+
}
|
|
77
|
+
if (!statusListIndex && !entryCorrelationId) {
|
|
78
|
+
throw Error(`Cannot get statusList entry without either a statusListIndex or entryCorrelationId`);
|
|
72
79
|
}
|
|
73
80
|
const result = yield (yield this.getStatusListEntryRepo()).findOne({
|
|
74
|
-
where: Object.assign(Object.assign(Object.assign({}, (
|
|
81
|
+
where: Object.assign(Object.assign(Object.assign(Object.assign({}, (statusListId && { statusListId })), (!statusListId && statusListCorrelationId && { statusList: { correlationId: statusListCorrelationId } })), (statusListIndex && { statusListIndex })), (entryCorrelationId && { entryCorrelationId })),
|
|
82
|
+
relations: {
|
|
83
|
+
statusList: true,
|
|
84
|
+
},
|
|
75
85
|
});
|
|
76
|
-
if (!result &&
|
|
77
|
-
throw Error(`Could not find status list
|
|
86
|
+
if (!result && errorOnNotFound) {
|
|
87
|
+
throw Error(`Could not find status list entry with provided filters`);
|
|
78
88
|
}
|
|
79
89
|
return result !== null && result !== void 0 ? result : undefined;
|
|
80
90
|
});
|
|
81
91
|
}
|
|
82
|
-
removeStatusListEntryByIndex(args) {
|
|
83
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
-
let error = false;
|
|
85
|
-
try {
|
|
86
|
-
yield this.getStatusListEntryByIndex(args); // only used to check it exists
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
error = true;
|
|
90
|
-
}
|
|
91
|
-
if (error) {
|
|
92
|
-
console.log(`Could not delete statusList ${args.statusListId} entry by index ${args.statusListIndex}`);
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
const result = yield (yield this.getStatusListEntryRepo()).delete(Object.assign(Object.assign(Object.assign({}, (args.statusListId && { statusList: args.statusListId })), (args.correlationId && { correlationId: args.correlationId })), { statusListIndex: args.statusListIndex }));
|
|
96
|
-
error = !result.affected || result.affected !== 1;
|
|
97
|
-
}
|
|
98
|
-
return !error;
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
92
|
getStatusListEntryByCredentialId(args) {
|
|
102
93
|
return __awaiter(this, void 0, void 0, function* () {
|
|
103
94
|
const credentialId = args.credentialId;
|
|
104
95
|
if (!credentialId) {
|
|
105
96
|
throw Error('Can only get a credential by credentialId when a credentialId is supplied');
|
|
106
97
|
}
|
|
107
|
-
const statusList = yield this.getStatusList({
|
|
108
|
-
|
|
98
|
+
const statusList = yield this.getStatusList({
|
|
99
|
+
id: args.statusListId,
|
|
100
|
+
correlationId: args.statusListCorrelationId,
|
|
101
|
+
});
|
|
102
|
+
const where = Object.assign(Object.assign({ statusList: { id: statusList.id } }, (args.entryCorrelationId && { correlationId: args.entryCorrelationId })), { credentialId });
|
|
109
103
|
console.log(`Entries: ${JSON.stringify(yield (yield this.getStatusListEntryRepo()).find(), null, 2)}`);
|
|
110
104
|
const result = yield (yield this.getStatusListEntryRepo()).findOne({ where });
|
|
111
105
|
if (!result && args.errorOnNotFound) {
|
|
@@ -130,12 +124,36 @@ class StatusListStore {
|
|
|
130
124
|
return !error;
|
|
131
125
|
});
|
|
132
126
|
}
|
|
127
|
+
removeStatusListEntryByIndex(args) {
|
|
128
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
+
let error = false;
|
|
130
|
+
try {
|
|
131
|
+
yield this.getStatusListEntryByIndex(args);
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
error = true;
|
|
135
|
+
}
|
|
136
|
+
if (error) {
|
|
137
|
+
console.log(`Could not delete statusList ${args.statusListId} entry by index ${args.statusListIndex}`);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
const result = yield (yield this.getStatusListEntryRepo()).delete(Object.assign(Object.assign(Object.assign({}, (args.statusListId && { statusList: args.statusListId })), (args.entryCorrelationId && { correlationId: args.entryCorrelationId })), { statusListIndex: args.statusListIndex }));
|
|
141
|
+
error = !result.affected || result.affected !== 1;
|
|
142
|
+
}
|
|
143
|
+
return !error;
|
|
144
|
+
});
|
|
145
|
+
}
|
|
133
146
|
getStatusListEntries(args) {
|
|
134
147
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
148
|
return (yield this.getStatusListEntryRepo()).find({ where: Object.assign(Object.assign({}, args === null || args === void 0 ? void 0 : args.filter), { statusList: args.statusListId }) });
|
|
136
149
|
});
|
|
137
150
|
}
|
|
138
151
|
getStatusList(args) {
|
|
152
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
153
|
+
return (0, MappingUtils_1.statusListFrom)(yield this.getStatusListEntity(args));
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
getStatusListEntity(args) {
|
|
139
157
|
return __awaiter(this, void 0, void 0, function* () {
|
|
140
158
|
if (!args.id && !args.correlationId) {
|
|
141
159
|
throw Error(`At least and 'id' or 'correlationId' needs to be provided to lookup a status list`);
|
|
@@ -162,7 +180,7 @@ class StatusListStore {
|
|
|
162
180
|
if (!result) {
|
|
163
181
|
return [];
|
|
164
182
|
}
|
|
165
|
-
return result;
|
|
183
|
+
return result.map((entity) => (0, MappingUtils_1.statusListFrom)(entity));
|
|
166
184
|
});
|
|
167
185
|
}
|
|
168
186
|
addStatusList(args) {
|
|
@@ -175,22 +193,26 @@ class StatusListStore {
|
|
|
175
193
|
throw Error(`Status list for id ${id}, correlationId ${correlationId} already exists`);
|
|
176
194
|
}
|
|
177
195
|
debug('Adding status list ', id);
|
|
178
|
-
const
|
|
179
|
-
|
|
196
|
+
const entity = (0, MappingUtils_1.statusListEntityFrom)(args);
|
|
197
|
+
const createdResult = yield (yield this.getStatusListRepo(args.type)).save(entity);
|
|
198
|
+
return (0, MappingUtils_1.statusListFrom)(createdResult);
|
|
180
199
|
});
|
|
181
200
|
}
|
|
182
201
|
updateStatusList(args) {
|
|
183
202
|
return __awaiter(this, void 0, void 0, function* () {
|
|
184
203
|
const result = yield this.getStatusList(args);
|
|
185
204
|
debug('Updating status list', result);
|
|
186
|
-
const
|
|
187
|
-
|
|
205
|
+
const entity = (0, MappingUtils_1.statusListEntityFrom)(args);
|
|
206
|
+
const updatedResult = yield (yield this.getStatusListRepo(args.type)).save(entity, { transaction: true });
|
|
207
|
+
return (0, MappingUtils_1.statusListFrom)(updatedResult);
|
|
188
208
|
});
|
|
189
209
|
}
|
|
190
210
|
removeStatusList(args) {
|
|
191
211
|
return __awaiter(this, void 0, void 0, function* () {
|
|
192
|
-
const result = yield this.
|
|
193
|
-
yield (yield this.
|
|
212
|
+
const result = yield this.getStatusListEntity(args);
|
|
213
|
+
yield (yield this.getStatusListEntryRepo()).delete({ statusListId: result.id });
|
|
214
|
+
const deletedEntity = yield (yield this.getStatusListRepo()).remove(result);
|
|
215
|
+
return Boolean(deletedEntity);
|
|
194
216
|
});
|
|
195
217
|
}
|
|
196
218
|
getDS() {
|
|
@@ -198,9 +220,17 @@ class StatusListStore {
|
|
|
198
220
|
return this._dbConnection;
|
|
199
221
|
});
|
|
200
222
|
}
|
|
201
|
-
getStatusListRepo() {
|
|
223
|
+
getStatusListRepo(type) {
|
|
202
224
|
return __awaiter(this, void 0, void 0, function* () {
|
|
203
|
-
|
|
225
|
+
const dataSource = yield this.getDS();
|
|
226
|
+
switch (type) {
|
|
227
|
+
case ssi_types_1.StatusListType.StatusList2021:
|
|
228
|
+
return dataSource.getRepository(StatusListEntities_1.StatusList2021Entity);
|
|
229
|
+
case ssi_types_1.StatusListType.OAuthStatusList:
|
|
230
|
+
return dataSource.getRepository(StatusListEntities_1.OAuthStatusListEntity);
|
|
231
|
+
default:
|
|
232
|
+
return dataSource.getRepository(StatusListEntities_1.StatusListEntity);
|
|
233
|
+
}
|
|
204
234
|
});
|
|
205
235
|
}
|
|
206
236
|
getStatusListEntryRepo() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusListStore.js","sourceRoot":"","sources":["../../src/statusList/StatusListStore.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"StatusListStore.js","sourceRoot":"","sources":["../../src/statusList/StatusListStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CredentialCorrelationType, CredentialRole, CredentialStateType, DigitalCredential, RegulationType } from './digitalCredential';
|
|
2
|
-
import {
|
|
2
|
+
import { HasherSync } from '@sphereon/ssi-types';
|
|
3
3
|
import { FindOptionsOrder } from 'typeorm';
|
|
4
4
|
import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity';
|
|
5
5
|
export type GetCredentialArgs = {
|
|
@@ -35,7 +35,7 @@ export type AddCredentialArgs = {
|
|
|
35
35
|
revokedAt?: Date;
|
|
36
36
|
opts?: {
|
|
37
37
|
maxTimeSkewInMS?: number;
|
|
38
|
-
hasher?:
|
|
38
|
+
hasher?: HasherSync;
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
41
|
export type UpdateCredentialStateArgs = GetCredentialArgs & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAbstractDigitalCredentialStore.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/IAbstractDigitalCredentialStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACvI,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"IAbstractDigitalCredentialStore.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/IAbstractDigitalCredentialStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACvI,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAA;AAElG,MAAM,MAAM,iBAAiB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjE,MAAM,MAAM,yBAAyB,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAEzE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,CAAC,EAAE,yBAAyB,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC,uBAAuB,CAAC,CAAA;CAC3D,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAC9B,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,EAAE,yBAAyB,CAAA;IAChD,sBAAsB,CAAC,EAAE,yBAAyB,CAAA;IAClD,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,cAAc,EAAE,cAAc,CAAA;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,mBAAmB,CAAA;IAC3B,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,UAAU,CAAA;KAAE,CAAA;CACzD,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,GAAG;IAAE,aAAa,EAAE,mBAAmB,CAAC;IAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,CAAA;CAAE,CAAA;AAEvI,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FindOptionsWhere } from 'typeorm';
|
|
2
|
-
import { IStatusListEntity, IStatusListEntryEntity } from './statusList';
|
|
3
|
-
export type FindStatusListArgs = FindOptionsWhere<
|
|
2
|
+
import { IOAuthStatusListEntity, IStatusList2021Entity, IStatusListEntity, IStatusListEntryEntity } from './statusList';
|
|
3
|
+
export type FindStatusListArgs = FindOptionsWhere<IStatusList2021Entity | IOAuthStatusListEntity>[];
|
|
4
4
|
export type FindStatusListEntryArgs = FindOptionsWhere<IStatusListEntryEntity>[] | FindOptionsWhere<IStatusListEntryEntity>;
|
|
5
5
|
export interface IStatusListEntryAvailableArgs {
|
|
6
6
|
statusListId?: string;
|
|
@@ -9,8 +9,9 @@ export interface IStatusListEntryAvailableArgs {
|
|
|
9
9
|
}
|
|
10
10
|
export interface IGetStatusListEntryByIndexArgs {
|
|
11
11
|
statusListId?: string;
|
|
12
|
-
|
|
13
|
-
statusListIndex
|
|
12
|
+
statusListCorrelationId?: string;
|
|
13
|
+
statusListIndex?: number;
|
|
14
|
+
entryCorrelationId?: string;
|
|
14
15
|
errorOnNotFound?: boolean;
|
|
15
16
|
}
|
|
16
17
|
export interface IGetStatusListEntryByCredentialIdArgs {
|