update room bold

This commit is contained in:
Peter Maquiran
2024-09-17 18:05:47 +01:00
parent 263f593260
commit eeaade9aab
6 changed files with 58 additions and 11 deletions
@@ -1,8 +1,24 @@
import { HubConnection } from "@microsoft/signalr";
import { Result } from "neverthrow";
import { Observable } from "rxjs";
import { BehaviorSubject, Observable } from "rxjs";
import { ListenToDeleteRoomInput, RoomSocketOutPutDTO } from "src/app/module/chat/data/repository/room/room-socket-repository.service";
import { CreateRoomInputDTO } from "src/app/module/chat/domain/use-case/room/room-create-use-case.service";
import { z } from "zod";
const SocketRoomUpdateOutPutSchema = z.object({
id: z.string().uuid(),
roomName: z.string().min(1),
createdBy: z.string().nullable(), // Allowing null for createdBy
createdAt: z.string().datetime(),
expirationDate: z.string().nullable().optional(), // Allowing null and making it optional
roomType: z.number(),
user1: z.string().nullable().optional(), // Allowing null for user1
user2: z.string().nullable().optional(), // Allowing null for user2
messages: z.array(z.any()), // Allowing an array of any type for messages
});
export type SocketRoomUpdateOutPut = z.infer<typeof SocketRoomUpdateOutPutSchema>
export abstract class IRoomSocketRepository {
@@ -11,6 +27,7 @@ export abstract class IRoomSocketRepository {
abstract listenToCreateRoom(): Observable<any>
abstract listenToDeleteRoom(): Observable<ListenToDeleteRoomInput>
abstract listenToRoomUpdate(): Observable<{method: string, data: SocketRoomUpdateOutPut}>
}