From 40e814d48af7d3829ce6642f656371b80e9e1ac6 Mon Sep 17 00:00:00 2001 From: sovrgn <boyan.tsolov@vereign.com> Date: Fri, 13 Oct 2023 13:38:25 +0300 Subject: [PATCH] revert to: e7c360d385e210eef344ab55c2695be5d30a1b54 --- .../src/app/app.controller.ts | 4 ++-- .../app/managers/attestation.controller.ts | 11 +++++---- .../src/app/managers/connection.controller.ts | 8 +++---- .../src/app/managers/proof.controller.ts | 16 ++++++------- .../src/askar-nats/event.handler.service.ts | 24 ++++++++++--------- libs/askar/src/askar-rest/rest.controller.ts | 5 ++-- .../src/dtos/requests/connection.req.dto.ts | 9 +++++++ .../{id.req.dto.ts => creddef.req.dto.ts} | 4 ++-- .../src/dtos/requests/credential.req.dto.ts | 9 +++++++ libs/dtos/src/dtos/requests/proof.req.dto.ts | 2 ++ libs/dtos/src/dtos/requests/schema.req.dto.ts | 9 +++++++ libs/dtos/src/events/dtoToEventTransformer.ts | 6 +++-- libs/dtos/src/index.ts | 6 ++++- 13 files changed, 75 insertions(+), 38 deletions(-) create mode 100644 libs/dtos/src/dtos/requests/connection.req.dto.ts rename libs/dtos/src/dtos/requests/{id.req.dto.ts => creddef.req.dto.ts} (58%) create mode 100644 libs/dtos/src/dtos/requests/credential.req.dto.ts create mode 100644 libs/dtos/src/dtos/requests/schema.req.dto.ts diff --git a/apps/connection-manager/src/app/app.controller.ts b/apps/connection-manager/src/app/app.controller.ts index 98d111dc..4eefca2f 100644 --- a/apps/connection-manager/src/app/app.controller.ts +++ b/apps/connection-manager/src/app/app.controller.ts @@ -7,8 +7,8 @@ import { ConnectionEvent, CreateInvitationResponseDto, GatewayAcceptedResponseDto, + ConnectionReqDto, makeEvent, - IdReqDto, } from "@ocm-engine/dtos"; @Controller() @@ -21,7 +21,7 @@ export class AppController { async create( @Body() payload: { - data: null | CreateInvitationResponseDto | IdReqDto; + data: null | CreateInvitationResponseDto | ConnectionReqDto; type: ConnectionEvent; source: string; }, diff --git a/apps/gateway/src/app/managers/attestation.controller.ts b/apps/gateway/src/app/managers/attestation.controller.ts index ce4577f7..a51fdf1b 100644 --- a/apps/gateway/src/app/managers/attestation.controller.ts +++ b/apps/gateway/src/app/managers/attestation.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Get, Param, Post, UseFilters } from "@nestjs/common"; import { AllExceptionsHandler } from "../exception.handler"; import { AttestationManagerClient } from "@ocm-engine/clients"; import { + CredentialReqDto, CreateCredentialDefinitionRequsetDto, CreateSchemaRequestDto, CRED_DEF_CREATE, @@ -10,13 +11,13 @@ import { CRED_OFFER_ACCEPT, CRED_OFFER_LIST, GatewayAcceptedResponseDto, + SchemaReqDto, IssueCredentialRequestDto, MakeBasicMessageRequestDto, MESSAGE_MAKE, SCHEMA_CREATE, SCHEMA_GET, SCHEMA_LIST, - IdReqDto, } from "@ocm-engine/dtos"; import { ApiBadRequestResponse, @@ -164,8 +165,8 @@ export class AttestationController { "Method will fetch specific schema or return null. The id of the response will be matched when you receive event from the websocket", tags: ["Schema"], }) - async getSchemaById(@Body() schemaRequestDto: IdReqDto) { - return this.amClient.sendPayload<IdReqDto>({ + async getSchemaById(@Body() schemaRequestDto: SchemaReqDto) { + return this.amClient.sendPayload<SchemaReqDto>({ pattern: "schemas", payload: { source: "/schemas-by-id", @@ -503,8 +504,8 @@ export class AttestationController { tags: ["Credentials Offers"], }) acceptCredential(@Param("credential_record_id") credentialRecordId: string) { - const data = new IdReqDto(); - data.id = credentialRecordId; + const data = new CredentialReqDto(); + data.credentialRecordId = credentialRecordId; return this.amClient.sendPayload({ pattern: "credentials", payload: { diff --git a/apps/gateway/src/app/managers/connection.controller.ts b/apps/gateway/src/app/managers/connection.controller.ts index 7fd5db4f..aa29861f 100644 --- a/apps/gateway/src/app/managers/connection.controller.ts +++ b/apps/gateway/src/app/managers/connection.controller.ts @@ -15,7 +15,7 @@ import { CONNECTION_LIST, CreateInvitationResponseDto, GatewayAcceptedResponseDto, - IdReqDto, + ConnectionReqDto, } from "@ocm-engine/dtos"; import { AllExceptionsHandler } from "../exception.handler"; import { @@ -238,10 +238,10 @@ export class ConnectionController { tags: ["Connections"], }) async getById(@Param("id") id: string) { - const request = new IdReqDto(); - request.id = id; + const request = new ConnectionReqDto(); + request.connectionId = id; - return this.cmClient.sendPayload<IdReqDto>({ + return this.cmClient.sendPayload<ConnectionReqDto>({ pattern: "connections", payload: { source: "/connections/:id", diff --git a/apps/gateway/src/app/managers/proof.controller.ts b/apps/gateway/src/app/managers/proof.controller.ts index 1bf74b44..c90bad7c 100644 --- a/apps/gateway/src/app/managers/proof.controller.ts +++ b/apps/gateway/src/app/managers/proof.controller.ts @@ -2,13 +2,13 @@ import { Body, Controller, Get, Param, Post, UseFilters } from "@nestjs/common"; import { ProofReqDto, GatewayAcceptedResponseDto, + SchemaReqDto, IssueProofRequestDto, PROOF_ACCEPT, PROOF_DECLINE, PROOF_GET, PROOF_ISSUE, PROOF_LIST, - IdReqDto, } from "@ocm-engine/dtos"; import { AllExceptionsHandler } from "../exception.handler"; import { ProofManagerClient } from "@ocm-engine/clients"; @@ -60,7 +60,7 @@ export class ProofController { tags: ["Credentials Proof"], }) proofs() { - return this.pmClient.sendPayload<IdReqDto>({ + return this.pmClient.sendPayload<SchemaReqDto>({ pattern: "proofs", payload: { source: "/credential/proofs", @@ -106,10 +106,10 @@ export class ProofController { tags: ["Credentials Proof"], }) getProofById(@Param("proof_record_id") proofRecordId: string) { - const data = new IdReqDto(); - data.id = proofRecordId; + const data = new ProofReqDto(); + data.proofRecordId = proofRecordId; - return this.pmClient.sendPayload<IdReqDto>({ + return this.pmClient.sendPayload<ProofReqDto>({ pattern: "proofs", payload: { source: "/credentials/proof/:proof_record_id", @@ -275,10 +275,10 @@ export class ProofController { tags: ["Credentials Proof"], }) declineProofRequest(@Param("proof_record_id") proofRecordId: string) { - const data = new IdReqDto(); - data.id = proofRecordId; + const data = new ProofReqDto(); + data.proofRecordId = proofRecordId; - return this.pmClient.sendPayload<IdReqDto>({ + return this.pmClient.sendPayload<ProofReqDto>({ pattern: "proofs", payload: { source: "/credentials/proof/:proof_record_id/decline", diff --git a/libs/askar/src/askar-nats/event.handler.service.ts b/libs/askar/src/askar-nats/event.handler.service.ts index ee08bcbb..2c5b4409 100644 --- a/libs/askar/src/askar-nats/event.handler.service.ts +++ b/libs/askar/src/askar-nats/event.handler.service.ts @@ -1,6 +1,7 @@ import { Injectable, Logger } from "@nestjs/common"; import { AgentService } from "../askar/agent.service"; import { + CredentialReqDto, ProofReqDto, CloudEventDto, CONNECTION_ACCEPT, @@ -15,6 +16,8 @@ import { CRED_LIST, CRED_OFFER_ACCEPT, CRED_OFFER_LIST, + ConnectionReqDto, + SchemaReqDto, IssueCredentialRequestDto, IssueProofRequestDto, MakeBasicMessageRequestDto, @@ -27,7 +30,6 @@ import { SCHEMA_GET, SCHEMA_LIST, PROOF_DECLINE, - IdReqDto, } from "@ocm-engine/dtos"; import asyncRetry from "async-retry"; @@ -56,8 +58,8 @@ export class EventHandlerService { break; case CONNECTION_GET: - dto = event.data as IdReqDto; - data = await this.agentService.getConnectionById(dto.id); + dto = event.data as ConnectionReqDto; + data = await this.agentService.getConnectionById(dto.connectionId); break; case SCHEMA_CREATE: @@ -69,8 +71,8 @@ export class EventHandlerService { break; case SCHEMA_GET: - dto = event.data as IdReqDto; - data = await this.agentService.getSchemaById(dto.id); + dto = event.data as SchemaReqDto; + data = await this.agentService.getSchemaById(dto.schemaId); break; case CRED_DEF_CREATE: data = await this.agentService.createCredentialDefinition( @@ -93,9 +95,9 @@ export class EventHandlerService { break; case CRED_OFFER_ACCEPT: - dto = event.data as IdReqDto; + dto = event.data as CredentialReqDto; data = await this.agentService.acceptCredential( - dto.id, + dto.credentialRecordId, ); break; @@ -109,8 +111,8 @@ export class EventHandlerService { break; case PROOF_GET: - dto = event.data as IdReqDto; - data = await this.agentService.getProofById(dto.id); + dto = event.data as ProofReqDto; + data = await this.agentService.getProofById(dto.proofRecordId); break; case PROOF_ACCEPT: @@ -120,9 +122,9 @@ export class EventHandlerService { break; case PROOF_DECLINE: - dto = event.data as IdReqDto; + dto = event.data as ProofReqDto; data = await this.agentService.declineProofRequest( - dto.id, + dto.proofRecordId, ); break; diff --git a/libs/askar/src/askar-rest/rest.controller.ts b/libs/askar/src/askar-rest/rest.controller.ts index d6e20858..f8ca05f4 100644 --- a/libs/askar/src/askar-rest/rest.controller.ts +++ b/libs/askar/src/askar-rest/rest.controller.ts @@ -9,7 +9,6 @@ import { CreateSchemaRequestDto, MakeBasicMessageRequestDto, ProofReqDto, - IdReqDto, } from "@ocm-engine/dtos"; import { AllExceptionsHandler } from "./exception.handler"; @@ -80,8 +79,8 @@ export class RestController { } @Get("credential/proof/:proof_record_id") - getProof(@Param("proof_record_id") data: IdReqDto) { - return this.agentService.getProofById(data.id); + getProof(@Param("proof_record_id") data: ProofReqDto) { + return this.agentService.getProofById(data.proofRecordId); } @Post(`/credential/proof/accept`) diff --git a/libs/dtos/src/dtos/requests/connection.req.dto.ts b/libs/dtos/src/dtos/requests/connection.req.dto.ts new file mode 100644 index 00000000..cd091613 --- /dev/null +++ b/libs/dtos/src/dtos/requests/connection.req.dto.ts @@ -0,0 +1,9 @@ +import { IsNotEmpty, IsString } from "class-validator"; + + +export class ConnectionReqDto { + //@example 6464b521-005a-4379-91e0-a3692b31cafd + @IsNotEmpty() + @IsString() + connectionId: string; +} diff --git a/libs/dtos/src/dtos/requests/id.req.dto.ts b/libs/dtos/src/dtos/requests/creddef.req.dto.ts similarity index 58% rename from libs/dtos/src/dtos/requests/id.req.dto.ts rename to libs/dtos/src/dtos/requests/creddef.req.dto.ts index 5873b7f9..681e3eec 100644 --- a/libs/dtos/src/dtos/requests/id.req.dto.ts +++ b/libs/dtos/src/dtos/requests/creddef.req.dto.ts @@ -1,8 +1,8 @@ import { IsNotEmpty, IsString } from "class-validator"; -export class IdReqDto { +export class CreddefReqDto { @IsNotEmpty() @IsString() - id: string; + credentialDefinitionId: string; } diff --git a/libs/dtos/src/dtos/requests/credential.req.dto.ts b/libs/dtos/src/dtos/requests/credential.req.dto.ts new file mode 100644 index 00000000..f94a2682 --- /dev/null +++ b/libs/dtos/src/dtos/requests/credential.req.dto.ts @@ -0,0 +1,9 @@ +import { IsNotEmpty, IsString } from "class-validator"; + + +export class CredentialReqDto { + //@example cf8395a5-9a53-4e06-8a5d-04e0fc00ca04 + @IsNotEmpty() + @IsString() + credentialRecordId: string; +} \ No newline at end of file diff --git a/libs/dtos/src/dtos/requests/proof.req.dto.ts b/libs/dtos/src/dtos/requests/proof.req.dto.ts index 33c1e769..4daf51cd 100644 --- a/libs/dtos/src/dtos/requests/proof.req.dto.ts +++ b/libs/dtos/src/dtos/requests/proof.req.dto.ts @@ -4,9 +4,11 @@ import { IsNotEmpty, IsString, ValidateIf } from "class-validator"; export class ProofReqDto { @ValidateIf((o) => o && typeof o.proofUrl === 'undefined') @IsString() + @IsNotEmpty() proofRecordId: string; @ValidateIf((o) => o && typeof o.proofRecordId === 'undefined') @IsString() + @IsNotEmpty() proofUrl: string; } \ No newline at end of file diff --git a/libs/dtos/src/dtos/requests/schema.req.dto.ts b/libs/dtos/src/dtos/requests/schema.req.dto.ts new file mode 100644 index 00000000..4bf2cb6c --- /dev/null +++ b/libs/dtos/src/dtos/requests/schema.req.dto.ts @@ -0,0 +1,9 @@ +import { IsNotEmpty, IsString } from "class-validator"; + + +export class SchemaReqDto { + //@example "did:indy:LEDNGER:SXM76gQwRnjkgoz2oBnGjd/anoncreds/v0/SCHEMA/test schema/1.0.2" + @IsNotEmpty() + @IsString() + schemaId: string; +} diff --git a/libs/dtos/src/events/dtoToEventTransformer.ts b/libs/dtos/src/events/dtoToEventTransformer.ts index 586f96f1..9d885143 100644 --- a/libs/dtos/src/events/dtoToEventTransformer.ts +++ b/libs/dtos/src/events/dtoToEventTransformer.ts @@ -11,22 +11,24 @@ import { ConnectionUnsupportedTypeError } from "../errors/connection.unsupported import { CreateCredentialDefinitionRequsetDto } from "../dtos/requests/create.credential.definition.request.dto"; import { CreateInvitationResponseDto } from "../dtos/responses/create.invitation.response.dto"; import { CreateSchemaRequestDto } from "../dtos/requests/create.schema.request.dto"; +import { ConnectionReqDto } from "../dtos/requests/connection.req.dto"; import { IssueCredentialRequestDto } from "../dtos/requests/issue.credential.request.dto"; import { IssueProofRequestDto } from "../dtos/requests/issue.proof.request.dto"; +import { CredentialReqDto } from "../dtos/requests/credential.req.dto"; import { MessageRecordDto } from "../dtos/generics/message.record.dto"; import { MakeBasicMessageRequestDto } from "../dtos/requests/make.basic.message.request.dto"; import { ProofReqDto } from "../dtos/requests/proof.req.dto"; import { ProofRecordDto } from "../dtos/generics/proof.record.dto"; -import { IdReqDto } from "../dtos/requests/id.req.dto"; export const makeEvent = (payload: { data: | null | IssueProofRequestDto + | CredentialReqDto | CreateInvitationResponseDto + | ConnectionReqDto | CreateSchemaRequestDto | ProofReqDto - | IdReqDto | CreateSchemaRequestDto | CreateCredentialDefinitionRequsetDto | ProofRecordDto diff --git a/libs/dtos/src/index.ts b/libs/dtos/src/index.ts index df61e7a5..46976e38 100644 --- a/libs/dtos/src/index.ts +++ b/libs/dtos/src/index.ts @@ -8,8 +8,12 @@ export * from "./dtos/generics/proof.record.dto"; export * from "./dtos/generics/schema.record.dto"; export * from "./dtos/generics/message.record.dto"; + +export * from "./dtos/requests/connection.req.dto"; +export * from "./dtos/requests/creddef.req.dto"; +export * from "./dtos/requests/credential.req.dto"; export * from "./dtos/requests/proof.req.dto"; -export * from "./dtos/requests/id.req.dto"; +export * from "./dtos/requests/schema.req.dto"; export * from "./dtos/requests/create.schema.request.dto"; export * from "./dtos/requests/create.credential.definition.request.dto"; -- GitLab