@sphereon/ssi-sdk.data-store 0.34.1-feature.FIDES.1.274 → 0.34.1-feature.IDK.11.48

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 (113) hide show
  1. package/dist/index.cjs +3844 -3819
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +1270 -339
  4. package/dist/index.d.ts +1270 -339
  5. package/dist/index.js +3791 -3766
  6. package/dist/index.js.map +1 -1
  7. package/package.json +8 -9
  8. package/src/__tests__/contact.entities.test.ts +10 -4
  9. package/src/__tests__/contact.store.test.ts +6 -11
  10. package/src/__tests__/digitalCredential.entities.test.ts +6 -13
  11. package/src/__tests__/digitalCredential.store.test.ts +6 -6
  12. package/src/__tests__/eventLogger.entities.test.ts +3 -3
  13. package/src/__tests__/eventLogger.store.test.ts +4 -9
  14. package/src/__tests__/issuanceBranding.entities.test.ts +2 -2
  15. package/src/__tests__/issuanceBranding.store.test.ts +3 -3
  16. package/src/__tests__/machineState.entities.test.ts +1 -1
  17. package/src/__tests__/machineState.store.test.ts +1 -1
  18. package/src/__tests__/pd-manager.entities.test.ts +98 -27
  19. package/src/__tests__/pd-manager.store.test.ts +101 -151
  20. package/src/__tests__/statusList.entities.test.ts +4 -4
  21. package/src/__tests__/statusList.store.test.ts +3 -3
  22. package/src/contact/AbstractContactStore.ts +71 -0
  23. package/src/contact/ContactStore.ts +35 -35
  24. package/src/digitalCredential/AbstractDigitalCredentialStore.ts +21 -0
  25. package/src/digitalCredential/DigitalCredentialStore.ts +7 -6
  26. package/src/entities/contact/BaseConfigEntity.ts +2 -2
  27. package/src/entities/contact/BaseContactEntity.ts +5 -4
  28. package/src/entities/contact/ConnectionEntity.ts +4 -4
  29. package/src/entities/contact/ContactMetadataItemEntity.ts +4 -3
  30. package/src/entities/contact/CorrelationIdentifierEntity.ts +4 -3
  31. package/src/entities/contact/DidAuthConfigEntity.ts +2 -1
  32. package/src/entities/contact/ElectronicAddressEntity.ts +5 -15
  33. package/src/entities/contact/IdentityEntity.ts +11 -12
  34. package/src/entities/contact/IdentityMetadataItemEntity.ts +3 -3
  35. package/src/entities/contact/NaturalPersonEntity.ts +5 -5
  36. package/src/entities/contact/OrganizationEntity.ts +1 -1
  37. package/src/entities/contact/PartyEntity.ts +7 -7
  38. package/src/entities/contact/PartyRelationshipEntity.ts +8 -8
  39. package/src/entities/contact/PartyTypeEntity.ts +4 -4
  40. package/src/entities/contact/PhysicalAddressEntity.ts +3 -3
  41. package/src/entities/digitalCredential/DigitalCredentialEntity.ts +3 -4
  42. package/src/entities/eventLogger/AuditEventEntity.ts +2 -2
  43. package/src/entities/issuanceBranding/BackgroundAttributesEntity.ts +2 -2
  44. package/src/entities/issuanceBranding/BaseLocaleBrandingEntity.ts +7 -6
  45. package/src/entities/issuanceBranding/CredentialBrandingEntity.ts +2 -2
  46. package/src/entities/issuanceBranding/CredentialClaimsEntity.ts +2 -2
  47. package/src/entities/issuanceBranding/CredentialLocaleBrandingEntity.ts +2 -2
  48. package/src/entities/issuanceBranding/ImageAttributesEntity.ts +2 -2
  49. package/src/entities/issuanceBranding/IssuerBrandingEntity.ts +2 -2
  50. package/src/entities/issuanceBranding/IssuerLocaleBrandingEntity.ts +3 -3
  51. package/src/entities/issuanceBranding/TextAttributesEntity.ts +1 -1
  52. package/src/entities/machineState/MachineStateInfoEntity.ts +1 -1
  53. package/src/entities/presentationDefinition/{DcqlQueryItemEntity.ts → PresentationDefinitionItemEntity.ts} +14 -10
  54. package/src/entities/statusList/BitstringStatusListEntryEntity.ts +1 -1
  55. package/src/entities/statusList/StatusListEntities.ts +4 -3
  56. package/src/eventLogger/AbstractEventLoggerStore.ts +9 -0
  57. package/src/eventLogger/EventLoggerStore.ts +2 -2
  58. package/src/index.ts +26 -21
  59. package/src/issuanceBranding/AbstractIssuanceBrandingStore.ts +41 -0
  60. package/src/issuanceBranding/IssuanceBrandingStore.ts +25 -25
  61. package/src/machineState/IAbstractMachineStateStore.ts +65 -0
  62. package/src/machineState/MachineStateStore.ts +7 -7
  63. package/src/migrations/generic/1-CreateContacts.ts +1 -1
  64. package/src/migrations/generic/10-CreatePresentationDefinitions.ts +1 -1
  65. package/src/migrations/generic/11-FixCredentialClaimsReferenceUuid.ts +2 -2
  66. package/src/migrations/generic/12-CreateBitstringStatusList.ts +2 -32
  67. package/src/migrations/generic/2-CreateIssuanceBranding.ts +1 -1
  68. package/src/migrations/generic/3-CreateContacts.ts +2 -2
  69. package/src/migrations/generic/4-CreateStatusList.ts +1 -1
  70. package/src/migrations/generic/5-CreateAuditEvents.ts +2 -2
  71. package/src/migrations/generic/6-CreateDigitalCredential.ts +1 -1
  72. package/src/migrations/generic/7-CreateMachineStateStore.ts +1 -1
  73. package/src/migrations/generic/8-CreateContacts.ts +1 -1
  74. package/src/migrations/generic/9-CreateContacts.ts +1 -1
  75. package/src/migrations/generic/index.ts +5 -10
  76. package/src/migrations/postgres/1659463079428-CreateContacts.ts +1 -1
  77. package/src/migrations/postgres/1685628974232-CreateIssuanceBranding.ts +1 -1
  78. package/src/migrations/postgres/1690925872592-CreateContacts.ts +1 -1
  79. package/src/migrations/postgres/1716475165345-CreatePresentationDefinitions.ts +1 -1
  80. package/src/migrations/postgres/1737110469001-UpdateStatusList.ts +1 -1
  81. package/src/migrations/postgres/1741895823000-CreateBitstringStatusList.ts +2 -15
  82. package/src/migrations/sqlite/1716475165344-CreatePresentationDefinitions.ts +1 -1
  83. package/src/presentationDefinition/AbstractPDStore.ts +20 -0
  84. package/src/presentationDefinition/PDStore.ts +45 -45
  85. package/src/statusList/IStatusListStore.ts +1 -1
  86. package/src/statusList/StatusListStore.ts +3 -3
  87. package/src/types/contact/IAbstractContactStore.ts +161 -0
  88. package/src/types/contact/contact.ts +295 -0
  89. package/src/types/contact/index.ts +2 -0
  90. package/src/types/digitalCredential/IAbstractDigitalCredentialStore.ts +43 -0
  91. package/src/types/digitalCredential/enums.ts +70 -0
  92. package/src/types/digitalCredential/index.ts +3 -0
  93. package/src/types/digitalCredential/types.ts +39 -0
  94. package/src/types/eventLogger/IAbstractEventLoggerStore.ts +22 -0
  95. package/src/types/eventLogger/eventLogger.ts +4 -0
  96. package/src/types/index.ts +12 -0
  97. package/src/types/issuanceBranding/IAbstractIssuanceBrandingStore.ts +85 -0
  98. package/src/types/issuanceBranding/issuanceBranding.ts +138 -0
  99. package/src/types/machineState/IAbstractMachineStateStore.ts +68 -0
  100. package/src/types/presentationDefinition/IAbstractPDStore.ts +25 -0
  101. package/src/types/presentationDefinition/presentationDefinition.ts +19 -0
  102. package/src/types/statusList/IAbstractStatusListStore.ts +9 -9
  103. package/src/types/validation/validation.ts +3 -0
  104. package/src/utils/ValidatorUtils.ts +1 -1
  105. package/src/utils/contact/MappingUtils.ts +10 -10
  106. package/src/utils/digitalCredential/MappingUtils.ts +21 -3
  107. package/src/utils/eventLogger/MappingUtils.ts +2 -2
  108. package/src/utils/issuanceBranding/MappingUtils.ts +13 -13
  109. package/src/utils/presentationDefinition/MappingUtils.ts +22 -31
  110. package/src/utils/statusList/MappingUtils.ts +1 -1
  111. package/src/migrations/generic/13-CreateDcqlQueryItem.ts +0 -67
  112. package/src/migrations/postgres/1726588800000-CreateDcqlQueryItem.ts +0 -25
  113. package/src/migrations/sqlite/1726617600000-CreateDcqlQueryItem.ts +0 -24
@@ -1,20 +1,10 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import type { ElectronicAddressType, ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
3
1
  import { IsNotEmpty, validate, ValidationError } from 'class-validator'
4
-
5
- import {
6
- BaseEntity,
7
- BeforeInsert,
8
- BeforeUpdate,
9
- Column,
10
- CreateDateColumn,
11
- Entity,
12
- ManyToOne,
13
- PrimaryGeneratedColumn,
14
- UpdateDateColumn,
15
- } from 'typeorm'
16
- import { getConstraint } from '../../utils/ValidatorUtils'
2
+ import typeorm from 'typeorm'
3
+ const { Entity, Column, PrimaryGeneratedColumn, BaseEntity, ManyToOne, BeforeInsert, BeforeUpdate, CreateDateColumn, UpdateDateColumn } = typeorm
4
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
5
+ import type { ElectronicAddressType, ValidationConstraint } from '../../types/index'
17
6
  import { PartyEntity } from './PartyEntity'
7
+ import { getConstraint } from '../../utils/ValidatorUtils'
18
8
 
19
9
  @Entity('ElectronicAddress')
20
10
  export class ElectronicAddressEntity extends BaseEntity {
@@ -1,26 +1,25 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { IdentityOrigin, ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
3
- import { CredentialRole } from '@sphereon/ssi-types'
4
- import { IsNotEmpty, validate, ValidationError } from 'class-validator'
5
1
  import {
6
2
  BaseEntity,
7
- BeforeInsert,
8
- BeforeUpdate,
9
- Column,
10
3
  CreateDateColumn,
11
4
  Entity,
5
+ PrimaryGeneratedColumn,
6
+ UpdateDateColumn,
7
+ OneToOne,
12
8
  JoinColumn,
13
9
  ManyToOne,
10
+ Column,
14
11
  OneToMany,
15
- OneToOne,
16
- PrimaryGeneratedColumn,
17
- UpdateDateColumn,
12
+ BeforeInsert,
13
+ BeforeUpdate,
18
14
  } from 'typeorm'
19
- import { getConstraint } from '../../utils/ValidatorUtils'
20
- import { ConnectionEntity } from './ConnectionEntity'
15
+ import { IsNotEmpty, validate, ValidationError } from 'class-validator'
16
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
21
17
  import { CorrelationIdentifierEntity } from './CorrelationIdentifierEntity'
18
+ import { ConnectionEntity } from './ConnectionEntity'
22
19
  import { IdentityMetadataItemEntity } from './IdentityMetadataItemEntity'
20
+ import { CredentialRole, IdentityOrigin, ValidationConstraint } from '../../types'
23
21
  import { PartyEntity } from './PartyEntity'
22
+ import { getConstraint } from '../../utils/ValidatorUtils'
24
23
 
25
24
  @Entity('Identity')
26
25
  export class IdentityEntity extends BaseEntity {
@@ -1,9 +1,9 @@
1
1
  import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { IMetadataEntity, ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
2
+ import { Entity, Column, PrimaryGeneratedColumn, BaseEntity, ManyToOne, BeforeInsert, BeforeUpdate } from 'typeorm'
3
+ import { IMetadataEntity, ValidationConstraint } from '../../types'
4
+ import { IdentityEntity } from './IdentityEntity'
3
5
  import { IsNotEmpty, validate, ValidationError } from 'class-validator'
4
- import { BaseEntity, BeforeInsert, BeforeUpdate, Column, Entity, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'
5
6
  import { getConstraint } from '../../utils/ValidatorUtils'
6
- import { IdentityEntity } from './IdentityEntity'
7
7
 
8
8
  @Entity('IdentityMetadata')
9
9
  export class IdentityMetadataItemEntity extends BaseEntity implements IMetadataEntity {
@@ -1,9 +1,9 @@
1
- import { ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
2
- import { IsNotEmpty, validate, Validate, ValidationError } from 'class-validator'
3
- import { BeforeInsert, BeforeUpdate, ChildEntity, Column } from 'typeorm'
4
- import { getConstraint } from '../../utils/ValidatorUtils'
5
- import { IsNonEmptyStringConstraint } from '../validators'
1
+ import { Column, ChildEntity, BeforeInsert, BeforeUpdate } from 'typeorm'
6
2
  import { BaseContactEntity } from './BaseContactEntity'
3
+ import { ValidationConstraint } from '../../types'
4
+ import { validate, IsNotEmpty, ValidationError, Validate } from 'class-validator'
5
+ import { IsNonEmptyStringConstraint } from '../validators'
6
+ import { getConstraint } from '../../utils/ValidatorUtils'
7
7
 
8
8
  @ChildEntity('NaturalPerson')
9
9
  export class NaturalPersonEntity extends BaseContactEntity {
@@ -1,6 +1,6 @@
1
- import { ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
2
1
  import { IsNotEmpty, validate, ValidationError } from 'class-validator'
3
2
  import { BeforeInsert, BeforeUpdate, ChildEntity, Column } from 'typeorm'
3
+ import { ValidationConstraint } from '../../types'
4
4
  import { getConstraint } from '../../utils/ValidatorUtils'
5
5
  import { BaseContactEntity } from './BaseContactEntity'
6
6
 
@@ -1,6 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
3
- import { validate, ValidationError } from 'class-validator'
4
1
  import {
5
2
  BaseEntity,
6
3
  BeforeInsert,
@@ -15,12 +12,15 @@ import {
15
12
  PrimaryGeneratedColumn,
16
13
  UpdateDateColumn,
17
14
  } from 'typeorm'
18
- import { getConstraint } from '../../utils/ValidatorUtils'
19
- import { BaseContactEntity } from './BaseContactEntity'
20
- import { ElectronicAddressEntity } from './ElectronicAddressEntity'
15
+ import { ValidationConstraint } from '../../types'
16
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
21
17
  import { IdentityEntity } from './IdentityEntity'
22
- import { PartyRelationshipEntity } from './PartyRelationshipEntity'
18
+ import { validate, ValidationError } from 'class-validator'
23
19
  import { PartyTypeEntity } from './PartyTypeEntity'
20
+ import { BaseContactEntity } from './BaseContactEntity'
21
+ import { PartyRelationshipEntity } from './PartyRelationshipEntity'
22
+ import { getConstraint } from '../../utils/ValidatorUtils'
23
+ import { ElectronicAddressEntity } from './ElectronicAddressEntity'
24
24
  import { PhysicalAddressEntity } from './PhysicalAddressEntity'
25
25
 
26
26
  @Entity('Party')
@@ -1,16 +1,16 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
1
  import {
3
- BeforeInsert,
4
- BeforeUpdate,
5
- Column,
6
- CreateDateColumn,
7
2
  Entity,
8
- Index,
9
- JoinColumn,
10
- ManyToOne,
11
3
  PrimaryGeneratedColumn,
4
+ CreateDateColumn,
12
5
  UpdateDateColumn,
6
+ ManyToOne,
7
+ Column,
8
+ Index,
9
+ BeforeInsert,
10
+ BeforeUpdate,
11
+ JoinColumn,
13
12
  } from 'typeorm'
13
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
14
14
  import { PartyEntity } from './PartyEntity'
15
15
 
16
16
  @Entity('PartyRelationship')
@@ -1,10 +1,10 @@
1
+ import { BeforeInsert, BeforeUpdate, Column, CreateDateColumn, Entity, Index, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
1
2
  import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { PartyOrigin, PartyTypeType, ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
3
+ import { PartyEntity } from './PartyEntity'
4
+ import { PartyOrigin, PartyTypeType, ValidationConstraint } from '../../types'
3
5
  import { IsNotEmpty, Validate, validate, ValidationError } from 'class-validator'
4
- import { BeforeInsert, BeforeUpdate, Column, CreateDateColumn, Entity, Index, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
5
- import { getConstraint } from '../../utils/ValidatorUtils'
6
6
  import { IsNonEmptyStringConstraint } from '../validators'
7
- import { PartyEntity } from './PartyEntity'
7
+ import { getConstraint } from '../../utils/ValidatorUtils'
8
8
 
9
9
  @Entity('PartyType')
10
10
  @Index('IDX_PartyType_type_tenant_id', ['type', 'tenantId'], { unique: true })
@@ -1,5 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import type { PhysicalAddressType, ValidationConstraint } from '@sphereon/ssi-sdk.data-store-types'
3
1
  import { IsNotEmpty, Validate, validate, ValidationError } from 'class-validator'
4
2
  import {
5
3
  BaseEntity,
@@ -12,9 +10,11 @@ import {
12
10
  PrimaryGeneratedColumn,
13
11
  UpdateDateColumn,
14
12
  } from 'typeorm'
13
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
15
14
  import { getConstraint } from '../../utils/ValidatorUtils'
16
- import { IsNonEmptyStringConstraint } from '../validators'
15
+ import type { PhysicalAddressType, ValidationConstraint } from '../../types/index'
17
16
  import { PartyEntity } from './PartyEntity'
17
+ import { IsNonEmptyStringConstraint } from '../validators'
18
18
 
19
19
  @Entity('PhysicalAddress')
20
20
  export class PhysicalAddressEntity extends BaseEntity {
@@ -1,15 +1,14 @@
1
1
  import { typeormDate, typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
-
2
+ import { BaseEntity, Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
3
3
  import {
4
4
  CredentialCorrelationType,
5
5
  CredentialDocumentFormat,
6
+ CredentialRole,
6
7
  CredentialStateType,
7
8
  type DigitalCredential,
8
9
  DocumentType,
9
10
  RegulationType,
10
- } from '@sphereon/ssi-sdk.data-store-types'
11
- import { CredentialRole } from '@sphereon/ssi-types'
12
- import { BaseEntity, Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
11
+ } from '../../types'
13
12
 
14
13
  @Entity('DigitalCredential')
15
14
  export class DigitalCredentialEntity extends BaseEntity implements DigitalCredential {
@@ -1,5 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { CredentialType, PartyCorrelationType } from '@sphereon/ssi-sdk.core'
3
1
  import {
4
2
  type ActionSubType,
5
3
  ActionType,
@@ -10,6 +8,8 @@ import {
10
8
  System,
11
9
  SystemCorrelationIdType,
12
10
  } from '@sphereon/ssi-types'
11
+ import { CredentialType, PartyCorrelationType } from '@sphereon/ssi-sdk.core'
12
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
13
13
  import { BaseEntity, Column, CreateDateColumn, Entity, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
14
14
 
15
15
  //TODO this entity, also contains some optional fields that are related to another event type (Activity) later we might want to refactor and reorganize this.
@@ -1,7 +1,7 @@
1
- import { validate, Validate, ValidationError } from 'class-validator'
2
1
  import { BaseEntity, BeforeInsert, BeforeUpdate, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm'
3
- import { IsNonEmptyStringConstraint } from '../validators'
4
2
  import { ImageAttributesEntity } from './ImageAttributesEntity'
3
+ import { validate, Validate, ValidationError } from 'class-validator'
4
+ import { IsNonEmptyStringConstraint } from '../validators'
5
5
 
6
6
  @Entity('BackgroundAttributes')
7
7
  export class BackgroundAttributesEntity extends BaseEntity {
@@ -1,6 +1,5 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { validate, Validate, ValidationError } from 'class-validator'
3
- import {
1
+ import typeorm from 'typeorm'
2
+ const {
4
3
  BaseEntity,
5
4
  BeforeInsert,
6
5
  BeforeUpdate,
@@ -12,11 +11,13 @@ import {
12
11
  PrimaryGeneratedColumn,
13
12
  TableInheritance,
14
13
  UpdateDateColumn,
15
- } from 'typeorm'
16
- import { IsNonEmptyStringConstraint } from '../validators'
17
- import { BackgroundAttributesEntity } from './BackgroundAttributesEntity'
14
+ } = typeorm
15
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
18
16
  import { ImageAttributesEntity } from './ImageAttributesEntity'
17
+ import { BackgroundAttributesEntity } from './BackgroundAttributesEntity'
19
18
  import { TextAttributesEntity } from './TextAttributesEntity'
19
+ import { validate, Validate, ValidationError } from 'class-validator'
20
+ import { IsNonEmptyStringConstraint } from '../validators'
20
21
 
21
22
  @Entity('BaseLocaleBranding')
22
23
  @TableInheritance({ column: { type: 'varchar', name: 'type' } })
@@ -1,5 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { ArrayMinSize, IsNotEmpty, validate, ValidationError } from 'class-validator'
3
1
  import {
4
2
  BaseEntity,
5
3
  BeforeInsert,
@@ -12,6 +10,8 @@ import {
12
10
  PrimaryGeneratedColumn,
13
11
  UpdateDateColumn,
14
12
  } from 'typeorm'
13
+ import { ArrayMinSize, IsNotEmpty, validate, ValidationError } from 'class-validator'
14
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
15
15
  import { CredentialLocaleBrandingEntity } from './CredentialLocaleBrandingEntity'
16
16
 
17
17
  @Entity('CredentialBranding')
@@ -1,7 +1,7 @@
1
- import { validate, Validate, ValidationError } from 'class-validator'
2
1
  import { BaseEntity, BeforeInsert, BeforeUpdate, Column, Entity, Index, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'
3
- import { IsNonEmptyStringConstraint } from '../validators'
4
2
  import { CredentialLocaleBrandingEntity } from './CredentialLocaleBrandingEntity'
3
+ import { validate, Validate, ValidationError } from 'class-validator'
4
+ import { IsNonEmptyStringConstraint } from '../validators'
5
5
 
6
6
  @Entity('CredentialClaims')
7
7
  @Index('IDX_CredentialClaimsEntity_credentialLocaleBranding_locale', ['credentialLocaleBranding', 'key'], { unique: true })
@@ -1,6 +1,6 @@
1
- import { ChildEntity, Column, Index, JoinColumn, ManyToOne, OneToMany } from 'typeorm'
2
- import { BaseLocaleBrandingEntity } from './BaseLocaleBrandingEntity'
1
+ import { ChildEntity, Column, JoinColumn, ManyToOne, Index, OneToMany } from 'typeorm'
3
2
  import { CredentialBrandingEntity } from './CredentialBrandingEntity'
3
+ import { BaseLocaleBrandingEntity } from './BaseLocaleBrandingEntity'
4
4
  import { CredentialClaimsEntity } from './CredentialClaimsEntity'
5
5
 
6
6
  @ChildEntity('CredentialLocaleBranding')
@@ -1,7 +1,7 @@
1
- import { validate, Validate, ValidationError } from 'class-validator'
2
1
  import { BaseEntity, BeforeInsert, BeforeUpdate, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm'
3
- import { IsNonEmptyStringConstraint } from '../validators'
4
2
  import { ImageDimensionsEntity } from './ImageDimensionsEntity'
3
+ import { validate, Validate, ValidationError } from 'class-validator'
4
+ import { IsNonEmptyStringConstraint } from '../validators'
5
5
 
6
6
  @Entity('ImageAttributes')
7
7
  export class ImageAttributesEntity extends BaseEntity {
@@ -1,5 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { ArrayMinSize, IsNotEmpty, validate, ValidationError } from 'class-validator'
3
1
  import {
4
2
  BaseEntity,
5
3
  BeforeInsert,
@@ -12,6 +10,8 @@ import {
12
10
  PrimaryGeneratedColumn,
13
11
  UpdateDateColumn,
14
12
  } from 'typeorm'
13
+ import { ArrayMinSize, IsNotEmpty, validate, ValidationError } from 'class-validator'
14
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
15
15
  import { IssuerLocaleBrandingEntity } from './IssuerLocaleBrandingEntity'
16
16
 
17
17
  @Entity('IssuerBranding')
@@ -1,8 +1,8 @@
1
- import { Validate } from 'class-validator'
2
1
  import { ChildEntity, Column, Index, JoinColumn, ManyToOne } from 'typeorm'
3
- import { IsNonEmptyStringConstraint } from '../validators'
4
- import { BaseLocaleBrandingEntity } from './BaseLocaleBrandingEntity'
5
2
  import { IssuerBrandingEntity } from './IssuerBrandingEntity'
3
+ import { BaseLocaleBrandingEntity } from './BaseLocaleBrandingEntity'
4
+ import { IsNonEmptyStringConstraint } from '../validators'
5
+ import { Validate } from 'class-validator'
6
6
 
7
7
  @ChildEntity('IssuerLocaleBranding')
8
8
  @Index('IDX_IssuerLocaleBrandingEntity_issuerBranding_locale', ['issuerBranding', 'locale'], { unique: true })
@@ -1,5 +1,5 @@
1
- import { validate, Validate, ValidationError } from 'class-validator'
2
1
  import { BaseEntity, BeforeInsert, BeforeUpdate, Column, Entity, PrimaryGeneratedColumn } from 'typeorm'
2
+ import { validate, Validate, ValidationError } from 'class-validator'
3
3
  import { IsNonEmptyStringConstraint } from '../validators'
4
4
 
5
5
  @Entity('TextAttributes')
@@ -1,5 +1,5 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
1
  import { BaseEntity, Column, CreateDateColumn, Entity, PrimaryColumn, UpdateDateColumn } from 'typeorm'
2
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
3
3
 
4
4
  /**
5
5
  * @class MachineStateInfoEntity
@@ -1,16 +1,16 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
- import { IsNotEmpty } from 'class-validator'
3
1
  import { BaseEntity, BeforeInsert, BeforeUpdate, Column, CreateDateColumn, Entity, Index, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
2
+ import { IsNotEmpty } from 'class-validator'
3
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
4
4
 
5
- @Entity('DcqlQueryItem')
5
+ @Entity('PresentationDefinitionItem')
6
6
  @Index(['version'], { unique: false })
7
- export class DcqlQueryItemEntity extends BaseEntity {
7
+ export class PresentationDefinitionItemEntity extends BaseEntity {
8
8
  @PrimaryGeneratedColumn('uuid')
9
9
  id!: string
10
10
 
11
- @Column({ name: 'query_id', length: 255, type: 'varchar', nullable: false, unique: false })
12
- @IsNotEmpty({ message: 'A blank query id field is not allowed' })
13
- queryId!: string
11
+ @Column({ name: 'definition_id', length: 255, type: 'varchar', nullable: false, unique: false })
12
+ @IsNotEmpty({ message: 'A blank definition id field is not allowed' })
13
+ definitionId!: string
14
14
 
15
15
  @Column({ name: 'version', length: 255, type: 'varchar', nullable: false, unique: false })
16
16
  @IsNotEmpty({ message: 'A blank version field is not allowed' })
@@ -25,9 +25,13 @@ export class DcqlQueryItemEntity extends BaseEntity {
25
25
  @Column({ name: 'name', length: 255, type: 'varchar', nullable: true, unique: false })
26
26
  name?: string
27
27
 
28
- @Column({ name: 'query', type: 'text', nullable: false, unique: false })
29
- @IsNotEmpty({ message: 'A blank dcql query payload field is not allowed' })
30
- query!: string
28
+ @Column({ name: 'definition_payload', type: 'text', nullable: false, unique: false }) // TODO should this become nullable now we have dcqlPayload?
29
+ @IsNotEmpty({ message: 'A blank PD definition payload field is not allowed' })
30
+ definitionPayload!: string
31
+
32
+ @Column({ name: 'dcql_payload', type: 'text', nullable: true, unique: false })
33
+ @IsNotEmpty({ message: 'A blank dcql definition payload field is not allowed' })
34
+ dcqlPayload!: string
31
35
 
32
36
  @CreateDateColumn({ name: 'created_at', nullable: false, type: typeOrmDateTime() })
33
37
  createdAt!: Date
@@ -1,6 +1,6 @@
1
- import { BitstringStatusMessage } from '../../types'
2
1
  import { ChildEntity, Column } from 'typeorm'
3
2
  import { StatusListEntryEntity } from './StatusList2021EntryEntity'
3
+ import { BitstringStatusMessage } from '../../types'
4
4
 
5
5
  @ChildEntity('bitstring')
6
6
  export class BitstringStatusListEntryEntity extends StatusListEntryEntity {
@@ -1,4 +1,3 @@
1
- import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
2
1
  import {
3
2
  type CredentialProofFormat,
4
3
  type IIssuer,
@@ -10,10 +9,12 @@ import {
10
9
  type StatusPurpose2021,
11
10
  } from '@sphereon/ssi-types'
12
11
 
13
- import { BaseEntity, ChildEntity, Column, Entity, OneToMany, PrimaryColumn, TableInheritance, Unique } from 'typeorm'
12
+ import typeorm from 'typeorm'
13
+ import { StatusListEntryEntity } from './StatusList2021EntryEntity'
14
+ import { typeOrmDateTime } from '@sphereon/ssi-sdk.agent-config'
14
15
  import { BitstringStatusListEntryEntity } from './BitstringStatusListEntryEntity'
15
16
 
16
- import { StatusListEntryEntity } from './StatusList2021EntryEntity'
17
+ const { BaseEntity, ChildEntity, Column, Entity, OneToMany, PrimaryColumn, TableInheritance, Unique } = typeorm
17
18
 
18
19
  @Entity('StatusList')
19
20
  @Unique('UQ_correlationId', ['correlationId'])
@@ -0,0 +1,9 @@
1
+ import type { ActivityLoggingEvent, AuditLoggingEvent } from '@sphereon/ssi-sdk.core'
2
+ import type { GetActivityEventsArgs, GetAuditEventsArgs, StoreActivityEventArgs, StoreAuditEventArgs } from '../types'
3
+
4
+ export abstract class AbstractEventLoggerStore {
5
+ abstract getAuditEvents(args: GetAuditEventsArgs): Promise<Array<AuditLoggingEvent>>
6
+ abstract getActivityEvents(args: GetActivityEventsArgs): Promise<Array<ActivityLoggingEvent>>
7
+ abstract storeAuditEvent(args: StoreAuditEventArgs): Promise<AuditLoggingEvent>
8
+ abstract storeActivityEvent(args: StoreActivityEventArgs): Promise<ActivityLoggingEvent>
9
+ }
@@ -1,11 +1,11 @@
1
1
  import type { ActivityLoggingEvent, AuditLoggingEvent } from '@sphereon/ssi-sdk.core'
2
- import type { GetActivityEventsArgs, GetAuditEventsArgs, StoreActivityEventArgs, StoreAuditEventArgs } from '@sphereon/ssi-sdk.data-store-types'
3
- import { AbstractEventLoggerStore } from '@sphereon/ssi-sdk.data-store-types'
4
2
  import { LoggingEventType, type OrPromise } from '@sphereon/ssi-types'
5
3
  import Debug, { Debugger } from 'debug'
6
4
  import { DataSource } from 'typeorm'
5
+ import { AbstractEventLoggerStore } from './AbstractEventLoggerStore'
7
6
  import { AuditEventEntity } from '../entities/eventLogger/AuditEventEntity'
8
7
  import { activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom } from '../utils/eventLogger/MappingUtils'
8
+ import type { GetActivityEventsArgs, GetAuditEventsArgs, StoreActivityEventArgs, StoreAuditEventArgs } from '../types'
9
9
 
10
10
  const debug: Debugger = Debug('sphereon:ssi-sdk:event-store')
11
11
 
package/src/index.ts CHANGED
@@ -1,48 +1,53 @@
1
1
  import { BaseConfigEntity } from './entities/contact/BaseConfigEntity'
2
+ import { BaseLocaleBrandingEntity } from './entities/issuanceBranding/BaseLocaleBrandingEntity'
2
3
  import { BaseContactEntity } from './entities/contact/BaseContactEntity'
3
4
  import { ConnectionEntity } from './entities/contact/ConnectionEntity'
4
- import { ContactMetadataItemEntity } from './entities/contact/ContactMetadataItemEntity'
5
+ import { PartyEntity } from './entities/contact/PartyEntity'
5
6
  import { CorrelationIdentifierEntity } from './entities/contact/CorrelationIdentifierEntity'
6
7
  import { DidAuthConfigEntity } from './entities/contact/DidAuthConfigEntity'
7
- import { ElectronicAddressEntity } from './entities/contact/ElectronicAddressEntity'
8
8
  import { IdentityEntity } from './entities/contact/IdentityEntity'
9
9
  import { IdentityMetadataItemEntity } from './entities/contact/IdentityMetadataItemEntity'
10
- import { NaturalPersonEntity } from './entities/contact/NaturalPersonEntity'
11
10
  import { OpenIdConfigEntity } from './entities/contact/OpenIdConfigEntity'
12
- import { OrganizationEntity } from './entities/contact/OrganizationEntity'
13
- import { PartyEntity } from './entities/contact/PartyEntity'
14
- // import { IStatusListEntity, IStatusListEntryEntity } from './types.'
15
- import { PartyRelationshipEntity } from './entities/contact/PartyRelationshipEntity'
16
- import { PartyTypeEntity } from './entities/contact/PartyTypeEntity'
17
- import { PhysicalAddressEntity } from './entities/contact/PhysicalAddressEntity'
18
- import { DigitalCredentialEntity } from './entities/digitalCredential/DigitalCredentialEntity'
19
- import { AuditEventEntity } from './entities/eventLogger/AuditEventEntity'
20
11
  import { BackgroundAttributesEntity } from './entities/issuanceBranding/BackgroundAttributesEntity'
21
- import { BaseLocaleBrandingEntity } from './entities/issuanceBranding/BaseLocaleBrandingEntity'
22
12
  import { CredentialBrandingEntity } from './entities/issuanceBranding/CredentialBrandingEntity'
23
- import { CredentialClaimsEntity } from './entities/issuanceBranding/CredentialClaimsEntity'
24
13
  import { CredentialLocaleBrandingEntity } from './entities/issuanceBranding/CredentialLocaleBrandingEntity'
25
14
  import { ImageAttributesEntity } from './entities/issuanceBranding/ImageAttributesEntity'
26
15
  import { ImageDimensionsEntity } from './entities/issuanceBranding/ImageDimensionsEntity'
27
- import { IssuerBrandingEntity } from './entities/issuanceBranding/IssuerBrandingEntity'
28
16
  import { IssuerLocaleBrandingEntity } from './entities/issuanceBranding/IssuerLocaleBrandingEntity'
17
+ import { IssuerBrandingEntity } from './entities/issuanceBranding/IssuerBrandingEntity'
29
18
  import { TextAttributesEntity } from './entities/issuanceBranding/TextAttributesEntity'
19
+ import { BitstringStatusListEntity, OAuthStatusListEntity, StatusList2021Entity, StatusListEntity } from './entities/statusList/StatusListEntities'
20
+ import { StatusListEntryEntity } from './entities/statusList/StatusList2021EntryEntity'
21
+ import { BitstringStatusListEntryEntity } from './entities/statusList/BitstringStatusListEntryEntity'
30
22
  import { MachineStateInfoEntity } from './entities/machineState/MachineStateInfoEntity'
23
+ // import { IStatusListEntity, IStatusListEntryEntity } from './types.'
24
+ import { PartyRelationshipEntity } from './entities/contact/PartyRelationshipEntity'
25
+ import { PartyTypeEntity } from './entities/contact/PartyTypeEntity'
26
+ import { OrganizationEntity } from './entities/contact/OrganizationEntity'
27
+ import { NaturalPersonEntity } from './entities/contact/NaturalPersonEntity'
28
+ import { ElectronicAddressEntity } from './entities/contact/ElectronicAddressEntity'
29
+ import { PhysicalAddressEntity } from './entities/contact/PhysicalAddressEntity'
30
+ import { AuditEventEntity } from './entities/eventLogger/AuditEventEntity'
31
+ import { DigitalCredentialEntity } from './entities/digitalCredential/DigitalCredentialEntity'
32
+ import { PresentationDefinitionItemEntity } from './entities/presentationDefinition/PresentationDefinitionItemEntity'
33
+ import { ContactMetadataItemEntity } from './entities/contact/ContactMetadataItemEntity'
34
+ import { CredentialClaimsEntity } from './entities/issuanceBranding/CredentialClaimsEntity'
31
35
 
32
36
  import { Oid4vcStateEntity } from './entities/oid4vcState/Oid4vcStateEntity'
33
- import { DcqlQueryItemEntity } from './entities/presentationDefinition/DcqlQueryItemEntity'
34
- import { BitstringStatusListEntryEntity } from './entities/statusList/BitstringStatusListEntryEntity'
35
- import { StatusListEntryEntity } from './entities/statusList/StatusList2021EntryEntity'
36
- import { BitstringStatusListEntity, OAuthStatusListEntity, StatusList2021Entity, StatusListEntity } from './entities/statusList/StatusListEntities'
37
37
  // import {PartyCorrelationType} from "@sphereon/ssi-sdk.core";
38
38
 
39
39
  export { ContactStore } from './contact/ContactStore'
40
+ export { AbstractContactStore } from './contact/AbstractContactStore'
41
+ export { AbstractDigitalCredentialStore } from './digitalCredential/AbstractDigitalCredentialStore'
40
42
  export { DigitalCredentialStore } from './digitalCredential/DigitalCredentialStore'
43
+ export { AbstractIssuanceBrandingStore } from './issuanceBranding/AbstractIssuanceBrandingStore'
41
44
  export { IssuanceBrandingStore } from './issuanceBranding/IssuanceBrandingStore'
42
45
  export { StatusListStore } from './statusList/StatusListStore'
43
- export { AbstractEventLoggerStore } from '@sphereon/ssi-sdk.data-store-types'
46
+ export { AbstractEventLoggerStore } from './eventLogger/AbstractEventLoggerStore'
44
47
  export { EventLoggerStore } from './eventLogger/EventLoggerStore'
48
+ export { IAbstractMachineStateStore } from './machineState/IAbstractMachineStateStore'
45
49
  export { MachineStateStore } from './machineState/MachineStateStore'
50
+ export { AbstractPDStore } from './presentationDefinition/AbstractPDStore'
46
51
  export { PDStore } from './presentationDefinition/PDStore'
47
52
  export {
48
53
  DataStoreMigrations,
@@ -94,7 +99,7 @@ export const DataStoreIssuanceBrandingEntities = [
94
99
  CredentialClaimsEntity,
95
100
  ]
96
101
 
97
- export const DataStorePresentationDefinitionEntities = [DcqlQueryItemEntity]
102
+ export const DataStorePresentationDefinitionEntities = [PresentationDefinitionItemEntity]
98
103
 
99
104
  export const DataStoreStatusListEntities = [
100
105
  StatusListEntity,
@@ -153,7 +158,7 @@ export {
153
158
  AuditEventEntity,
154
159
  DigitalCredentialEntity,
155
160
  MachineStateInfoEntity,
156
- DcqlQueryItemEntity,
161
+ PresentationDefinitionItemEntity,
157
162
  ContactMetadataItemEntity,
158
163
  CredentialClaimsEntity,
159
164
  Oid4vcStateEntity,
@@ -0,0 +1,41 @@
1
+ import type {
2
+ IAddCredentialBrandingArgs,
3
+ IAddCredentialLocaleBrandingArgs,
4
+ IAddIssuerBrandingArgs,
5
+ IAddIssuerLocaleBrandingArgs,
6
+ ICredentialBranding,
7
+ ICredentialLocaleBranding,
8
+ IGetCredentialBrandingArgs,
9
+ IGetCredentialLocaleBrandingArgs,
10
+ IGetIssuerBrandingArgs,
11
+ IGetIssuerLocaleBrandingArgs,
12
+ IIssuerBranding,
13
+ IIssuerLocaleBranding,
14
+ IRemoveCredentialBrandingArgs,
15
+ IRemoveCredentialLocaleBrandingArgs,
16
+ IRemoveIssuerBrandingArgs,
17
+ IRemoveIssuerLocaleBrandingArgs,
18
+ IUpdateCredentialBrandingArgs,
19
+ IUpdateCredentialLocaleBrandingArgs,
20
+ IUpdateIssuerBrandingArgs,
21
+ IUpdateIssuerLocaleBrandingArgs,
22
+ } from '../types'
23
+
24
+ export abstract class AbstractIssuanceBrandingStore {
25
+ public abstract addCredentialBranding(args: IAddCredentialBrandingArgs): Promise<ICredentialBranding>
26
+ public abstract getCredentialBranding(args?: IGetCredentialBrandingArgs): Promise<Array<ICredentialBranding>>
27
+ public abstract updateCredentialBranding(args: IUpdateCredentialBrandingArgs): Promise<ICredentialBranding>
28
+ public abstract removeCredentialBranding(args: IRemoveCredentialBrandingArgs): Promise<void>
29
+ public abstract addCredentialLocaleBranding(args: IAddCredentialLocaleBrandingArgs): Promise<ICredentialBranding>
30
+ public abstract getCredentialLocaleBranding(args?: IGetCredentialLocaleBrandingArgs): Promise<Array<ICredentialLocaleBranding>>
31
+ public abstract updateCredentialLocaleBranding(args: IUpdateCredentialLocaleBrandingArgs): Promise<ICredentialLocaleBranding>
32
+ public abstract removeCredentialLocaleBranding(args: IRemoveCredentialLocaleBrandingArgs): Promise<void>
33
+ public abstract addIssuerBranding(args: IAddIssuerBrandingArgs): Promise<IIssuerBranding>
34
+ public abstract getIssuerBranding(args?: IGetIssuerBrandingArgs): Promise<Array<IIssuerBranding>>
35
+ public abstract updateIssuerBranding(args: IUpdateIssuerBrandingArgs): Promise<IIssuerBranding>
36
+ public abstract removeIssuerBranding(args: IRemoveIssuerBrandingArgs): Promise<void>
37
+ public abstract addIssuerLocaleBranding(args: IAddIssuerLocaleBrandingArgs): Promise<IIssuerBranding>
38
+ public abstract getIssuerLocaleBranding(args?: IGetIssuerLocaleBrandingArgs): Promise<Array<IIssuerLocaleBranding>>
39
+ public abstract updateIssuerLocaleBranding(args: IUpdateIssuerLocaleBrandingArgs): Promise<IIssuerLocaleBranding>
40
+ public abstract removeIssuerLocaleBranding(args: IRemoveIssuerLocaleBrandingArgs): Promise<void>
41
+ }