@sphereon/ssi-sdk.data-store 0.33.0 → 0.33.1-feature.vcdm2.4
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/contact/AbstractContactStore.js +1 -5
- package/dist/contact/AbstractContactStore.js.map +1 -1
- package/dist/contact/ContactStore.js +544 -545
- package/dist/contact/ContactStore.js.map +1 -1
- package/dist/digitalCredential/AbstractDigitalCredentialStore.js +1 -5
- package/dist/digitalCredential/AbstractDigitalCredentialStore.js.map +1 -1
- package/dist/digitalCredential/DigitalCredentialStore.js +131 -142
- package/dist/digitalCredential/DigitalCredentialStore.js.map +1 -1
- package/dist/entities/contact/BaseConfigEntity.js +13 -14
- package/dist/entities/contact/BaseConfigEntity.js.map +1 -1
- package/dist/entities/contact/BaseContactEntity.js +24 -22
- package/dist/entities/contact/BaseContactEntity.js.map +1 -1
- package/dist/entities/contact/ConnectionEntity.js +23 -20
- package/dist/entities/contact/ConnectionEntity.js.map +1 -1
- package/dist/entities/contact/ContactMetadataItemEntity.js +38 -44
- package/dist/entities/contact/ContactMetadataItemEntity.js.map +1 -1
- package/dist/entities/contact/CorrelationIdentifierEntity.js +34 -42
- package/dist/entities/contact/CorrelationIdentifierEntity.js.map +1 -1
- package/dist/entities/contact/DidAuthConfigEntity.js +16 -14
- package/dist/entities/contact/DidAuthConfigEntity.js.map +1 -1
- package/dist/entities/contact/ElectronicAddressEntity.js +42 -47
- package/dist/entities/contact/ElectronicAddressEntity.js.map +1 -1
- package/dist/entities/contact/IdentityEntity.js +56 -57
- package/dist/entities/contact/IdentityEntity.js.map +1 -1
- package/dist/entities/contact/IdentityMetadataItemEntity.js +38 -44
- package/dist/entities/contact/IdentityMetadataItemEntity.js.map +1 -1
- package/dist/entities/contact/NaturalPersonEntity.js +35 -43
- package/dist/entities/contact/NaturalPersonEntity.js.map +1 -1
- package/dist/entities/contact/OpenIdConfigEntity.js +24 -18
- package/dist/entities/contact/OpenIdConfigEntity.js.map +1 -1
- package/dist/entities/contact/OrganizationEntity.js +28 -38
- package/dist/entities/contact/OrganizationEntity.js.map +1 -1
- package/dist/entities/contact/PartyEntity.js +57 -59
- package/dist/entities/contact/PartyEntity.js.map +1 -1
- package/dist/entities/contact/PartyRelationshipEntity.js +37 -43
- package/dist/entities/contact/PartyRelationshipEntity.js.map +1 -1
- package/dist/entities/contact/PartyTypeEntity.js +44 -49
- package/dist/entities/contact/PartyTypeEntity.js.map +1 -1
- package/dist/entities/contact/PhysicalAddressEntity.js +61 -60
- package/dist/entities/contact/PhysicalAddressEntity.js.map +1 -1
- package/dist/entities/digitalCredential/DigitalCredentialEntity.js +63 -38
- package/dist/entities/digitalCredential/DigitalCredentialEntity.js.map +1 -1
- package/dist/entities/eventLogger/AuditEventEntity.js +60 -37
- package/dist/entities/eventLogger/AuditEventEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/BackgroundAttributesEntity.js +25 -36
- package/dist/entities/issuanceBranding/BackgroundAttributesEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/BaseLocaleBrandingEntity.js +48 -53
- package/dist/entities/issuanceBranding/BaseLocaleBrandingEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/CredentialBrandingEntity.js +35 -43
- package/dist/entities/issuanceBranding/CredentialBrandingEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/CredentialClaimsEntity.js +28 -38
- package/dist/entities/issuanceBranding/CredentialClaimsEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/CredentialLocaleBrandingEntity.js +18 -18
- package/dist/entities/issuanceBranding/CredentialLocaleBrandingEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/ImageAttributesEntity.js +34 -42
- package/dist/entities/issuanceBranding/ImageAttributesEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/ImageDimensionsEntity.js +11 -11
- package/dist/entities/issuanceBranding/ImageDimensionsEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/IssuerBrandingEntity.js +31 -40
- package/dist/entities/issuanceBranding/IssuerBrandingEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/IssuerLocaleBrandingEntity.js +27 -24
- package/dist/entities/issuanceBranding/IssuerLocaleBrandingEntity.js.map +1 -1
- package/dist/entities/issuanceBranding/TextAttributesEntity.js +20 -32
- package/dist/entities/issuanceBranding/TextAttributesEntity.js.map +1 -1
- package/dist/entities/machineState/MachineStateInfoEntity.js +31 -21
- package/dist/entities/machineState/MachineStateInfoEntity.js.map +1 -1
- package/dist/entities/oid4vcState/Oid4vcStateEntity.js +24 -18
- package/dist/entities/oid4vcState/Oid4vcStateEntity.js.map +1 -1
- package/dist/entities/presentationDefinition/PresentationDefinitionItemEntity.js +34 -27
- package/dist/entities/presentationDefinition/PresentationDefinitionItemEntity.js.map +1 -1
- package/dist/entities/statusList/StatusList2021EntryEntity.js +26 -22
- package/dist/entities/statusList/StatusList2021EntryEntity.js.map +1 -1
- package/dist/entities/statusList/StatusListEntities.js +48 -39
- package/dist/entities/statusList/StatusListEntities.js.map +1 -1
- package/dist/entities/validators/index.js +6 -10
- package/dist/entities/validators/index.js.map +1 -1
- package/dist/eventLogger/AbstractEventLoggerStore.js +1 -5
- package/dist/eventLogger/AbstractEventLoggerStore.js.map +1 -1
- package/dist/eventLogger/EventLoggerStore.js +50 -65
- package/dist/eventLogger/EventLoggerStore.js.map +1 -1
- package/dist/index.js +96 -163
- package/dist/index.js.map +1 -1
- package/dist/issuanceBranding/AbstractIssuanceBrandingStore.js +1 -5
- package/dist/issuanceBranding/AbstractIssuanceBrandingStore.js.map +1 -1
- package/dist/issuanceBranding/IssuanceBrandingStore.js +331 -333
- package/dist/issuanceBranding/IssuanceBrandingStore.js.map +1 -1
- package/dist/machineState/IAbstractMachineStateStore.js +1 -5
- package/dist/machineState/IAbstractMachineStateStore.js.map +1 -1
- package/dist/machineState/MachineStateStore.js +102 -122
- package/dist/machineState/MachineStateStore.js.map +1 -1
- package/dist/migrations/generic/1-CreateContacts.js +50 -72
- package/dist/migrations/generic/1-CreateContacts.js.map +1 -1
- package/dist/migrations/generic/10-CreatePresentationDefinitions.js +50 -72
- package/dist/migrations/generic/10-CreatePresentationDefinitions.js.map +1 -1
- package/dist/migrations/generic/11-FixCredentialClaimsReferenceUuid.js +52 -74
- package/dist/migrations/generic/11-FixCredentialClaimsReferenceUuid.js.map +1 -1
- package/dist/migrations/generic/2-CreateIssuanceBranding.js +50 -72
- package/dist/migrations/generic/2-CreateIssuanceBranding.js.map +1 -1
- package/dist/migrations/generic/3-CreateContacts.js +50 -72
- package/dist/migrations/generic/3-CreateContacts.js.map +1 -1
- package/dist/migrations/generic/4-CreateStatusList.js +56 -78
- package/dist/migrations/generic/4-CreateStatusList.js.map +1 -1
- package/dist/migrations/generic/5-CreateAuditEvents.js +50 -72
- package/dist/migrations/generic/5-CreateAuditEvents.js.map +1 -1
- package/dist/migrations/generic/6-CreateDigitalCredential.js +50 -72
- package/dist/migrations/generic/6-CreateDigitalCredential.js.map +1 -1
- package/dist/migrations/generic/7-CreateMachineStateStore.js +50 -72
- package/dist/migrations/generic/7-CreateMachineStateStore.js.map +1 -1
- package/dist/migrations/generic/8-CreateContacts.js +50 -72
- package/dist/migrations/generic/8-CreateContacts.js.map +1 -1
- package/dist/migrations/generic/9-CreateContacts.js +50 -72
- package/dist/migrations/generic/9-CreateContacts.js.map +1 -1
- package/dist/migrations/generic/index.js +30 -33
- package/dist/migrations/generic/index.js.map +1 -1
- package/dist/migrations/index.js +1 -12
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/internal-migrations-ormconfig.js +6 -8
- package/dist/migrations/internal-migrations-ormconfig.js.map +1 -1
- package/dist/migrations/postgres/1659463079428-CreateContacts.js +34 -53
- package/dist/migrations/postgres/1659463079428-CreateContacts.js.map +1 -1
- package/dist/migrations/postgres/1685628974232-CreateIssuanceBranding.js +50 -69
- package/dist/migrations/postgres/1685628974232-CreateIssuanceBranding.js.map +1 -1
- package/dist/migrations/postgres/1690925872592-CreateContacts.js +87 -106
- package/dist/migrations/postgres/1690925872592-CreateContacts.js.map +1 -1
- package/dist/migrations/postgres/1693866470001-CreateStatusList.js +16 -35
- package/dist/migrations/postgres/1693866470001-CreateStatusList.js.map +1 -1
- package/dist/migrations/postgres/1701634812183-CreateAuditEvents.js +22 -41
- package/dist/migrations/postgres/1701634812183-CreateAuditEvents.js.map +1 -1
- package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.js +19 -38
- package/dist/migrations/postgres/1708525189001-CreateDigitalCredential.js.map +1 -1
- package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.js +6 -25
- package/dist/migrations/postgres/1708797018115-CreateMachineStateStore.js.map +1 -1
- package/dist/migrations/postgres/1710438363001-CreateContacts.js +40 -59
- package/dist/migrations/postgres/1710438363001-CreateContacts.js.map +1 -1
- package/dist/migrations/postgres/1715761125001-CreateContacts.js +18 -37
- package/dist/migrations/postgres/1715761125001-CreateContacts.js.map +1 -1
- package/dist/migrations/postgres/1716475165345-CreatePresentationDefinitions.js +6 -25
- package/dist/migrations/postgres/1716475165345-CreatePresentationDefinitions.js.map +1 -1
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.js +16 -35
- package/dist/migrations/postgres/1737110469001-UpdateStatusList.js.map +1 -1
- package/dist/migrations/postgres/1741895822987-FixCredentialClaimsReferencesUuid.js +8 -27
- package/dist/migrations/postgres/1741895822987-FixCredentialClaimsReferencesUuid.js.map +1 -1
- package/dist/migrations/sqlite/1659463069549-CreateContacts.js +56 -75
- package/dist/migrations/sqlite/1659463069549-CreateContacts.js.map +1 -1
- package/dist/migrations/sqlite/1685628973231-CreateIssuanceBranding.js +70 -89
- package/dist/migrations/sqlite/1685628973231-CreateIssuanceBranding.js.map +1 -1
- package/dist/migrations/sqlite/1690925872693-CreateContacts.js +120 -139
- package/dist/migrations/sqlite/1690925872693-CreateContacts.js.map +1 -1
- package/dist/migrations/sqlite/1693866470000-CreateStatusList.js +12 -31
- package/dist/migrations/sqlite/1693866470000-CreateStatusList.js.map +1 -1
- package/dist/migrations/sqlite/1701634819487-CreateAuditEvents.js +6 -25
- package/dist/migrations/sqlite/1701634819487-CreateAuditEvents.js.map +1 -1
- package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.js +7 -26
- package/dist/migrations/sqlite/1708525189002-CreateDigitalCredential.js.map +1 -1
- package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.js +6 -25
- package/dist/migrations/sqlite/1708796002272-CreateMachineStateStore.js.map +1 -1
- package/dist/migrations/sqlite/1710438363002-CreateContacts.js +43 -62
- package/dist/migrations/sqlite/1710438363002-CreateContacts.js.map +1 -1
- package/dist/migrations/sqlite/1715761125002-CreateContacts.js +18 -37
- package/dist/migrations/sqlite/1715761125002-CreateContacts.js.map +1 -1
- package/dist/migrations/sqlite/1716475165344-CreatePresentationDefinitions.js +6 -25
- package/dist/migrations/sqlite/1716475165344-CreatePresentationDefinitions.js.map +1 -1
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.js +20 -39
- package/dist/migrations/sqlite/1737110469000-UpdateStatusList.js.map +1 -1
- package/dist/migrations/sqlite/1741895822987-FixCredentialClaimsReferencesUuid.js +25 -44
- package/dist/migrations/sqlite/1741895822987-FixCredentialClaimsReferencesUuid.js.map +1 -1
- package/dist/presentationDefinition/AbstractPDStore.js +1 -5
- package/dist/presentationDefinition/AbstractPDStore.js.map +1 -1
- package/dist/presentationDefinition/PDStore.js +114 -123
- package/dist/presentationDefinition/PDStore.js.map +1 -1
- package/dist/statusList/IStatusListStore.js +1 -2
- package/dist/statusList/StatusListStore.js +196 -225
- package/dist/statusList/StatusListStore.js.map +1 -1
- package/dist/types/contact/IAbstractContactStore.js +1 -2
- package/dist/types/contact/contact.js +10 -13
- package/dist/types/contact/contact.js.map +1 -1
- package/dist/types/digitalCredential/IAbstractDigitalCredentialStore.js +1 -2
- package/dist/types/digitalCredential/digitalCredential.js +13 -16
- package/dist/types/digitalCredential/digitalCredential.js.map +1 -1
- package/dist/types/eventLogger/IAbstractEventLoggerStore.js +1 -2
- package/dist/types/eventLogger/eventLogger.js +1 -2
- package/dist/types/index.js +14 -30
- package/dist/types/index.js.map +1 -1
- package/dist/types/issuanceBranding/IAbstractIssuanceBrandingStore.js +1 -2
- package/dist/types/issuanceBranding/issuanceBranding.js +1 -2
- package/dist/types/machineState/IAbstractMachineStateStore.js +1 -2
- package/dist/types/presentationDefinition/IAbstractPDStore.js +1 -2
- package/dist/types/presentationDefinition/presentationDefinition.js +1 -2
- package/dist/types/statusList/IAbstractStatusListStore.js +1 -2
- package/dist/types/statusList/statusList.js +1 -2
- package/dist/types/validation/validation.js +1 -2
- package/dist/utils/FormattingUtils.js +3 -7
- package/dist/utils/FormattingUtils.js.map +1 -1
- package/dist/utils/SortingUtils.js +1 -5
- package/dist/utils/SortingUtils.js.map +1 -1
- package/dist/utils/ValidatorUtils.js +2 -6
- package/dist/utils/ValidatorUtils.js.map +1 -1
- package/dist/utils/contact/MappingUtils.js +124 -150
- package/dist/utils/contact/MappingUtils.js.map +1 -1
- package/dist/utils/digitalCredential/MappingUtils.js +50 -47
- package/dist/utils/digitalCredential/MappingUtils.js.map +1 -1
- package/dist/utils/eventLogger/MappingUtils.js +60 -22
- package/dist/utils/eventLogger/MappingUtils.js.map +1 -1
- package/dist/utils/issuanceBranding/MappingUtils.js +71 -77
- package/dist/utils/issuanceBranding/MappingUtils.js.map +1 -1
- package/dist/utils/presentationDefinition/MappingUtils.js +9 -15
- package/dist/utils/presentationDefinition/MappingUtils.js.map +1 -1
- package/dist/utils/statusList/MappingUtils.js +27 -22
- package/dist/utils/statusList/MappingUtils.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -8,74 +7,82 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
import { BaseEntity, BeforeInsert, BeforeUpdate, Column, CreateDateColumn, Entity, Index, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm';
|
|
11
|
+
import { IsNotEmpty } from 'class-validator';
|
|
12
|
+
import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config';
|
|
13
|
+
let PresentationDefinitionItemEntity = class PresentationDefinitionItemEntity extends BaseEntity {
|
|
14
|
+
id;
|
|
15
|
+
definitionId;
|
|
16
|
+
version;
|
|
17
|
+
tenantId;
|
|
18
|
+
purpose;
|
|
19
|
+
name;
|
|
20
|
+
definitionPayload;
|
|
21
|
+
dcqlPayload;
|
|
22
|
+
createdAt;
|
|
23
|
+
lastUpdatedAt;
|
|
17
24
|
// By default, @UpdateDateColumn in TypeORM updates the timestamp only when the entity's top-level properties change.
|
|
18
25
|
updateUpdatedDate() {
|
|
19
26
|
this.lastUpdatedAt = new Date();
|
|
20
27
|
}
|
|
21
28
|
};
|
|
22
|
-
exports.PresentationDefinitionItemEntity = PresentationDefinitionItemEntity;
|
|
23
29
|
__decorate([
|
|
24
|
-
|
|
30
|
+
PrimaryGeneratedColumn('uuid'),
|
|
25
31
|
__metadata("design:type", String)
|
|
26
32
|
], PresentationDefinitionItemEntity.prototype, "id", void 0);
|
|
27
33
|
__decorate([
|
|
28
|
-
|
|
29
|
-
|
|
34
|
+
Column({ name: 'definition_id', length: 255, type: 'varchar', nullable: false, unique: false }),
|
|
35
|
+
IsNotEmpty({ message: 'A blank definition id field is not allowed' }),
|
|
30
36
|
__metadata("design:type", String)
|
|
31
37
|
], PresentationDefinitionItemEntity.prototype, "definitionId", void 0);
|
|
32
38
|
__decorate([
|
|
33
|
-
|
|
34
|
-
|
|
39
|
+
Column({ name: 'version', length: 255, type: 'varchar', nullable: false, unique: false }),
|
|
40
|
+
IsNotEmpty({ message: 'A blank version field is not allowed' }),
|
|
35
41
|
__metadata("design:type", String)
|
|
36
42
|
], PresentationDefinitionItemEntity.prototype, "version", void 0);
|
|
37
43
|
__decorate([
|
|
38
|
-
|
|
44
|
+
Column({ name: 'tenant_id', length: 255, type: 'varchar', nullable: true, unique: false }),
|
|
39
45
|
__metadata("design:type", String)
|
|
40
46
|
], PresentationDefinitionItemEntity.prototype, "tenantId", void 0);
|
|
41
47
|
__decorate([
|
|
42
|
-
|
|
48
|
+
Column({ name: 'purpose', length: 255, type: 'varchar', nullable: true, unique: false }),
|
|
43
49
|
__metadata("design:type", String)
|
|
44
50
|
], PresentationDefinitionItemEntity.prototype, "purpose", void 0);
|
|
45
51
|
__decorate([
|
|
46
|
-
|
|
52
|
+
Column({ name: 'name', length: 255, type: 'varchar', nullable: true, unique: false }),
|
|
47
53
|
__metadata("design:type", String)
|
|
48
54
|
], PresentationDefinitionItemEntity.prototype, "name", void 0);
|
|
49
55
|
__decorate([
|
|
50
|
-
|
|
56
|
+
Column({ name: 'definition_payload', type: 'text', nullable: false, unique: false }) // TODO should this become nullable now we have dcqlPayload?
|
|
51
57
|
,
|
|
52
|
-
|
|
58
|
+
IsNotEmpty({ message: 'A blank PD definition payload field is not allowed' }),
|
|
53
59
|
__metadata("design:type", String)
|
|
54
60
|
], PresentationDefinitionItemEntity.prototype, "definitionPayload", void 0);
|
|
55
61
|
__decorate([
|
|
56
|
-
|
|
57
|
-
|
|
62
|
+
Column({ name: 'dcql_payload', type: 'text', nullable: true, unique: false }),
|
|
63
|
+
IsNotEmpty({ message: 'A blank dcql definition payload field is not allowed' }),
|
|
58
64
|
__metadata("design:type", String)
|
|
59
65
|
], PresentationDefinitionItemEntity.prototype, "dcqlPayload", void 0);
|
|
60
66
|
__decorate([
|
|
61
|
-
|
|
67
|
+
CreateDateColumn({ name: 'created_at', nullable: false, type: typeOrmDateTime() }),
|
|
62
68
|
__metadata("design:type", Date)
|
|
63
69
|
], PresentationDefinitionItemEntity.prototype, "createdAt", void 0);
|
|
64
70
|
__decorate([
|
|
65
|
-
|
|
71
|
+
UpdateDateColumn({ name: 'last_updated_at', nullable: false, type: typeOrmDateTime() }),
|
|
66
72
|
__metadata("design:type", Date
|
|
67
73
|
// By default, @UpdateDateColumn in TypeORM updates the timestamp only when the entity's top-level properties change.
|
|
68
74
|
)
|
|
69
75
|
], PresentationDefinitionItemEntity.prototype, "lastUpdatedAt", void 0);
|
|
70
76
|
__decorate([
|
|
71
|
-
|
|
72
|
-
|
|
77
|
+
BeforeInsert(),
|
|
78
|
+
BeforeUpdate(),
|
|
73
79
|
__metadata("design:type", Function),
|
|
74
80
|
__metadata("design:paramtypes", []),
|
|
75
81
|
__metadata("design:returntype", void 0)
|
|
76
82
|
], PresentationDefinitionItemEntity.prototype, "updateUpdatedDate", null);
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
83
|
+
PresentationDefinitionItemEntity = __decorate([
|
|
84
|
+
Entity('PresentationDefinitionItem'),
|
|
85
|
+
Index(['version'], { unique: false })
|
|
80
86
|
], PresentationDefinitionItemEntity);
|
|
87
|
+
export { PresentationDefinitionItemEntity };
|
|
81
88
|
//# sourceMappingURL=PresentationDefinitionItemEntity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresentationDefinitionItemEntity.js","sourceRoot":"","sources":["../../../src/entities/presentationDefinition/PresentationDefinitionItemEntity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PresentationDefinitionItemEntity.js","sourceRoot":"","sources":["../../../src/entities/presentationDefinition/PresentationDefinitionItemEntity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -8,49 +7,54 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
import { Validate } from 'class-validator';
|
|
11
|
+
import { BaseEntity, Column, Entity, JoinColumn, ManyToOne, PrimaryColumn } from 'typeorm';
|
|
12
|
+
import { IsNonEmptyStringConstraint } from '../validators';
|
|
13
|
+
import { StatusListEntity } from './StatusListEntities';
|
|
14
|
+
let StatusListEntryEntity = class StatusListEntryEntity extends BaseEntity {
|
|
15
|
+
statusListId;
|
|
16
|
+
statusListIndex;
|
|
17
|
+
statusList;
|
|
18
|
+
credentialId;
|
|
19
|
+
credentialHash;
|
|
20
|
+
entryCorrelationId;
|
|
21
|
+
value;
|
|
18
22
|
};
|
|
19
|
-
exports.StatusListEntryEntity = StatusListEntryEntity;
|
|
20
23
|
__decorate([
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
PrimaryColumn({ name: 'statusListId', type: 'varchar', nullable: false, unique: false }),
|
|
25
|
+
Validate(IsNonEmptyStringConstraint, { message: 'Status list id is required' }),
|
|
23
26
|
__metadata("design:type", String)
|
|
24
27
|
], StatusListEntryEntity.prototype, "statusListId", void 0);
|
|
25
28
|
__decorate([
|
|
26
|
-
|
|
27
|
-
|
|
29
|
+
PrimaryColumn({ name: 'statusListIndex', type: 'integer', nullable: false, unique: false }),
|
|
30
|
+
Validate(IsNonEmptyStringConstraint, { message: 'Status list index is required' }),
|
|
28
31
|
__metadata("design:type", Number)
|
|
29
32
|
], StatusListEntryEntity.prototype, "statusListIndex", void 0);
|
|
30
33
|
__decorate([
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
__metadata("design:type",
|
|
34
|
+
ManyToOne(() => StatusListEntity, (statusList) => statusList.statusListEntries),
|
|
35
|
+
JoinColumn({ name: 'statusListId' }),
|
|
36
|
+
__metadata("design:type", StatusListEntity)
|
|
34
37
|
], StatusListEntryEntity.prototype, "statusList", void 0);
|
|
35
38
|
__decorate([
|
|
36
|
-
|
|
39
|
+
Column({ name: 'credentialId', type: 'text', nullable: true }),
|
|
37
40
|
__metadata("design:type", String)
|
|
38
41
|
], StatusListEntryEntity.prototype, "credentialId", void 0);
|
|
39
42
|
__decorate([
|
|
40
|
-
|
|
43
|
+
Column({ name: 'credentialHash', length: 128, type: 'varchar', nullable: true, unique: false }),
|
|
41
44
|
__metadata("design:type", String)
|
|
42
45
|
], StatusListEntryEntity.prototype, "credentialHash", void 0);
|
|
43
46
|
__decorate([
|
|
44
|
-
|
|
47
|
+
Column({ name: 'correlationId', length: 255, type: 'varchar', nullable: true, unique: false }),
|
|
45
48
|
__metadata("design:type", String)
|
|
46
49
|
], StatusListEntryEntity.prototype, "entryCorrelationId", void 0);
|
|
47
50
|
__decorate([
|
|
48
|
-
|
|
51
|
+
Column({ name: 'value', length: 50, type: 'varchar', nullable: true, unique: false }),
|
|
49
52
|
__metadata("design:type", String)
|
|
50
53
|
], StatusListEntryEntity.prototype, "value", void 0);
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
StatusListEntryEntity = __decorate([
|
|
55
|
+
Entity('StatusListEntry')
|
|
53
56
|
// @Unique('uq_credential_statuslist', ['statusList', 'credentialId']) // disabled because one prop can be null
|
|
54
57
|
// @Unique('uq_credentialHash_statuslistId', ['statusList', 'credentialHash']) // disabled because one prop can be null
|
|
55
58
|
], StatusListEntryEntity);
|
|
59
|
+
export { StatusListEntryEntity };
|
|
56
60
|
//# sourceMappingURL=StatusList2021EntryEntity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusList2021EntryEntity.js","sourceRoot":"","sources":["../../../src/entities/statusList/StatusList2021EntryEntity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StatusList2021EntryEntity.js","sourceRoot":"","sources":["../../../src/entities/statusList/StatusList2021EntryEntity.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAKhD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,UAAU;IAGnD,YAAY,CAAS;IAIrB,eAAe,CAAS;IAIxB,UAAU,CAAmB;IAG7B,YAAY,CAAS;IAGrB,cAAc,CAAS;IAGvB,kBAAkB,CAAS;IAG3B,KAAK,CAAS;CACf,CAAA;AArBC;IAFC,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACxF,QAAQ,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;;2DAC3D;AAIrB;IAFC,aAAa,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3F,QAAQ,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;;8DAC3D;AAIxB;IAFC,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC/E,UAAU,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;8BACxB,gBAAgB;yDAAA;AAG7B;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DAC1C;AAGrB;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;6DACzE;AAGvB;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;iEACpE;AAG3B;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;;oDACxE;AAvBH,qBAAqB;IAHjC,MAAM,CAAC,iBAAiB,CAAC;IAC1B,+GAA+G;IAC/G,uHAAuH;GAC1G,qBAAqB,CAwBjC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -8,37 +7,42 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
import { StatusListCredentialIdMode, StatusListDriverType, StatusListType, } from '@sphereon/ssi-types';
|
|
11
|
+
import { BaseEntity, ChildEntity, Column, Entity, OneToMany, PrimaryColumn, TableInheritance, Unique } from 'typeorm';
|
|
12
|
+
import { StatusListEntryEntity } from './StatusList2021EntryEntity';
|
|
13
|
+
import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config';
|
|
14
|
+
let StatusListEntity = class StatusListEntity extends BaseEntity {
|
|
15
|
+
id;
|
|
16
|
+
correlationId;
|
|
17
|
+
length;
|
|
18
|
+
issuer;
|
|
19
|
+
driverType;
|
|
20
|
+
credentialIdMode;
|
|
21
|
+
proofFormat;
|
|
22
|
+
statusListCredential;
|
|
23
|
+
statusListEntries;
|
|
18
24
|
};
|
|
19
|
-
exports.StatusListEntity = StatusListEntity;
|
|
20
25
|
__decorate([
|
|
21
|
-
|
|
26
|
+
PrimaryColumn({ name: 'id', type: 'varchar' }),
|
|
22
27
|
__metadata("design:type", String)
|
|
23
28
|
], StatusListEntity.prototype, "id", void 0);
|
|
24
29
|
__decorate([
|
|
25
|
-
|
|
30
|
+
Column({ name: 'correlationId', type: 'varchar', nullable: false }),
|
|
26
31
|
__metadata("design:type", String)
|
|
27
32
|
], StatusListEntity.prototype, "correlationId", void 0);
|
|
28
33
|
__decorate([
|
|
29
|
-
|
|
34
|
+
Column({ name: 'length', type: 'integer', nullable: false, unique: false }),
|
|
30
35
|
__metadata("design:type", Number)
|
|
31
36
|
], StatusListEntity.prototype, "length", void 0);
|
|
32
37
|
__decorate([
|
|
33
|
-
|
|
38
|
+
Column({
|
|
34
39
|
name: 'issuer',
|
|
35
40
|
type: 'text',
|
|
36
41
|
nullable: false,
|
|
37
42
|
unique: false,
|
|
38
43
|
transformer: {
|
|
39
44
|
from(value) {
|
|
40
|
-
|
|
41
|
-
if ((_a = value === null || value === void 0 ? void 0 : value.trim()) === null || _a === void 0 ? void 0 : _a.startsWith('{')) {
|
|
45
|
+
if (value?.trim()?.startsWith('{')) {
|
|
42
46
|
return JSON.parse(value);
|
|
43
47
|
}
|
|
44
48
|
return value;
|
|
@@ -54,36 +58,36 @@ __decorate([
|
|
|
54
58
|
__metadata("design:type", Object)
|
|
55
59
|
], StatusListEntity.prototype, "issuer", void 0);
|
|
56
60
|
__decorate([
|
|
57
|
-
|
|
61
|
+
Column('simple-enum', {
|
|
58
62
|
name: 'driverType',
|
|
59
|
-
enum:
|
|
63
|
+
enum: StatusListDriverType,
|
|
60
64
|
nullable: false,
|
|
61
|
-
default:
|
|
65
|
+
default: StatusListDriverType.AGENT_TYPEORM,
|
|
62
66
|
}),
|
|
63
67
|
__metadata("design:type", String)
|
|
64
68
|
], StatusListEntity.prototype, "driverType", void 0);
|
|
65
69
|
__decorate([
|
|
66
|
-
|
|
70
|
+
Column('simple-enum', {
|
|
67
71
|
name: 'credentialIdMode',
|
|
68
|
-
enum:
|
|
72
|
+
enum: StatusListCredentialIdMode,
|
|
69
73
|
nullable: false,
|
|
70
|
-
default:
|
|
74
|
+
default: StatusListCredentialIdMode.ISSUANCE,
|
|
71
75
|
}),
|
|
72
76
|
__metadata("design:type", String)
|
|
73
77
|
], StatusListEntity.prototype, "credentialIdMode", void 0);
|
|
74
78
|
__decorate([
|
|
75
|
-
|
|
79
|
+
Column({ type: 'varchar', name: 'proofFormat', enum: ['lds', 'jwt'], nullable: false, default: 'lds' }),
|
|
76
80
|
__metadata("design:type", String)
|
|
77
81
|
], StatusListEntity.prototype, "proofFormat", void 0);
|
|
78
82
|
__decorate([
|
|
79
|
-
|
|
83
|
+
Column({
|
|
80
84
|
name: 'statusListCredential',
|
|
81
85
|
type: 'text',
|
|
82
86
|
nullable: true,
|
|
83
87
|
unique: false,
|
|
84
88
|
transformer: {
|
|
85
89
|
from(value) {
|
|
86
|
-
if (value
|
|
90
|
+
if (value?.startsWith('ey')) {
|
|
87
91
|
return value;
|
|
88
92
|
}
|
|
89
93
|
return JSON.parse(value);
|
|
@@ -99,19 +103,21 @@ __decorate([
|
|
|
99
103
|
__metadata("design:type", Object)
|
|
100
104
|
], StatusListEntity.prototype, "statusListCredential", void 0);
|
|
101
105
|
__decorate([
|
|
102
|
-
|
|
106
|
+
OneToMany((type) => StatusListEntryEntity, (entry) => entry.statusList),
|
|
103
107
|
__metadata("design:type", Array)
|
|
104
108
|
], StatusListEntity.prototype, "statusListEntries", void 0);
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
+
StatusListEntity = __decorate([
|
|
110
|
+
Entity('StatusList'),
|
|
111
|
+
Unique('UQ_correlationId', ['correlationId']),
|
|
112
|
+
TableInheritance({ column: { type: 'simple-enum', name: 'type', enum: StatusListType } })
|
|
109
113
|
], StatusListEntity);
|
|
114
|
+
export { StatusListEntity };
|
|
110
115
|
let StatusList2021Entity = class StatusList2021Entity extends StatusListEntity {
|
|
116
|
+
indexingDirection;
|
|
117
|
+
statusPurpose;
|
|
111
118
|
};
|
|
112
|
-
exports.StatusList2021Entity = StatusList2021Entity;
|
|
113
119
|
__decorate([
|
|
114
|
-
|
|
120
|
+
Column({
|
|
115
121
|
type: 'varchar',
|
|
116
122
|
name: 'indexingDirection',
|
|
117
123
|
enum: ['rightToLeft'],
|
|
@@ -121,24 +127,27 @@ __decorate([
|
|
|
121
127
|
__metadata("design:type", String)
|
|
122
128
|
], StatusList2021Entity.prototype, "indexingDirection", void 0);
|
|
123
129
|
__decorate([
|
|
124
|
-
|
|
130
|
+
Column({ type: 'varchar', name: 'statusPurpose', nullable: false, default: 'revocation' }),
|
|
125
131
|
__metadata("design:type", String)
|
|
126
132
|
], StatusList2021Entity.prototype, "statusPurpose", void 0);
|
|
127
|
-
|
|
128
|
-
|
|
133
|
+
StatusList2021Entity = __decorate([
|
|
134
|
+
ChildEntity(StatusListType.StatusList2021)
|
|
129
135
|
], StatusList2021Entity);
|
|
136
|
+
export { StatusList2021Entity };
|
|
130
137
|
let OAuthStatusListEntity = class OAuthStatusListEntity extends StatusListEntity {
|
|
138
|
+
bitsPerStatus;
|
|
139
|
+
expiresAt;
|
|
131
140
|
};
|
|
132
|
-
exports.OAuthStatusListEntity = OAuthStatusListEntity;
|
|
133
141
|
__decorate([
|
|
134
|
-
|
|
142
|
+
Column({ type: 'integer', name: 'bitsPerStatus', nullable: false }),
|
|
135
143
|
__metadata("design:type", Number)
|
|
136
144
|
], OAuthStatusListEntity.prototype, "bitsPerStatus", void 0);
|
|
137
145
|
__decorate([
|
|
138
|
-
|
|
146
|
+
Column({ name: 'expiresAt', nullable: true, type: typeOrmDateTime() }),
|
|
139
147
|
__metadata("design:type", Date)
|
|
140
148
|
], OAuthStatusListEntity.prototype, "expiresAt", void 0);
|
|
141
|
-
|
|
142
|
-
|
|
149
|
+
OAuthStatusListEntity = __decorate([
|
|
150
|
+
ChildEntity(StatusListType.OAuthStatusList)
|
|
143
151
|
], OAuthStatusListEntity);
|
|
152
|
+
export { OAuthStatusListEntity };
|
|
144
153
|
//# sourceMappingURL=StatusListEntities.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusListEntities.js","sourceRoot":"","sources":["../../../src/entities/statusList/StatusListEntities.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StatusListEntities.js","sourceRoot":"","sources":["../../../src/entities/statusList/StatusListEntities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,23 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
exports.isEmptyString = exports.IsNonEmptyStringConstraint = void 0;
|
|
10
|
-
const class_validator_1 = require("class-validator");
|
|
7
|
+
import { ValidatorConstraint } from 'class-validator';
|
|
11
8
|
let IsNonEmptyStringConstraint = class IsNonEmptyStringConstraint {
|
|
12
9
|
validate(value, args) {
|
|
13
|
-
return !
|
|
10
|
+
return !isEmptyString(value);
|
|
14
11
|
}
|
|
15
12
|
defaultMessage(args) {
|
|
16
13
|
return `${args.property} must not be an empty string.`;
|
|
17
14
|
}
|
|
18
15
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
(0, class_validator_1.ValidatorConstraint)({ name: 'isNonEmptyString', async: false })
|
|
16
|
+
IsNonEmptyStringConstraint = __decorate([
|
|
17
|
+
ValidatorConstraint({ name: 'isNonEmptyString', async: false })
|
|
22
18
|
], IsNonEmptyStringConstraint);
|
|
23
|
-
|
|
19
|
+
export { IsNonEmptyStringConstraint };
|
|
20
|
+
export const isEmptyString = (value) => {
|
|
24
21
|
return typeof value === 'string' && value.trim().length === 0;
|
|
25
22
|
};
|
|
26
|
-
exports.isEmptyString = isEmptyString;
|
|
27
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entities/validators/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entities/validators/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAuB,mBAAmB,EAAgC,MAAM,iBAAiB,CAAA;AAGjG,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,QAAQ,CAAC,KAAa,EAAE,IAAyB;QAC/C,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;IAED,cAAc,CAAC,IAAyB;QACtC,OAAO,GAAG,IAAI,CAAC,QAAQ,+BAA+B,CAAA;IACxD,CAAC;CACF,CAAA;AARY,0BAA0B;IADtC,mBAAmB,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;GACnD,0BAA0B,CAQtC;;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAU,EAAW,EAAE;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAA;AAC/D,CAAC,CAAA"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractEventLoggerStore = void 0;
|
|
4
|
-
class AbstractEventLoggerStore {
|
|
1
|
+
export class AbstractEventLoggerStore {
|
|
5
2
|
}
|
|
6
|
-
exports.AbstractEventLoggerStore = AbstractEventLoggerStore;
|
|
7
3
|
//# sourceMappingURL=AbstractEventLoggerStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractEventLoggerStore.js","sourceRoot":"","sources":["../../src/eventLogger/AbstractEventLoggerStore.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AbstractEventLoggerStore.js","sourceRoot":"","sources":["../../src/eventLogger/AbstractEventLoggerStore.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,wBAAwB;CAK7C"}
|
|
@@ -1,71 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.EventLoggerStore = void 0;
|
|
16
|
-
const ssi_types_1 = require("@sphereon/ssi-types");
|
|
17
|
-
const debug_1 = __importDefault(require("debug"));
|
|
18
|
-
const AbstractEventLoggerStore_1 = require("./AbstractEventLoggerStore");
|
|
19
|
-
const AuditEventEntity_1 = require("../entities/eventLogger/AuditEventEntity");
|
|
20
|
-
const MappingUtils_1 = require("../utils/eventLogger/MappingUtils");
|
|
21
|
-
const debug = (0, debug_1.default)('sphereon:ssi-sdk:event-store');
|
|
22
|
-
class EventLoggerStore extends AbstractEventLoggerStore_1.AbstractEventLoggerStore {
|
|
1
|
+
import { LoggingEventType } from '@sphereon/ssi-types';
|
|
2
|
+
import Debug from 'debug';
|
|
3
|
+
import { AbstractEventLoggerStore } from './AbstractEventLoggerStore';
|
|
4
|
+
import { AuditEventEntity } from '../entities/eventLogger/AuditEventEntity';
|
|
5
|
+
import { activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom } from '../utils/eventLogger/MappingUtils';
|
|
6
|
+
const debug = Debug('sphereon:ssi-sdk:event-store');
|
|
7
|
+
export class EventLoggerStore extends AbstractEventLoggerStore {
|
|
8
|
+
dbConnection;
|
|
23
9
|
constructor(dbConnection) {
|
|
24
10
|
super();
|
|
25
|
-
this.getAuditEvents = (args) => __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
const { filter = [] } = args !== null && args !== void 0 ? args : {};
|
|
27
|
-
const auditEventsFilter = filter.map((item) => (Object.assign(Object.assign({}, item), { type: ssi_types_1.LoggingEventType.AUDIT })));
|
|
28
|
-
if (auditEventsFilter.length === 0) {
|
|
29
|
-
auditEventsFilter.push({ type: ssi_types_1.LoggingEventType.AUDIT });
|
|
30
|
-
}
|
|
31
|
-
const connection = yield this.dbConnection;
|
|
32
|
-
debug('Getting audit events', args);
|
|
33
|
-
const result = yield connection.getRepository(AuditEventEntity_1.AuditEventEntity).find({
|
|
34
|
-
where: auditEventsFilter,
|
|
35
|
-
});
|
|
36
|
-
return result.map((event) => (0, MappingUtils_1.auditEventFrom)(event));
|
|
37
|
-
});
|
|
38
|
-
this.storeAuditEvent = (args) => __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const { event } = args;
|
|
40
|
-
const auditEventEntity = (0, MappingUtils_1.auditEventEntityFrom)(event);
|
|
41
|
-
const connection = yield this.dbConnection;
|
|
42
|
-
debug('Storing audit event', auditEventEntity);
|
|
43
|
-
const createdResult = yield connection.getRepository(AuditEventEntity_1.AuditEventEntity).save(auditEventEntity);
|
|
44
|
-
return (0, MappingUtils_1.auditEventFrom)(createdResult);
|
|
45
|
-
});
|
|
46
|
-
this.getActivityEvents = (args) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
const { filter = [] } = args !== null && args !== void 0 ? args : {};
|
|
48
|
-
const activityEventsFilter = filter.map((item) => (Object.assign(Object.assign({}, item), { type: ssi_types_1.LoggingEventType.ACTIVITY })));
|
|
49
|
-
if (activityEventsFilter.length === 0) {
|
|
50
|
-
activityEventsFilter.push({ type: ssi_types_1.LoggingEventType.ACTIVITY });
|
|
51
|
-
}
|
|
52
|
-
const connection = yield this.dbConnection;
|
|
53
|
-
debug('Getting activity events', args);
|
|
54
|
-
const result = yield connection.getRepository(AuditEventEntity_1.AuditEventEntity).find({
|
|
55
|
-
where: activityEventsFilter,
|
|
56
|
-
});
|
|
57
|
-
return result.map((event) => (0, MappingUtils_1.activityEventFrom)(event));
|
|
58
|
-
});
|
|
59
|
-
this.storeActivityEvent = (args) => __awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
const { event } = args;
|
|
61
|
-
const activityEventEntity = (0, MappingUtils_1.activityEventEntityFrom)(event);
|
|
62
|
-
const connection = yield this.dbConnection;
|
|
63
|
-
debug('Storing activity event', activityEventEntity);
|
|
64
|
-
const createdResult = yield connection.getRepository(AuditEventEntity_1.AuditEventEntity).save(activityEventEntity);
|
|
65
|
-
return (0, MappingUtils_1.activityEventFrom)(createdResult);
|
|
66
|
-
});
|
|
67
11
|
this.dbConnection = dbConnection;
|
|
68
12
|
}
|
|
13
|
+
getAuditEvents = async (args) => {
|
|
14
|
+
const { filter = [] } = args ?? {};
|
|
15
|
+
const auditEventsFilter = filter.map((item) => ({ ...item, type: LoggingEventType.AUDIT }));
|
|
16
|
+
if (auditEventsFilter.length === 0) {
|
|
17
|
+
auditEventsFilter.push({ type: LoggingEventType.AUDIT });
|
|
18
|
+
}
|
|
19
|
+
const connection = await this.dbConnection;
|
|
20
|
+
debug('Getting audit events', args);
|
|
21
|
+
const result = await connection.getRepository(AuditEventEntity).find({
|
|
22
|
+
where: auditEventsFilter,
|
|
23
|
+
});
|
|
24
|
+
return result.map((event) => auditEventFrom(event));
|
|
25
|
+
};
|
|
26
|
+
storeAuditEvent = async (args) => {
|
|
27
|
+
const { event } = args;
|
|
28
|
+
const auditEventEntity = auditEventEntityFrom(event);
|
|
29
|
+
const connection = await this.dbConnection;
|
|
30
|
+
debug('Storing audit event', auditEventEntity);
|
|
31
|
+
const createdResult = await connection.getRepository(AuditEventEntity).save(auditEventEntity);
|
|
32
|
+
return auditEventFrom(createdResult);
|
|
33
|
+
};
|
|
34
|
+
getActivityEvents = async (args) => {
|
|
35
|
+
const { filter = [] } = args ?? {};
|
|
36
|
+
const activityEventsFilter = filter.map((item) => ({ ...item, type: LoggingEventType.ACTIVITY }));
|
|
37
|
+
if (activityEventsFilter.length === 0) {
|
|
38
|
+
activityEventsFilter.push({ type: LoggingEventType.ACTIVITY });
|
|
39
|
+
}
|
|
40
|
+
const connection = await this.dbConnection;
|
|
41
|
+
debug('Getting activity events', args);
|
|
42
|
+
const result = await connection.getRepository(AuditEventEntity).find({
|
|
43
|
+
where: activityEventsFilter,
|
|
44
|
+
});
|
|
45
|
+
return result.map((event) => activityEventFrom(event));
|
|
46
|
+
};
|
|
47
|
+
storeActivityEvent = async (args) => {
|
|
48
|
+
const { event } = args;
|
|
49
|
+
const activityEventEntity = activityEventEntityFrom(event);
|
|
50
|
+
const connection = await this.dbConnection;
|
|
51
|
+
debug('Storing activity event', activityEventEntity);
|
|
52
|
+
const createdResult = await connection.getRepository(AuditEventEntity).save(activityEventEntity);
|
|
53
|
+
return activityEventFrom(createdResult);
|
|
54
|
+
};
|
|
69
55
|
}
|
|
70
|
-
exports.EventLoggerStore = EventLoggerStore;
|
|
71
56
|
//# sourceMappingURL=EventLoggerStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventLoggerStore.js","sourceRoot":"","sources":["../../src/eventLogger/EventLoggerStore.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EventLoggerStore.js","sourceRoot":"","sources":["../../src/eventLogger/EventLoggerStore.ts"],"names":[],"mappings":"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"}
|