Files
doneit-web/src/app/module/chat/domain/use-case/member/member-admin-use-case.service.ts
T
2024-08-29 12:13:15 +01:00

30 lines
755 B
TypeScript

import { Injectable } from '@angular/core';
import { z } from "zod";
import { ValidateSchema } from 'src/app/services/decorators/validate-schema.decorator';
import { IMemberRemoteRepository } from 'src/app/core/chat/repository/member/member-remote-repository';
// Define the schema for the entire response
const MemberSetAdminDTOSchema = z.object({
roomId: z.string(),
memberId: z.string()
});
export type MemberSetAdminDTO = z.infer<typeof MemberSetAdminDTOSchema>
@Injectable({
providedIn: 'root'
})
export class MemberAdminUseCaseService {
constructor(
public repository: IMemberRemoteRepository
) { }
@ValidateSchema(MemberSetAdminDTOSchema)
execute(input: MemberSetAdminDTO) {
return this.repository.setAmin(input)
}
}