diff --git a/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts b/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts index 32b2b619a18f502f25228540eaaf1620990b9ff3..d250a3eb3a81aeeae365fcd5e00062d13f7b0f98 100644 --- a/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts +++ b/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts @@ -1,6 +1,6 @@ -import type { AnonCredsCredentialDefinition } from '@aries-framework/anoncreds'; import type { IndyVdrRegisterCredentialDefinitionOptions } from '@aries-framework/indy-vdr'; import type { + CredentialDefinitionWithId, EventAnonCredsCredentialDefinitionsGetAllInput, EventAnonCredsCredentialDefinitionsGetByIdInput, EventAnonCredsCredentialDefinitionsRegisterInput, @@ -21,11 +21,11 @@ export class CredentialDefinitionsService { public async getAll({ tenantId, }: EventAnonCredsCredentialDefinitionsGetAllInput): Promise< - Array<AnonCredsCredentialDefinition> + Array<CredentialDefinitionWithId> > { return this.withTenantService.invoke(tenantId, async (t) => (await t.modules.anoncreds.getCreatedCredentialDefinitions({})).map( - (r) => r.credentialDefinition, + ({ credentialDefinitionId, credentialDefinition }) => ({ credentialDefinitionId, ...credentialDefinition }), ), ); } @@ -33,13 +33,13 @@ export class CredentialDefinitionsService { public async getById({ tenantId, credentialDefinitionId, - }: EventAnonCredsCredentialDefinitionsGetByIdInput): Promise<AnonCredsCredentialDefinition | null> { + }: EventAnonCredsCredentialDefinitionsGetByIdInput): Promise<CredentialDefinitionWithId | null> { return this.withTenantService.invoke(tenantId, async (t) => { const { credentialDefinition } = await t.modules.anoncreds.getCredentialDefinition( credentialDefinitionId, ); - return credentialDefinition ?? null; + return credentialDefinition ? { credentialDefinitionId, ...credentialDefinition } : null; }); } @@ -48,9 +48,7 @@ export class CredentialDefinitionsService { schemaId, issuerDid, tag, - }: EventAnonCredsCredentialDefinitionsRegisterInput): Promise< - AnonCredsCredentialDefinition & { credentialDefinitionId: string } - > { + }: EventAnonCredsCredentialDefinitionsRegisterInput): Promise<CredentialDefinitionWithId> { return this.withTenantService.invoke(tenantId, async (t) => { const { credentialDefinitionState } = await t.modules.anoncreds.registerCredentialDefinition<IndyVdrRegisterCredentialDefinitionOptions>(