@sphereon/ssi-sdk.data-store 0.19.1-next.2 → 0.19.1-next.75

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.
Files changed (110) hide show
  1. package/dist/digitalCredential/AbstractDigitalCredentialStore.d.ts +10 -0
  2. package/dist/digitalCredential/AbstractDigitalCredentialStore.d.ts.map +1 -0
  3. package/dist/digitalCredential/AbstractDigitalCredentialStore.js +7 -0
  4. package/dist/digitalCredential/AbstractDigitalCredentialStore.js.map +1 -0
  5. package/dist/digitalCredential/DigitalCredentialStore.d.ts +15 -0
  6. package/dist/digitalCredential/DigitalCredentialStore.d.ts.map +1 -0
  7. package/dist/digitalCredential/DigitalCredentialStore.js +118 -0
  8. package/dist/digitalCredential/DigitalCredentialStore.js.map +1 -0
  9. package/dist/entities/digitalCredential/DigitalCredentialEntity.d.ts +23 -0
  10. package/dist/entities/digitalCredential/DigitalCredentialEntity.d.ts.map +1 -0
  11. package/dist/entities/digitalCredential/DigitalCredentialEntity.js +93 -0
  12. package/dist/entities/digitalCredential/DigitalCredentialEntity.js.map +1 -0
  13. package/dist/entities/machineState/MachineStateInfoEntity.d.ts +33 -0
  14. package/dist/entities/machineState/MachineStateInfoEntity.d.ts.map +1 -0
  15. package/dist/entities/machineState/MachineStateInfoEntity.js +85 -0
  16. package/dist/entities/machineState/MachineStateInfoEntity.js.map +1 -0
  17. package/dist/index.d.ts +10 -3
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +19 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/machineState/IAbstractMachineStateStore.d.ts +52 -0
  22. package/dist/machineState/IAbstractMachineStateStore.d.ts.map +1 -0
  23. package/dist/machineState/IAbstractMachineStateStore.js +13 -0
  24. package/dist/machineState/IAbstractMachineStateStore.js.map +1 -0
  25. package/dist/machineState/MachineStateStore.d.ts +21 -0
  26. package/dist/machineState/MachineStateStore.d.ts.map +1 -0
  27. package/dist/machineState/MachineStateStore.js +137 -0
  28. package/dist/machineState/MachineStateStore.js.map +1 -0
  29. package/dist/migrations/generic/6-CreateDigitalCredential.d.ts +7 -0
  30. package/dist/migrations/generic/6-CreateDigitalCredential.d.ts.map +1 -0
  31. package/dist/migrations/generic/6-CreateDigitalCredential.js +78 -0
  32. package/dist/migrations/generic/6-CreateDigitalCredential.js.map +1 -0
  33. package/dist/migrations/generic/7-CreateMachineStateStore.d.ts +7 -0
  34. package/dist/migrations/generic/7-CreateMachineStateStore.d.ts.map +1 -0
  35. package/dist/migrations/generic/7-CreateMachineStateStore.js +78 -0
  36. package/dist/migrations/generic/7-CreateMachineStateStore.js.map +1 -0
  37. package/dist/migrations/generic/index.d.ts +4 -0
  38. package/dist/migrations/generic/index.d.ts.map +1 -1
  39. package/dist/migrations/generic/index.js +7 -1
  40. package/dist/migrations/generic/index.js.map +1 -1
  41. package/dist/migrations/index.d.ts +1 -1
  42. package/dist/migrations/index.d.ts.map +1 -1
  43. package/dist/migrations/index.js +3 -1
  44. package/dist/migrations/index.js.map +1 -1
  45. package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.d.ts +7 -0
  46. package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.d.ts.map +1 -0
  47. package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.js +59 -0
  48. package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.js.map +1 -0
  49. package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.d.ts +7 -0
  50. package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.d.ts.map +1 -0
  51. package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.js +45 -0
  52. package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.js.map +1 -0
  53. package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.d.ts +7 -0
  54. package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.d.ts.map +1 -0
  55. package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.js +50 -0
  56. package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.js.map +1 -0
  57. package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.d.ts +7 -0
  58. package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.d.ts.map +1 -0
  59. package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.js +44 -0
  60. package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.js.map +1 -0
  61. package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.d.ts +42 -0
  62. package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.d.ts.map +1 -0
  63. package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.js +3 -0
  64. package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.js.map +1 -0
  65. package/dist/types/digitalCredential/digitalCredential.d.ts +42 -0
  66. package/dist/types/digitalCredential/digitalCredential.d.ts.map +1 -0
  67. package/dist/types/digitalCredential/digitalCredential.js +28 -0
  68. package/dist/types/digitalCredential/digitalCredential.js.map +1 -0
  69. package/dist/types/index.d.ts +1 -0
  70. package/dist/types/index.d.ts.map +1 -1
  71. package/dist/types/index.js +1 -0
  72. package/dist/types/index.js.map +1 -1
  73. package/dist/types/machineState/IAbstractMachineStateStore.d.ts +58 -0
  74. package/dist/types/machineState/IAbstractMachineStateStore.d.ts.map +1 -0
  75. package/dist/types/machineState/IAbstractMachineStateStore.js +3 -0
  76. package/dist/types/machineState/IAbstractMachineStateStore.js.map +1 -0
  77. package/dist/utils/SortingUtils.d.ts +3 -0
  78. package/dist/utils/SortingUtils.d.ts.map +1 -0
  79. package/dist/utils/SortingUtils.js +18 -0
  80. package/dist/utils/SortingUtils.js.map +1 -0
  81. package/dist/utils/digitalCredential/MappingUtils.d.ts +7 -0
  82. package/dist/utils/digitalCredential/MappingUtils.d.ts.map +1 -0
  83. package/dist/utils/digitalCredential/MappingUtils.js +99 -0
  84. package/dist/utils/digitalCredential/MappingUtils.js.map +1 -0
  85. package/package.json +5 -4
  86. package/src/__tests__/digitalCredential.entities.test.ts +254 -0
  87. package/src/__tests__/digitalCredential.store.test.ts +294 -0
  88. package/src/__tests__/machineState.entities.test.ts +51 -0
  89. package/src/__tests__/machineState.store.test.ts +174 -0
  90. package/src/digitalCredential/AbstractDigitalCredentialStore.ts +17 -0
  91. package/src/digitalCredential/DigitalCredentialStore.ts +127 -0
  92. package/src/entities/digitalCredential/DigitalCredentialEntity.ts +64 -0
  93. package/src/entities/machineState/MachineStateInfoEntity.ts +58 -0
  94. package/src/index.ts +18 -0
  95. package/src/machineState/IAbstractMachineStateStore.ts +65 -0
  96. package/src/machineState/MachineStateStore.ts +151 -0
  97. package/src/migrations/generic/6-CreateDigitalCredential.ts +66 -0
  98. package/src/migrations/generic/7-CreateMachineStateStore.ts +66 -0
  99. package/src/migrations/generic/index.ts +6 -0
  100. package/src/migrations/index.ts +2 -0
  101. package/src/migrations/postgres/1708525189001-CreateDigitalCredential.ts +44 -0
  102. package/src/migrations/postgres/1708797018115-CreateMachineStateStore.ts +29 -0
  103. package/src/migrations/sqlite/1708525189002-CreateDigitalCredential.ts +34 -0
  104. package/src/migrations/sqlite/1708796002272-CreateMachineStateStore.ts +28 -0
  105. package/src/types/digitalCredential/IAbstractDigitalCredentialStore.ts +37 -0
  106. package/src/types/digitalCredential/digitalCredential.ts +46 -0
  107. package/src/types/index.ts +1 -0
  108. package/src/types/machineState/IAbstractMachineStateStore.ts +68 -0
  109. package/src/utils/SortingUtils.ts +16 -0
  110. package/src/utils/digitalCredential/MappingUtils.ts +122 -0
@@ -0,0 +1,7 @@
1
+ import { MigrationInterface, QueryRunner } from 'typeorm';
2
+ export declare class CreateMachineStateStore1708797018115 implements MigrationInterface {
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=1708797018115-CreateMachineStateStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708797018115-CreateMachineStateStore.d.ts","sourceRoot":"","sources":["../../../src/migrations/postgres/1708797018115-CreateMachineStateStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,oCAAqC,YAAW,kBAAkB;IAC7E,IAAI,SAAyC;IAEhC,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
@@ -0,0 +1,45 @@
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.CreateMachineStateStore1708797018115 = void 0;
13
+ class CreateMachineStateStore1708797018115 {
14
+ constructor() {
15
+ this.name = 'CreateMachineStateStore1708797018115';
16
+ }
17
+ up(queryRunner) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ yield queryRunner.query(`
20
+ CREATE TABLE "MachineStateInfoEntity" (
21
+ "instance_id" text NOT NULL,
22
+ "session_id" text,
23
+ "latest_state_name" text,
24
+ "machine_name" text NOT NULL,
25
+ "latest_event_type" text NOT NULL,
26
+ "state" text NOT NULL,
27
+ "created_at" TIMESTAMP NOT NULL DEFAULT now(),
28
+ "updated_at" TIMESTAMP NOT NULL DEFAULT now(),
29
+ "updated_count" integer NOT NULL DEFAULT 0,
30
+ "expires_at" TIMESTAMP,
31
+ "completed_at" TIMESTAMP,
32
+ "tenant_id" text,
33
+ CONSTRAINT "PK_MachineStateInfoEntity_id" PRIMARY KEY ("instance_id")
34
+ )
35
+ `);
36
+ });
37
+ }
38
+ down(queryRunner) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ yield queryRunner.query(`DROP TABLE "MachineStateInfoEntity"`);
41
+ });
42
+ }
43
+ }
44
+ exports.CreateMachineStateStore1708797018115 = CreateMachineStateStore1708797018115;
45
+ //# sourceMappingURL=1708797018115-CreateMachineStateStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708797018115-CreateMachineStateStore.js","sourceRoot":"","sources":["../../../src/migrations/postgres/1708797018115-CreateMachineStateStore.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,oCAAoC;IAAjD;QACE,SAAI,GAAG,sCAAsC,CAAA;IAyB/C,CAAC;IAvBc,EAAE,CAAC,WAAwB;;YACtC,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;SAgBnB,CAAC,CAAA;QACR,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAChE,CAAC;KAAA;CACF;AA1BD,oFA0BC"}
@@ -0,0 +1,7 @@
1
+ import { MigrationInterface, QueryRunner } from 'typeorm';
2
+ export declare class CreateDigitalCredential1708525189002 implements MigrationInterface {
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=1708525189002-CreateDigitalCredential.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708525189002-CreateDigitalCredential.d.ts","sourceRoot":"","sources":["../../../src/migrations/sqlite/1708525189002-CreateDigitalCredential.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,oCAAqC,YAAW,kBAAkB;IAC7E,IAAI,SAAyC;IAEhC,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
@@ -0,0 +1,50 @@
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.CreateDigitalCredential1708525189002 = void 0;
13
+ class CreateDigitalCredential1708525189002 {
14
+ constructor() {
15
+ this.name = 'CreateDigitalCredential1708525189002';
16
+ }
17
+ up(queryRunner) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ yield queryRunner.query(`
20
+ CREATE TABLE "DigitalCredential" (
21
+ "id" varchar PRIMARY KEY NOT NULL,
22
+ "document_type" varchar CHECK( "document_type" IN ('VC', 'VP', 'C', 'P') ) NOT NULL,
23
+ "document_format" varchar CHECK( "document_format" IN ('JSON_LD', 'JWT', 'SD_JWT', 'MDOC') ) NOT NULL,
24
+ "raw_document" text NOT NULL,
25
+ "uniform_document" text NOT NULL,
26
+ "hash" text NOT NULL UNIQUE,
27
+ "issuer_correlation_type" varchar CHECK( "issuer_correlation_type" IN ('DID') ) NOT NULL,
28
+ "subject_correlation_type" varchar CHECK( "subject_correlation_type" IN ('DID') ),
29
+ "issuer_correlation_id" text NOT NULL,
30
+ "subject_correlation_id" text,
31
+ "verified_state" varchar CHECK( "verified_state" IN ('REVOKED', 'VERIFIED', 'EXPIRED') ),
32
+ "tenant_id" text,
33
+ "created_at" datetime NOT NULL DEFAULT (datetime('now')),
34
+ "last_updated_at" datetime NOT NULL DEFAULT (datetime('now')),
35
+ "valid_from" datetime,
36
+ "valid_until" datetime,
37
+ "verified_at" datetime,
38
+ "revoked_at" datetime
39
+ )
40
+ `);
41
+ });
42
+ }
43
+ down(queryRunner) {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ yield queryRunner.query(`DROP TABLE "DigitalCredential"`);
46
+ });
47
+ }
48
+ }
49
+ exports.CreateDigitalCredential1708525189002 = CreateDigitalCredential1708525189002;
50
+ //# sourceMappingURL=1708525189002-CreateDigitalCredential.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708525189002-CreateDigitalCredential.js","sourceRoot":"","sources":["../../../src/migrations/sqlite/1708525189002-CreateDigitalCredential.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,oCAAoC;IAAjD;QACE,SAAI,GAAG,sCAAsC,CAAA;IA8B/C,CAAC;IA5Bc,EAAE,CAAC,WAAwB;;YACtC,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;SAqBnB,CAAC,CAAA;QACR,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAC3D,CAAC;KAAA;CACF;AA/BD,oFA+BC"}
@@ -0,0 +1,7 @@
1
+ import { MigrationInterface, QueryRunner } from 'typeorm';
2
+ export declare class CreateMachineStateStore1708796002272 implements MigrationInterface {
3
+ name: string;
4
+ up(queryRunner: QueryRunner): Promise<void>;
5
+ down(queryRunner: QueryRunner): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=1708796002272-CreateMachineStateStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708796002272-CreateMachineStateStore.d.ts","sourceRoot":"","sources":["../../../src/migrations/sqlite/1708796002272-CreateMachineStateStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,qBAAa,oCAAqC,YAAW,kBAAkB;IAC7E,IAAI,SAAyC;IAEhC,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3D"}
@@ -0,0 +1,44 @@
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.CreateMachineStateStore1708796002272 = void 0;
13
+ class CreateMachineStateStore1708796002272 {
14
+ constructor() {
15
+ this.name = 'CreateMachineStateStore1708796002272';
16
+ }
17
+ up(queryRunner) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ yield queryRunner.query(`
20
+ CREATE TABLE "MachineStateInfoEntity" (
21
+ "instance_id" varchar PRIMARY KEY NOT NULL,
22
+ "session_id" varchar,
23
+ "machine_name" varchar NOT NULL,
24
+ "latest_state_name" varchar,
25
+ "latest_event_type" varchar NOT NULL,
26
+ "state" text NOT NULL,
27
+ "created_at" datetime NOT NULL DEFAULT (datetime('now')),
28
+ "updated_at" datetime NOT NULL DEFAULT (datetime('now')),
29
+ "updated_count" integer NOT NULL DEFAULT 0,
30
+ "expires_at" datetime,
31
+ "completed_at" datetime,
32
+ "tenant_id" varchar
33
+ )
34
+ `);
35
+ });
36
+ }
37
+ down(queryRunner) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ yield queryRunner.query(`DROP TABLE "MachineStateInfoEntity"`);
40
+ });
41
+ }
42
+ }
43
+ exports.CreateMachineStateStore1708796002272 = CreateMachineStateStore1708796002272;
44
+ //# sourceMappingURL=1708796002272-CreateMachineStateStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1708796002272-CreateMachineStateStore.js","sourceRoot":"","sources":["../../../src/migrations/sqlite/1708796002272-CreateMachineStateStore.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,oCAAoC;IAAjD;QACE,SAAI,GAAG,sCAAsC,CAAA;IAwB/C,CAAC;IAtBc,EAAE,CAAC,WAAwB;;YACtC,MAAM,WAAW,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;SAenB,CAAC,CAAA;QACR,CAAC;KAAA;IAEY,IAAI,CAAC,WAAwB;;YACxC,MAAM,WAAW,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAChE,CAAC;KAAA;CACF;AAzBD,oFAyBC"}
@@ -0,0 +1,42 @@
1
+ import { CredentialCorrelationType, CredentialStateType, DigitalCredential } from './digitalCredential';
2
+ import { Hasher } from '@sphereon/ssi-types';
3
+ import { FindOptionsOrder } from 'typeorm';
4
+ import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity';
5
+ export type GetCredentialArgs = {
6
+ id: string;
7
+ } | {
8
+ hash: string;
9
+ };
10
+ export type FindDigitalCredentialArgs = Array<Partial<DigitalCredential>>;
11
+ export type GetCredentialsArgs = {
12
+ filter?: FindDigitalCredentialArgs;
13
+ offset?: number;
14
+ limit?: number;
15
+ order?: string | FindOptionsOrder<DigitalCredentialEntity>;
16
+ };
17
+ export type GetCredentialsResponse = {
18
+ data: Array<DigitalCredential>;
19
+ total: number;
20
+ };
21
+ export type AddCredentialArgs = {
22
+ rawDocument: string;
23
+ issuerCorrelationType: CredentialCorrelationType;
24
+ subjectCorrelationType?: CredentialCorrelationType;
25
+ issuerCorrelationId: string;
26
+ subjectCorrelationId?: string;
27
+ tenantId?: string;
28
+ state?: CredentialStateType;
29
+ verifiedAt?: Date;
30
+ revokedAt?: Date;
31
+ opts?: {
32
+ maxTimeSkewInMS?: number;
33
+ hasher?: Hasher;
34
+ };
35
+ };
36
+ export type UpdateCredentialStateArgs = GetCredentialArgs & {
37
+ verifiedState: CredentialStateType;
38
+ verifiedAt?: Date;
39
+ revokedAt?: Date;
40
+ };
41
+ export type RemoveCredentialArgs = GetCredentialArgs;
42
+ //# sourceMappingURL=IAbstractDigitalCredentialStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAbstractDigitalCredentialStore.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/IAbstractDigitalCredentialStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,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,qBAAqB,EAAE,yBAAyB,CAAA;IAChD,sBAAsB,CAAC,EAAE,yBAAyB,CAAA;IAClD,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,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,MAAM,CAAA;KAAE,CAAA;CACrD,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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IAbstractDigitalCredentialStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAbstractDigitalCredentialStore.js","sourceRoot":"","sources":["../../../src/types/digitalCredential/IAbstractDigitalCredentialStore.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ export type NonPersistedDigitalCredential = Omit<DigitalCredential, 'id'>;
2
+ export type DigitalCredential = {
3
+ id: string;
4
+ documentType: DocumentType;
5
+ documentFormat: CredentialDocumentFormat;
6
+ rawDocument: string;
7
+ uniformDocument: string;
8
+ hash: string;
9
+ issuerCorrelationType: CredentialCorrelationType;
10
+ subjectCorrelationType?: CredentialCorrelationType;
11
+ issuerCorrelationId: string;
12
+ subjectCorrelationId?: string;
13
+ verifiedState?: CredentialStateType;
14
+ tenantId?: string;
15
+ createdAt: Date;
16
+ lastUpdatedAt: Date;
17
+ validUntil?: Date;
18
+ validFrom?: Date;
19
+ verifiedAt?: Date;
20
+ revokedAt?: Date;
21
+ };
22
+ export declare enum DocumentType {
23
+ VC = "VC",
24
+ VP = "VP",
25
+ P = "P",
26
+ C = "C"
27
+ }
28
+ export declare enum CredentialDocumentFormat {
29
+ JSON_LD = "JSON_LD",
30
+ JWT = "JWT",
31
+ SD_JWT = "SD_JWT",
32
+ MDOC = "MDOC"
33
+ }
34
+ export declare enum CredentialCorrelationType {
35
+ DID = "DID"
36
+ }
37
+ export declare enum CredentialStateType {
38
+ REVOKED = "REVOKED",
39
+ VERIFIED = "VERIFIED",
40
+ EXPIRED = "EXPIRED"
41
+ }
42
+ //# sourceMappingURL=digitalCredential.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"digitalCredential.d.ts","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,YAAY,CAAA;IAC1B,cAAc,EAAE,wBAAwB,CAAA;IACxC,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB,EAAE,yBAAyB,CAAA;IAChD,sBAAsB,CAAC,EAAE,yBAAyB,CAAA;IAClD,mBAAmB,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,aAAa,EAAE,IAAI,CAAA;IACnB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,IAAI,CAAA;CACjB,CAAA;AAED,oBAAY,YAAY;IACtB,EAAE,OAAO;IACT,EAAE,OAAO;IACT,CAAC,MAAM;IACP,CAAC,MAAM;CACR;AAED,oBAAY,wBAAwB;IAClC,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,oBAAY,yBAAyB;IACnC,GAAG,QAAQ;CACZ;AAED,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CredentialStateType = exports.CredentialCorrelationType = exports.CredentialDocumentFormat = exports.DocumentType = void 0;
4
+ var DocumentType;
5
+ (function (DocumentType) {
6
+ DocumentType["VC"] = "VC";
7
+ DocumentType["VP"] = "VP";
8
+ DocumentType["P"] = "P";
9
+ DocumentType["C"] = "C";
10
+ })(DocumentType = exports.DocumentType || (exports.DocumentType = {}));
11
+ var CredentialDocumentFormat;
12
+ (function (CredentialDocumentFormat) {
13
+ CredentialDocumentFormat["JSON_LD"] = "JSON_LD";
14
+ CredentialDocumentFormat["JWT"] = "JWT";
15
+ CredentialDocumentFormat["SD_JWT"] = "SD_JWT";
16
+ CredentialDocumentFormat["MDOC"] = "MDOC";
17
+ })(CredentialDocumentFormat = exports.CredentialDocumentFormat || (exports.CredentialDocumentFormat = {}));
18
+ var CredentialCorrelationType;
19
+ (function (CredentialCorrelationType) {
20
+ CredentialCorrelationType["DID"] = "DID";
21
+ })(CredentialCorrelationType = exports.CredentialCorrelationType || (exports.CredentialCorrelationType = {}));
22
+ var CredentialStateType;
23
+ (function (CredentialStateType) {
24
+ CredentialStateType["REVOKED"] = "REVOKED";
25
+ CredentialStateType["VERIFIED"] = "VERIFIED";
26
+ CredentialStateType["EXPIRED"] = "EXPIRED";
27
+ })(CredentialStateType = exports.CredentialStateType || (exports.CredentialStateType = {}));
28
+ //# sourceMappingURL=digitalCredential.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"digitalCredential.js","sourceRoot":"","sources":["../../../src/types/digitalCredential/digitalCredential.ts"],"names":[],"mappings":";;;AAuBA,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,yBAAS,CAAA;IACT,yBAAS,CAAA;IACT,uBAAO,CAAA;IACP,uBAAO,CAAA;AACT,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB;AAED,IAAY,wBAKX;AALD,WAAY,wBAAwB;IAClC,+CAAmB,CAAA;IACnB,uCAAW,CAAA;IACX,6CAAiB,CAAA;IACjB,yCAAa,CAAA;AACf,CAAC,EALW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAKnC;AAED,IAAY,yBAEX;AAFD,WAAY,yBAAyB;IACnC,wCAAW,CAAA;AACb,CAAC,EAFW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAEpC;AAED,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B"}
@@ -7,4 +7,5 @@ export * from './statusList/statusList';
7
7
  export * from './statusList/IAbstractStatusListStore';
8
8
  export * from './eventLogger/IAbstractEventLoggerStore';
9
9
  export * from './eventLogger/eventLogger';
10
+ export * from './machineState/IAbstractMachineStateStore';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAA;AACnD,cAAc,mDAAmD,CAAA;AACjE,cAAc,mBAAmB,CAAA;AACjC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uCAAuC,CAAA;AACrD,cAAc,yCAAyC,CAAA;AACvD,cAAc,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAA;AACnD,cAAc,mDAAmD,CAAA;AACjE,cAAc,mBAAmB,CAAA;AACjC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,uCAAuC,CAAA;AACrD,cAAc,yCAAyC,CAAA;AACvD,cAAc,2BAA2B,CAAA;AACzC,cAAc,2CAA2C,CAAA"}
@@ -23,4 +23,5 @@ __exportStar(require("./statusList/statusList"), exports);
23
23
  __exportStar(require("./statusList/IAbstractStatusListStore"), exports);
24
24
  __exportStar(require("./eventLogger/IAbstractEventLoggerStore"), exports);
25
25
  __exportStar(require("./eventLogger/eventLogger"), exports);
26
+ __exportStar(require("./machineState/IAbstractMachineStateStore"), exports);
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAmD;AACnD,oFAAiE;AACjE,oDAAiC;AACjC,kEAA+C;AAC/C,0DAAuC;AACvC,0DAAuC;AACvC,wEAAqD;AACrD,0EAAuD;AACvD,4DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAmD;AACnD,oFAAiE;AACjE,oDAAiC;AACjC,kEAA+C;AAC/C,0DAAuC;AACvC,0DAAuC;AACvC,wEAAqD;AACrD,0EAAuD;AACvD,4DAAyC;AACzC,4EAAyD"}
@@ -0,0 +1,58 @@
1
+ export type StoreMachineStatePersistArgs = Omit<StoreMachineStateInfo, 'createdAt' | 'updatedAt'>;
2
+ export type StoreMachineStatesFindActiveArgs = Partial<Pick<StoreMachineStateInfo, 'machineName' | 'tenantId' | 'instanceId'>>;
3
+ export type FindMachineStatesFilterArgs = Array<Partial<Omit<StoreMachineStateInfo, 'state'>>>;
4
+ export type StoreFindMachineStatesArgs = {
5
+ filter: FindMachineStatesFilterArgs;
6
+ };
7
+ export type StoreMachineStateGetArgs = Pick<StoreMachineStateInfo, 'instanceId' | 'tenantId'>;
8
+ export type StoreMachineStateDeleteArgs = StoreMachineStateGetArgs;
9
+ export type StoreMachineStateDeleteExpiredArgs = {
10
+ machineName?: string;
11
+ tenantId?: string;
12
+ deleteDoneStates?: boolean;
13
+ };
14
+ export interface StoreMachineStateInfo {
15
+ /**
16
+ * Unique instance ID of the machine
17
+ */
18
+ instanceId: string;
19
+ /**
20
+ * Session Id of the machine. Not necessarily unique
21
+ */
22
+ sessionId?: string;
23
+ /**
24
+ * Machine name
25
+ */
26
+ machineName: string;
27
+ /**
28
+ * The latest state name. Can be empty for a newly initialize machine
29
+ */
30
+ latestStateName?: string;
31
+ /**
32
+ * event types like SET_TOC, SET_FIRSTNAME, .... Will be xstate.init on a newly initialized machine
33
+ */
34
+ latestEventType: string;
35
+ /**
36
+ * Serialized Machine state
37
+ */
38
+ state: string;
39
+ /**
40
+ * Represents the creation date
41
+ */
42
+ createdAt: Date;
43
+ /**
44
+ * Represents the expiration date
45
+ */
46
+ expiresAt?: Date;
47
+ /**
48
+ * Represents the update date
49
+ */
50
+ updatedAt: Date;
51
+ /**
52
+ * Represents a counter for tracking updates.
53
+ */
54
+ updatedCount: number;
55
+ completedAt?: Date;
56
+ tenantId?: string;
57
+ }
58
+ //# sourceMappingURL=IAbstractMachineStateStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAbstractMachineStateStore.d.ts","sourceRoot":"","sources":["../../../src/types/machineState/IAbstractMachineStateStore.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAC,qBAAqB,EAAE,WAAW,GAAG,WAAW,CAAC,CAAA;AAEjG,MAAM,MAAM,gCAAgC,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC,CAAC,CAAA;AAE9H,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;AAE9F,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,2BAA2B,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,qBAAqB,EAAE,YAAY,GAAG,UAAU,CAAC,CAAA;AAE7F,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,CAAA;AAClE,MAAM,MAAM,kCAAkC,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAExH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;OAEG;IACH,eAAe,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,SAAS,EAAE,IAAI,CAAA;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,IAAI,CAAA;IAEhB;;OAEG;IACH,SAAS,EAAE,IAAI,CAAA;IAEf;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IAbstractMachineStateStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAbstractMachineStateStore.js","sourceRoot":"","sources":["../../../src/types/machineState/IAbstractMachineStateStore.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { BaseEntity, FindOptionsOrder } from 'typeorm';
2
+ export declare const parseAndValidateOrderOptions: <T extends BaseEntity>(order: string) => FindOptionsOrder<T>;
3
+ //# sourceMappingURL=SortingUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortingUtils.d.ts","sourceRoot":"","sources":["../../src/utils/SortingUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAEtD,eAAO,MAAM,4BAA4B,gCAAiC,MAAM,wBAa/E,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseAndValidateOrderOptions = void 0;
4
+ const parseAndValidateOrderOptions = (order) => {
5
+ const orderPairs = order.split(',').map((pair) => pair.trim().split('.'));
6
+ const orderOptions = {};
7
+ orderPairs.forEach(([field, direction]) => {
8
+ const dir = direction.toUpperCase();
9
+ if (dir !== 'ASC' && dir !== 'DESC') {
10
+ throw new Error(`Invalid order direction: '${direction}'. Must be 'asc' or 'desc'.`);
11
+ }
12
+ ;
13
+ orderOptions[field] = dir;
14
+ });
15
+ return orderOptions;
16
+ };
17
+ exports.parseAndValidateOrderOptions = parseAndValidateOrderOptions;
18
+ //# sourceMappingURL=SortingUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortingUtils.js","sourceRoot":"","sources":["../../src/utils/SortingUtils.ts"],"names":[],"mappings":";;;AAEO,MAAM,4BAA4B,GAAG,CAAuB,KAAa,EAAuB,EAAE;IACvG,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACzE,MAAM,YAAY,GAAwB,EAAE,CAAA;IAE5C,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;QACnC,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,6BAA6B,CAAC,CAAA;SACrF;QACD,CAAC;QAAC,YAAoB,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAbY,QAAA,4BAA4B,gCAaxC"}
@@ -0,0 +1,7 @@
1
+ import { AddCredentialArgs } from '../../types/digitalCredential/IAbstractDigitalCredentialStore';
2
+ import { DigitalCredentialEntity } from '../../entities/digitalCredential/DigitalCredentialEntity';
3
+ import { DigitalCredential, NonPersistedDigitalCredential } from '../../types/digitalCredential/digitalCredential';
4
+ export declare const nonPersistedDigitalCredentialEntityFromAddArgs: (addCredentialArgs: AddCredentialArgs) => NonPersistedDigitalCredential;
5
+ export declare const digitalCredentialFrom: (credentialEntity: DigitalCredentialEntity) => DigitalCredential;
6
+ export declare const digitalCredentialsFrom: (credentialEntities: Array<DigitalCredentialEntity>) => DigitalCredential[];
7
+ //# sourceMappingURL=MappingUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MappingUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+DAA+D,CAAA;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAA;AAWlG,OAAO,EAGL,iBAAiB,EACjB,6BAA6B,EAC9B,MAAM,iDAAiD,CAAA;AAqExD,eAAO,MAAM,8CAA8C,sBAAuB,iBAAiB,KAAG,6BAyBrG,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAAsB,uBAAuB,KAAG,iBAIjF,CAAA;AAED,eAAO,MAAM,sBAAsB,uBAAwB,MAAM,uBAAuB,CAAC,KAAG,iBAAiB,EAE5G,CAAA"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.digitalCredentialsFrom = exports.digitalCredentialFrom = exports.nonPersistedDigitalCredentialEntityFromAddArgs = void 0;
4
+ const ssi_types_1 = require("@sphereon/ssi-types");
5
+ const digitalCredential_1 = require("../../types/digitalCredential/digitalCredential");
6
+ const utils_1 = require("@veramo/utils");
7
+ function determineDocumentType(raw) {
8
+ const rawDocument = parseRawDocument(raw);
9
+ if (!rawDocument) {
10
+ throw new Error(`Couldn't parse the credential: ${raw}`);
11
+ }
12
+ const hasProof = ssi_types_1.CredentialMapper.hasProof(rawDocument);
13
+ const isCredential = ssi_types_1.CredentialMapper.isCredential(rawDocument);
14
+ const isPresentation = ssi_types_1.CredentialMapper.isPresentation(rawDocument);
15
+ if (isCredential) {
16
+ return hasProof ? digitalCredential_1.DocumentType.VC : digitalCredential_1.DocumentType.C;
17
+ }
18
+ else if (isPresentation) {
19
+ return hasProof ? digitalCredential_1.DocumentType.VP : digitalCredential_1.DocumentType.P;
20
+ }
21
+ throw new Error(`Couldn't determine the type of the credential: ${raw}`);
22
+ }
23
+ function parseRawDocument(raw) {
24
+ if (ssi_types_1.CredentialMapper.isJwtEncoded(raw) || ssi_types_1.CredentialMapper.isSdJwtEncoded(raw)) {
25
+ return raw;
26
+ }
27
+ try {
28
+ return JSON.parse(raw);
29
+ }
30
+ catch (e) {
31
+ throw new Error(`Can't parse the raw credential: ${raw}`);
32
+ }
33
+ }
34
+ function determineCredentialDocumentFormat(documentFormat) {
35
+ switch (documentFormat) {
36
+ case 1 /* DocumentFormat.JSONLD */:
37
+ return digitalCredential_1.CredentialDocumentFormat.JSON_LD;
38
+ case 0 /* DocumentFormat.JWT */:
39
+ return digitalCredential_1.CredentialDocumentFormat.JWT;
40
+ case 2 /* DocumentFormat.SD_JWT_VC */:
41
+ return digitalCredential_1.CredentialDocumentFormat.SD_JWT;
42
+ default:
43
+ throw new Error(`Not supported document format: ${documentFormat}`);
44
+ }
45
+ }
46
+ function getValidUntil(uniformDocument) {
47
+ if ('expirationDate' in uniformDocument) {
48
+ return new Date(uniformDocument.expirationDate);
49
+ }
50
+ else if ('validUntil' in uniformDocument) {
51
+ return new Date(uniformDocument.validUntil);
52
+ }
53
+ else if ('exp' in uniformDocument) {
54
+ return new Date(uniformDocument.exp);
55
+ }
56
+ return undefined;
57
+ }
58
+ function getValidFrom(uniformDocument) {
59
+ if ('issuanceDate' in uniformDocument) {
60
+ return new Date(uniformDocument.issuanceDate);
61
+ }
62
+ else if ('validFrom' in uniformDocument) {
63
+ return new Date(uniformDocument['validFrom']);
64
+ }
65
+ else if ('nbf' in uniformDocument) {
66
+ return new Date(uniformDocument['nbf'] * 1000);
67
+ }
68
+ else if ('iat' in uniformDocument) {
69
+ return new Date(uniformDocument['iat'] * 1000);
70
+ }
71
+ return undefined;
72
+ }
73
+ const nonPersistedDigitalCredentialEntityFromAddArgs = (addCredentialArgs) => {
74
+ var _a;
75
+ const documentType = determineDocumentType(addCredentialArgs.rawDocument);
76
+ const documentFormat = ssi_types_1.CredentialMapper.detectDocumentType(addCredentialArgs.rawDocument);
77
+ if (documentFormat === 2 /* DocumentFormat.SD_JWT_VC */ && !((_a = addCredentialArgs.opts) === null || _a === void 0 ? void 0 : _a.hasher)) {
78
+ throw new Error('No hasher function is provided for SD_JWT credential.');
79
+ }
80
+ const uniformDocument = documentFormat === 2 /* DocumentFormat.SD_JWT_VC */
81
+ ? (0, ssi_types_1.decodeSdJwtVc)(addCredentialArgs.rawDocument, addCredentialArgs.opts.hasher).decodedPayload
82
+ : documentType === digitalCredential_1.DocumentType.VC || documentType === digitalCredential_1.DocumentType.C
83
+ ? ssi_types_1.CredentialMapper.toUniformCredential(addCredentialArgs.rawDocument)
84
+ : ssi_types_1.CredentialMapper.toUniformPresentation(addCredentialArgs.rawDocument);
85
+ const validFrom = getValidFrom(uniformDocument);
86
+ const validUntil = getValidUntil(uniformDocument);
87
+ return Object.assign(Object.assign({}, addCredentialArgs), { documentType, documentFormat: determineCredentialDocumentFormat(documentFormat), createdAt: new Date(), hash: (0, utils_1.computeEntryHash)(addCredentialArgs.rawDocument), uniformDocument: JSON.stringify(uniformDocument), validFrom,
88
+ validUntil, lastUpdatedAt: new Date() });
89
+ };
90
+ exports.nonPersistedDigitalCredentialEntityFromAddArgs = nonPersistedDigitalCredentialEntityFromAddArgs;
91
+ const digitalCredentialFrom = (credentialEntity) => {
92
+ return Object.assign({}, credentialEntity);
93
+ };
94
+ exports.digitalCredentialFrom = digitalCredentialFrom;
95
+ const digitalCredentialsFrom = (credentialEntities) => {
96
+ return credentialEntities.map((credentialEntity) => (0, exports.digitalCredentialFrom)(credentialEntity));
97
+ };
98
+ exports.digitalCredentialsFrom = digitalCredentialsFrom;
99
+ //# sourceMappingURL=MappingUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MappingUtils.js","sourceRoot":"","sources":["../../../src/utils/digitalCredential/MappingUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.data-store",
3
- "version": "0.19.1-next.2+9c7c9efc",
3
+ "version": "0.19.1-next.75+03d3febb",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,9 +13,10 @@
13
13
  "typeorm-postgres:migration:run": "pnpm run typeorm -- migration:run -c migration-postgres"
14
14
  },
15
15
  "dependencies": {
16
- "@sphereon/ssi-sdk.core": "0.19.1-next.2+9c7c9efc",
17
- "@sphereon/ssi-types": "0.19.1-next.2+9c7c9efc",
16
+ "@sphereon/ssi-sdk.core": "0.19.1-next.75+03d3febb",
17
+ "@sphereon/ssi-types": "0.19.1-next.75+03d3febb",
18
18
  "@veramo/core": "4.2.0",
19
+ "@veramo/utils": "4.2.0",
19
20
  "class-validator": "^0.14.0",
20
21
  "debug": "^4.3.4",
21
22
  "typeorm": "^0.3.12"
@@ -43,5 +44,5 @@
43
44
  "PostgreSQL",
44
45
  "Contact Store"
45
46
  ],
46
- "gitHead": "9c7c9efc9c766ab43a01760bc5cedf3abea4c769"
47
+ "gitHead": "03d3febb197a2dfe3cae0c133302d52107cdfa99"
47
48
  }