@sphereon/ssi-sdk.data-store 0.34.1-feature.SSISDK.82.linkedVP.327 → 0.34.1-feature.SSISDK.82.linkedVP.341
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/index.cjs +53 -25
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8 -1
- package/dist/index.d.ts +8 -1
- package/dist/index.js +54 -26
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
- package/src/digitalCredential/DigitalCredentialStore.ts +24 -24
- package/src/utils/digitalCredential/MappingUtils.ts +69 -2
package/dist/index.d.cts
CHANGED
|
@@ -848,7 +848,14 @@ declare const isDidAuthConfig: (config: NonPersistedConnectionConfig | BaseConfi
|
|
|
848
848
|
|
|
849
849
|
declare function isHex(input: string): boolean;
|
|
850
850
|
declare function parseRawDocument(raw: string): OriginalVerifiableCredential | OriginalVerifiablePresentation;
|
|
851
|
+
/**
|
|
852
|
+
* Normalizes nullable fields by converting undefined to null.
|
|
853
|
+
* This ensures TypeORM actually clears the database fields instead of ignoring them.
|
|
854
|
+
*/
|
|
855
|
+
declare function normalizeNullableFields<T extends Record<string, any>>(obj: T, nullableKeys: Array<keyof T>): T;
|
|
851
856
|
declare const nonPersistedDigitalCredentialEntityFromAddArgs: (addCredentialArgs: AddCredentialArgs) => NonPersistedDigitalCredential;
|
|
857
|
+
declare const persistedDigitalCredentialEntityFromUpdateArgs: (existingCredential: DigitalCredentialEntity, updates: Partial<DigitalCredential>) => DigitalCredentialEntity;
|
|
858
|
+
declare const persistedDigitalCredentialEntityFromStateArgs: (existingCredential: DigitalCredentialEntity, args: UpdateCredentialStateArgs) => DigitalCredentialEntity;
|
|
852
859
|
declare const digitalCredentialFrom: (credentialEntity: DigitalCredentialEntity) => DigitalCredential;
|
|
853
860
|
declare const digitalCredentialsFrom: (credentialEntities: Array<DigitalCredentialEntity>) => DigitalCredential[];
|
|
854
861
|
|
|
@@ -884,4 +891,4 @@ declare const DataStoreDigitalCredentialEntities: (typeof DigitalCredentialEntit
|
|
|
884
891
|
declare const DataStoreMachineStateEntities: (typeof MachineStateInfoEntity)[];
|
|
885
892
|
declare const DataStoreEntities: (typeof BaseConfigEntity | typeof ConnectionEntity | typeof PartyEntity | typeof IdentityMetadataItemEntity | typeof CorrelationIdentifierEntity | typeof PartyRelationshipEntity | typeof PartyTypeEntity | typeof BaseContactEntity | typeof ElectronicAddressEntity | typeof PhysicalAddressEntity | typeof ContactMetadataItemEntity | typeof CredentialBrandingEntity | typeof ImageAttributesEntity | typeof ImageDimensionsEntity | typeof BaseLocaleBrandingEntity | typeof IssuerBrandingEntity | typeof TextAttributesEntity | typeof CredentialClaimsEntity | typeof DcqlQueryItemEntity | typeof StatusListEntity | typeof StatusListEntryEntity | typeof AuditEventEntity | typeof DigitalCredentialEntity | typeof MachineStateInfoEntity)[];
|
|
886
893
|
|
|
887
|
-
export { AuditEventEntity, BackgroundAttributesEntity, BaseConfigEntity, BaseContactEntity, BaseLocaleBrandingEntity, type BitstringStatusListArgs, BitstringStatusListEntity, type BitstringStatusListEntryCredentialStatus, BitstringStatusListEntryEntity, type BitstringStatusMessage, type BitstringStatusPurpose, ConnectionEntity, ContactMetadataItemEntity, ContactStore, CorrelationIdentifierEntity, CredentialBrandingEntity, CredentialClaimsEntity, CredentialLocaleBrandingEntity, DataStoreContactEntities, DataStoreContactMigrations, DataStoreDigitalCredentialEntities, DataStoreDigitalCredentialMigrations, DataStoreEntities, DataStoreEventLoggerEntities, DataStoreEventLoggerMigrations, DataStoreIssuanceBrandingEntities, DataStoreIssuanceBrandingMigrations, DataStoreMachineStateEntities, DataStoreMachineStateMigrations, DataStoreMigrations, DataStoreOid4vcStateEntities, DataStorePresentationDefinitionEntities, DataStorePresentationDefinitionMigrations, DataStoreStatusListEntities, DataStoreStatusListMigrations, DcqlQueryItemEntity, DidAuthConfigEntity, DigitalCredentialEntity, DigitalCredentialStore, ElectronicAddressEntity, EventLoggerStore, type FindStatusListArgs, type FindStatusListEntryArgs, type IAddStatusListArgs, type IAddStatusListEntryArgs, type IBitstringStatusListArgs, type IBitstringStatusListEntity, type IBitstringStatusListEntryEntity, type IGetStatusListArgs, type IGetStatusListEntriesArgs, type IGetStatusListEntryByCredentialIdArgs, type IGetStatusListEntryByIndexArgs, type IGetStatusListsArgs, type IOAuthStatusListArgs, type IOAuthStatusListEntity, type IRemoveStatusListArgs, type IStatusList2021Args, type IStatusList2021Entity, type IStatusListEntity, type IStatusListEntryAvailableArgs, type IStatusListEntryEntity, type IUpdateStatusListIndexArgs, IdentityEntity, IdentityMetadataItemEntity, ImageAttributesEntity, ImageDimensionsEntity, IssuanceBrandingStore, IssuerBrandingEntity, IssuerLocaleBrandingEntity, MachineStateInfoEntity, MachineStateStore, OAuthStatusListEntity, Oid4vcStateEntity, OpenIdConfigEntity, PDStore, PartyEntity, PhysicalAddressEntity, StatusList2021Entity, StatusListEntity, StatusListEntryEntity, StatusListStore, TextAttributesEntity, activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom, backgroundAttributesEntityFrom, configFrom, connectionEntityFrom, connectionFrom, contactEntityFrom, contactFrom, contactMetadataItemEntityFrom, correlationIdentifierEntityFrom, correlationIdentifierFrom, credentialBrandingEntityFrom, credentialBrandingFrom, credentialClaimsEntityFrom, credentialLocaleBrandingEntityFrom, dcqlQueryEntityItemFrom, dcqlQueryItemFrom, didAuthConfigEntityFrom, didAuthConfigFrom, digitalCredentialFrom, digitalCredentialsFrom, electronicAddressEntityFrom, electronicAddressFrom, identityEntityFrom, identityFrom, identityMetadataItemEntityFrom, imageAttributesEntityFrom, imageDimensionsEntityFrom, isDidAuthConfig, isHex, isNaturalPerson, isOpenIdConfig, isOrganization, isPresentationDefinitionEqual, issuerBrandingEntityFrom, issuerBrandingFrom, issuerLocaleBrandingEntityFrom, localeBrandingFrom, metadataItemFrom, naturalPersonEntityFrom, naturalPersonFrom, nonPersistedDigitalCredentialEntityFromAddArgs, openIdConfigEntityFrom, openIdConfigFrom, organizationEntityFrom, organizationFrom, parseRawDocument, partyEntityFrom, partyFrom, partyRelationshipEntityFrom, partyRelationshipFrom, partyTypeEntityFrom, partyTypeFrom, physicalAddressEntityFrom, physicalAddressFrom, textAttributesEntityFrom };
|
|
894
|
+
export { AuditEventEntity, BackgroundAttributesEntity, BaseConfigEntity, BaseContactEntity, BaseLocaleBrandingEntity, type BitstringStatusListArgs, BitstringStatusListEntity, type BitstringStatusListEntryCredentialStatus, BitstringStatusListEntryEntity, type BitstringStatusMessage, type BitstringStatusPurpose, ConnectionEntity, ContactMetadataItemEntity, ContactStore, CorrelationIdentifierEntity, CredentialBrandingEntity, CredentialClaimsEntity, CredentialLocaleBrandingEntity, DataStoreContactEntities, DataStoreContactMigrations, DataStoreDigitalCredentialEntities, DataStoreDigitalCredentialMigrations, DataStoreEntities, DataStoreEventLoggerEntities, DataStoreEventLoggerMigrations, DataStoreIssuanceBrandingEntities, DataStoreIssuanceBrandingMigrations, DataStoreMachineStateEntities, DataStoreMachineStateMigrations, DataStoreMigrations, DataStoreOid4vcStateEntities, DataStorePresentationDefinitionEntities, DataStorePresentationDefinitionMigrations, DataStoreStatusListEntities, DataStoreStatusListMigrations, DcqlQueryItemEntity, DidAuthConfigEntity, DigitalCredentialEntity, DigitalCredentialStore, ElectronicAddressEntity, EventLoggerStore, type FindStatusListArgs, type FindStatusListEntryArgs, type IAddStatusListArgs, type IAddStatusListEntryArgs, type IBitstringStatusListArgs, type IBitstringStatusListEntity, type IBitstringStatusListEntryEntity, type IGetStatusListArgs, type IGetStatusListEntriesArgs, type IGetStatusListEntryByCredentialIdArgs, type IGetStatusListEntryByIndexArgs, type IGetStatusListsArgs, type IOAuthStatusListArgs, type IOAuthStatusListEntity, type IRemoveStatusListArgs, type IStatusList2021Args, type IStatusList2021Entity, type IStatusListEntity, type IStatusListEntryAvailableArgs, type IStatusListEntryEntity, type IUpdateStatusListIndexArgs, IdentityEntity, IdentityMetadataItemEntity, ImageAttributesEntity, ImageDimensionsEntity, IssuanceBrandingStore, IssuerBrandingEntity, IssuerLocaleBrandingEntity, MachineStateInfoEntity, MachineStateStore, OAuthStatusListEntity, Oid4vcStateEntity, OpenIdConfigEntity, PDStore, PartyEntity, PhysicalAddressEntity, StatusList2021Entity, StatusListEntity, StatusListEntryEntity, StatusListStore, TextAttributesEntity, activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom, backgroundAttributesEntityFrom, configFrom, connectionEntityFrom, connectionFrom, contactEntityFrom, contactFrom, contactMetadataItemEntityFrom, correlationIdentifierEntityFrom, correlationIdentifierFrom, credentialBrandingEntityFrom, credentialBrandingFrom, credentialClaimsEntityFrom, credentialLocaleBrandingEntityFrom, dcqlQueryEntityItemFrom, dcqlQueryItemFrom, didAuthConfigEntityFrom, didAuthConfigFrom, digitalCredentialFrom, digitalCredentialsFrom, electronicAddressEntityFrom, electronicAddressFrom, identityEntityFrom, identityFrom, identityMetadataItemEntityFrom, imageAttributesEntityFrom, imageDimensionsEntityFrom, isDidAuthConfig, isHex, isNaturalPerson, isOpenIdConfig, isOrganization, isPresentationDefinitionEqual, issuerBrandingEntityFrom, issuerBrandingFrom, issuerLocaleBrandingEntityFrom, localeBrandingFrom, metadataItemFrom, naturalPersonEntityFrom, naturalPersonFrom, nonPersistedDigitalCredentialEntityFromAddArgs, normalizeNullableFields, openIdConfigEntityFrom, openIdConfigFrom, organizationEntityFrom, organizationFrom, parseRawDocument, partyEntityFrom, partyFrom, partyRelationshipEntityFrom, partyRelationshipFrom, partyTypeEntityFrom, partyTypeFrom, persistedDigitalCredentialEntityFromStateArgs, persistedDigitalCredentialEntityFromUpdateArgs, physicalAddressEntityFrom, physicalAddressFrom, textAttributesEntityFrom };
|
package/dist/index.d.ts
CHANGED
|
@@ -848,7 +848,14 @@ declare const isDidAuthConfig: (config: NonPersistedConnectionConfig | BaseConfi
|
|
|
848
848
|
|
|
849
849
|
declare function isHex(input: string): boolean;
|
|
850
850
|
declare function parseRawDocument(raw: string): OriginalVerifiableCredential | OriginalVerifiablePresentation;
|
|
851
|
+
/**
|
|
852
|
+
* Normalizes nullable fields by converting undefined to null.
|
|
853
|
+
* This ensures TypeORM actually clears the database fields instead of ignoring them.
|
|
854
|
+
*/
|
|
855
|
+
declare function normalizeNullableFields<T extends Record<string, any>>(obj: T, nullableKeys: Array<keyof T>): T;
|
|
851
856
|
declare const nonPersistedDigitalCredentialEntityFromAddArgs: (addCredentialArgs: AddCredentialArgs) => NonPersistedDigitalCredential;
|
|
857
|
+
declare const persistedDigitalCredentialEntityFromUpdateArgs: (existingCredential: DigitalCredentialEntity, updates: Partial<DigitalCredential>) => DigitalCredentialEntity;
|
|
858
|
+
declare const persistedDigitalCredentialEntityFromStateArgs: (existingCredential: DigitalCredentialEntity, args: UpdateCredentialStateArgs) => DigitalCredentialEntity;
|
|
852
859
|
declare const digitalCredentialFrom: (credentialEntity: DigitalCredentialEntity) => DigitalCredential;
|
|
853
860
|
declare const digitalCredentialsFrom: (credentialEntities: Array<DigitalCredentialEntity>) => DigitalCredential[];
|
|
854
861
|
|
|
@@ -884,4 +891,4 @@ declare const DataStoreDigitalCredentialEntities: (typeof DigitalCredentialEntit
|
|
|
884
891
|
declare const DataStoreMachineStateEntities: (typeof MachineStateInfoEntity)[];
|
|
885
892
|
declare const DataStoreEntities: (typeof BaseConfigEntity | typeof ConnectionEntity | typeof PartyEntity | typeof IdentityMetadataItemEntity | typeof CorrelationIdentifierEntity | typeof PartyRelationshipEntity | typeof PartyTypeEntity | typeof BaseContactEntity | typeof ElectronicAddressEntity | typeof PhysicalAddressEntity | typeof ContactMetadataItemEntity | typeof CredentialBrandingEntity | typeof ImageAttributesEntity | typeof ImageDimensionsEntity | typeof BaseLocaleBrandingEntity | typeof IssuerBrandingEntity | typeof TextAttributesEntity | typeof CredentialClaimsEntity | typeof DcqlQueryItemEntity | typeof StatusListEntity | typeof StatusListEntryEntity | typeof AuditEventEntity | typeof DigitalCredentialEntity | typeof MachineStateInfoEntity)[];
|
|
886
893
|
|
|
887
|
-
export { AuditEventEntity, BackgroundAttributesEntity, BaseConfigEntity, BaseContactEntity, BaseLocaleBrandingEntity, type BitstringStatusListArgs, BitstringStatusListEntity, type BitstringStatusListEntryCredentialStatus, BitstringStatusListEntryEntity, type BitstringStatusMessage, type BitstringStatusPurpose, ConnectionEntity, ContactMetadataItemEntity, ContactStore, CorrelationIdentifierEntity, CredentialBrandingEntity, CredentialClaimsEntity, CredentialLocaleBrandingEntity, DataStoreContactEntities, DataStoreContactMigrations, DataStoreDigitalCredentialEntities, DataStoreDigitalCredentialMigrations, DataStoreEntities, DataStoreEventLoggerEntities, DataStoreEventLoggerMigrations, DataStoreIssuanceBrandingEntities, DataStoreIssuanceBrandingMigrations, DataStoreMachineStateEntities, DataStoreMachineStateMigrations, DataStoreMigrations, DataStoreOid4vcStateEntities, DataStorePresentationDefinitionEntities, DataStorePresentationDefinitionMigrations, DataStoreStatusListEntities, DataStoreStatusListMigrations, DcqlQueryItemEntity, DidAuthConfigEntity, DigitalCredentialEntity, DigitalCredentialStore, ElectronicAddressEntity, EventLoggerStore, type FindStatusListArgs, type FindStatusListEntryArgs, type IAddStatusListArgs, type IAddStatusListEntryArgs, type IBitstringStatusListArgs, type IBitstringStatusListEntity, type IBitstringStatusListEntryEntity, type IGetStatusListArgs, type IGetStatusListEntriesArgs, type IGetStatusListEntryByCredentialIdArgs, type IGetStatusListEntryByIndexArgs, type IGetStatusListsArgs, type IOAuthStatusListArgs, type IOAuthStatusListEntity, type IRemoveStatusListArgs, type IStatusList2021Args, type IStatusList2021Entity, type IStatusListEntity, type IStatusListEntryAvailableArgs, type IStatusListEntryEntity, type IUpdateStatusListIndexArgs, IdentityEntity, IdentityMetadataItemEntity, ImageAttributesEntity, ImageDimensionsEntity, IssuanceBrandingStore, IssuerBrandingEntity, IssuerLocaleBrandingEntity, MachineStateInfoEntity, MachineStateStore, OAuthStatusListEntity, Oid4vcStateEntity, OpenIdConfigEntity, PDStore, PartyEntity, PhysicalAddressEntity, StatusList2021Entity, StatusListEntity, StatusListEntryEntity, StatusListStore, TextAttributesEntity, activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom, backgroundAttributesEntityFrom, configFrom, connectionEntityFrom, connectionFrom, contactEntityFrom, contactFrom, contactMetadataItemEntityFrom, correlationIdentifierEntityFrom, correlationIdentifierFrom, credentialBrandingEntityFrom, credentialBrandingFrom, credentialClaimsEntityFrom, credentialLocaleBrandingEntityFrom, dcqlQueryEntityItemFrom, dcqlQueryItemFrom, didAuthConfigEntityFrom, didAuthConfigFrom, digitalCredentialFrom, digitalCredentialsFrom, electronicAddressEntityFrom, electronicAddressFrom, identityEntityFrom, identityFrom, identityMetadataItemEntityFrom, imageAttributesEntityFrom, imageDimensionsEntityFrom, isDidAuthConfig, isHex, isNaturalPerson, isOpenIdConfig, isOrganization, isPresentationDefinitionEqual, issuerBrandingEntityFrom, issuerBrandingFrom, issuerLocaleBrandingEntityFrom, localeBrandingFrom, metadataItemFrom, naturalPersonEntityFrom, naturalPersonFrom, nonPersistedDigitalCredentialEntityFromAddArgs, openIdConfigEntityFrom, openIdConfigFrom, organizationEntityFrom, organizationFrom, parseRawDocument, partyEntityFrom, partyFrom, partyRelationshipEntityFrom, partyRelationshipFrom, partyTypeEntityFrom, partyTypeFrom, physicalAddressEntityFrom, physicalAddressFrom, textAttributesEntityFrom };
|
|
894
|
+
export { AuditEventEntity, BackgroundAttributesEntity, BaseConfigEntity, BaseContactEntity, BaseLocaleBrandingEntity, type BitstringStatusListArgs, BitstringStatusListEntity, type BitstringStatusListEntryCredentialStatus, BitstringStatusListEntryEntity, type BitstringStatusMessage, type BitstringStatusPurpose, ConnectionEntity, ContactMetadataItemEntity, ContactStore, CorrelationIdentifierEntity, CredentialBrandingEntity, CredentialClaimsEntity, CredentialLocaleBrandingEntity, DataStoreContactEntities, DataStoreContactMigrations, DataStoreDigitalCredentialEntities, DataStoreDigitalCredentialMigrations, DataStoreEntities, DataStoreEventLoggerEntities, DataStoreEventLoggerMigrations, DataStoreIssuanceBrandingEntities, DataStoreIssuanceBrandingMigrations, DataStoreMachineStateEntities, DataStoreMachineStateMigrations, DataStoreMigrations, DataStoreOid4vcStateEntities, DataStorePresentationDefinitionEntities, DataStorePresentationDefinitionMigrations, DataStoreStatusListEntities, DataStoreStatusListMigrations, DcqlQueryItemEntity, DidAuthConfigEntity, DigitalCredentialEntity, DigitalCredentialStore, ElectronicAddressEntity, EventLoggerStore, type FindStatusListArgs, type FindStatusListEntryArgs, type IAddStatusListArgs, type IAddStatusListEntryArgs, type IBitstringStatusListArgs, type IBitstringStatusListEntity, type IBitstringStatusListEntryEntity, type IGetStatusListArgs, type IGetStatusListEntriesArgs, type IGetStatusListEntryByCredentialIdArgs, type IGetStatusListEntryByIndexArgs, type IGetStatusListsArgs, type IOAuthStatusListArgs, type IOAuthStatusListEntity, type IRemoveStatusListArgs, type IStatusList2021Args, type IStatusList2021Entity, type IStatusListEntity, type IStatusListEntryAvailableArgs, type IStatusListEntryEntity, type IUpdateStatusListIndexArgs, IdentityEntity, IdentityMetadataItemEntity, ImageAttributesEntity, ImageDimensionsEntity, IssuanceBrandingStore, IssuerBrandingEntity, IssuerLocaleBrandingEntity, MachineStateInfoEntity, MachineStateStore, OAuthStatusListEntity, Oid4vcStateEntity, OpenIdConfigEntity, PDStore, PartyEntity, PhysicalAddressEntity, StatusList2021Entity, StatusListEntity, StatusListEntryEntity, StatusListStore, TextAttributesEntity, activityEventEntityFrom, activityEventFrom, auditEventEntityFrom, auditEventFrom, backgroundAttributesEntityFrom, configFrom, connectionEntityFrom, connectionFrom, contactEntityFrom, contactFrom, contactMetadataItemEntityFrom, correlationIdentifierEntityFrom, correlationIdentifierFrom, credentialBrandingEntityFrom, credentialBrandingFrom, credentialClaimsEntityFrom, credentialLocaleBrandingEntityFrom, dcqlQueryEntityItemFrom, dcqlQueryItemFrom, didAuthConfigEntityFrom, didAuthConfigFrom, digitalCredentialFrom, digitalCredentialsFrom, electronicAddressEntityFrom, electronicAddressFrom, identityEntityFrom, identityFrom, identityMetadataItemEntityFrom, imageAttributesEntityFrom, imageDimensionsEntityFrom, isDidAuthConfig, isHex, isNaturalPerson, isOpenIdConfig, isOrganization, isPresentationDefinitionEqual, issuerBrandingEntityFrom, issuerBrandingFrom, issuerLocaleBrandingEntityFrom, localeBrandingFrom, metadataItemFrom, naturalPersonEntityFrom, naturalPersonFrom, nonPersistedDigitalCredentialEntityFromAddArgs, normalizeNullableFields, openIdConfigEntityFrom, openIdConfigFrom, organizationEntityFrom, organizationFrom, parseRawDocument, partyEntityFrom, partyFrom, partyRelationshipEntityFrom, partyRelationshipFrom, partyTypeEntityFrom, partyTypeFrom, persistedDigitalCredentialEntityFromStateArgs, persistedDigitalCredentialEntityFromUpdateArgs, physicalAddressEntityFrom, physicalAddressFrom, textAttributesEntityFrom };
|
package/dist/index.js
CHANGED
|
@@ -5314,17 +5314,14 @@ var DigitalCredentialStore = class extends AbstractDigitalCredentialStore {
|
|
|
5314
5314
|
if (!credential) {
|
|
5315
5315
|
return Promise.reject(Error(`No credential found for args: ${JSON.stringify(whereClause)}`));
|
|
5316
5316
|
}
|
|
5317
|
-
const
|
|
5318
|
-
const
|
|
5319
|
-
|
|
5320
|
-
|
|
5321
|
-
|
|
5322
|
-
|
|
5323
|
-
|
|
5324
|
-
|
|
5325
|
-
};
|
|
5326
|
-
debug2("Updating credential", updatedCredential);
|
|
5327
|
-
const updatedResult = await dcRepo.save(updatedCredential, {
|
|
5317
|
+
const updates = Object.fromEntries(Object.entries(args).filter(([key]) => key !== "id" && key !== "hash"));
|
|
5318
|
+
const entityToSave = persistedDigitalCredentialEntityFromUpdateArgs(credential, updates);
|
|
5319
|
+
const validationError = this.assertValidDigitalCredential(entityToSave);
|
|
5320
|
+
if (validationError) {
|
|
5321
|
+
return Promise.reject(validationError);
|
|
5322
|
+
}
|
|
5323
|
+
debug2("Updating credential", entityToSave);
|
|
5324
|
+
const updatedResult = await dcRepo.save(entityToSave, {
|
|
5328
5325
|
transaction: true
|
|
5329
5326
|
});
|
|
5330
5327
|
return digitalCredentialFrom(updatedResult);
|
|
@@ -5399,20 +5396,9 @@ var DigitalCredentialStore = class extends AbstractDigitalCredentialStore {
|
|
|
5399
5396
|
if (!credential) {
|
|
5400
5397
|
return Promise.reject(Error(`No credential found for args: ${JSON.stringify(whereClause)}`));
|
|
5401
5398
|
}
|
|
5402
|
-
const
|
|
5403
|
-
|
|
5404
|
-
|
|
5405
|
-
verifiedAt: args.verifiedAt
|
|
5406
|
-
},
|
|
5407
|
-
...args.verifiedState === CredentialStateType2.REVOKED && {
|
|
5408
|
-
revokedAt: args.revokedAt
|
|
5409
|
-
},
|
|
5410
|
-
identifierMethod: credential.identifierMethod,
|
|
5411
|
-
lastUpdatedAt: /* @__PURE__ */ new Date(),
|
|
5412
|
-
verifiedState: args.verifiedState
|
|
5413
|
-
};
|
|
5414
|
-
debug2("Updating credential", credential);
|
|
5415
|
-
const updatedResult = await credentialRepository.save(updatedCredential, {
|
|
5399
|
+
const entityToSave = persistedDigitalCredentialEntityFromStateArgs(credential, args);
|
|
5400
|
+
debug2("Updating credential state", entityToSave);
|
|
5401
|
+
const updatedResult = await credentialRepository.save(entityToSave, {
|
|
5416
5402
|
transaction: true
|
|
5417
5403
|
});
|
|
5418
5404
|
return digitalCredentialFrom(updatedResult);
|
|
@@ -9332,7 +9318,7 @@ var DataStoreMigrations = [
|
|
|
9332
9318
|
|
|
9333
9319
|
// src/utils/digitalCredential/MappingUtils.ts
|
|
9334
9320
|
import { defaultHasher } from "@sphereon/ssi-sdk.core";
|
|
9335
|
-
import { CredentialDocumentFormat as CredentialDocumentFormat2, DocumentType as DocumentType2, RegulationType as RegulationType2 } from "@sphereon/ssi-sdk.data-store-types";
|
|
9321
|
+
import { CredentialDocumentFormat as CredentialDocumentFormat2, CredentialStateType as CredentialStateType3, DocumentType as DocumentType2, RegulationType as RegulationType2 } from "@sphereon/ssi-sdk.data-store-types";
|
|
9336
9322
|
import { CredentialMapper, DocumentFormat, ObjectUtils } from "@sphereon/ssi-types";
|
|
9337
9323
|
import { computeEntryHash } from "@veramo/utils";
|
|
9338
9324
|
function determineDocumentType(raw) {
|
|
@@ -9383,6 +9369,18 @@ function determineCredentialDocumentFormat(documentFormat) {
|
|
|
9383
9369
|
}
|
|
9384
9370
|
}
|
|
9385
9371
|
__name(determineCredentialDocumentFormat, "determineCredentialDocumentFormat");
|
|
9372
|
+
function normalizeNullableFields(obj, nullableKeys) {
|
|
9373
|
+
const normalized = {
|
|
9374
|
+
...obj
|
|
9375
|
+
};
|
|
9376
|
+
for (const key of nullableKeys) {
|
|
9377
|
+
if (normalized[key] === void 0) {
|
|
9378
|
+
normalized[key] = null;
|
|
9379
|
+
}
|
|
9380
|
+
}
|
|
9381
|
+
return normalized;
|
|
9382
|
+
}
|
|
9383
|
+
__name(normalizeNullableFields, "normalizeNullableFields");
|
|
9386
9384
|
function getValidUntil(uniformDocument) {
|
|
9387
9385
|
if ("expirationDate" in uniformDocument && uniformDocument.expirationDate) {
|
|
9388
9386
|
return new Date(uniformDocument.expirationDate);
|
|
@@ -9445,6 +9443,33 @@ var nonPersistedDigitalCredentialEntityFromAddArgs = /* @__PURE__ */ __name((add
|
|
|
9445
9443
|
lastUpdatedAt: /* @__PURE__ */ new Date()
|
|
9446
9444
|
};
|
|
9447
9445
|
}, "nonPersistedDigitalCredentialEntityFromAddArgs");
|
|
9446
|
+
var persistedDigitalCredentialEntityFromUpdateArgs = /* @__PURE__ */ __name((existingCredential, updates) => {
|
|
9447
|
+
const entity = new DigitalCredentialEntity();
|
|
9448
|
+
Object.assign(entity, existingCredential);
|
|
9449
|
+
const normalizedUpdates = normalizeNullableFields(updates, [
|
|
9450
|
+
"linkedVpId",
|
|
9451
|
+
"linkedVpFrom"
|
|
9452
|
+
]);
|
|
9453
|
+
Object.assign(entity, normalizedUpdates);
|
|
9454
|
+
entity.id = existingCredential.id;
|
|
9455
|
+
entity.hash = existingCredential.hash;
|
|
9456
|
+
entity.createdAt = existingCredential.createdAt;
|
|
9457
|
+
entity.lastUpdatedAt = /* @__PURE__ */ new Date();
|
|
9458
|
+
return entity;
|
|
9459
|
+
}, "persistedDigitalCredentialEntityFromUpdateArgs");
|
|
9460
|
+
var persistedDigitalCredentialEntityFromStateArgs = /* @__PURE__ */ __name((existingCredential, args) => {
|
|
9461
|
+
const entity = new DigitalCredentialEntity();
|
|
9462
|
+
Object.assign(entity, existingCredential);
|
|
9463
|
+
entity.verifiedState = args.verifiedState;
|
|
9464
|
+
entity.lastUpdatedAt = /* @__PURE__ */ new Date();
|
|
9465
|
+
if (args.verifiedState === CredentialStateType3.REVOKED && args.revokedAt) {
|
|
9466
|
+
entity.revokedAt = args.revokedAt;
|
|
9467
|
+
}
|
|
9468
|
+
if (args.verifiedState !== CredentialStateType3.REVOKED && args.verifiedAt) {
|
|
9469
|
+
entity.verifiedAt = args.verifiedAt;
|
|
9470
|
+
}
|
|
9471
|
+
return entity;
|
|
9472
|
+
}, "persistedDigitalCredentialEntityFromStateArgs");
|
|
9448
9473
|
var digitalCredentialFrom = /* @__PURE__ */ __name((credentialEntity) => {
|
|
9449
9474
|
const result = {
|
|
9450
9475
|
...credentialEntity
|
|
@@ -9621,6 +9646,7 @@ export {
|
|
|
9621
9646
|
naturalPersonEntityFrom,
|
|
9622
9647
|
naturalPersonFrom,
|
|
9623
9648
|
nonPersistedDigitalCredentialEntityFromAddArgs,
|
|
9649
|
+
normalizeNullableFields,
|
|
9624
9650
|
openIdConfigEntityFrom,
|
|
9625
9651
|
openIdConfigFrom,
|
|
9626
9652
|
organizationEntityFrom,
|
|
@@ -9632,6 +9658,8 @@ export {
|
|
|
9632
9658
|
partyRelationshipFrom,
|
|
9633
9659
|
partyTypeEntityFrom,
|
|
9634
9660
|
partyTypeFrom,
|
|
9661
|
+
persistedDigitalCredentialEntityFromStateArgs,
|
|
9662
|
+
persistedDigitalCredentialEntityFromUpdateArgs,
|
|
9635
9663
|
physicalAddressEntityFrom,
|
|
9636
9664
|
physicalAddressFrom,
|
|
9637
9665
|
textAttributesEntityFrom
|