diff --git a/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts b/apps/ssi-abstraction/src/agent/credentialDefinitions/credentialDefinitions.service.ts index 53acf4eee56d53e002e4c85e7600e32437862478..f03939ce7db535a955d5061364450e474aceeea9 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, @@ -17,11 +17,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 }), ), ); } @@ -29,13 +29,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; }); } @@ -44,9 +44,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>(