From fc268e93e78833d70e71db5109d66b6db49b0381 Mon Sep 17 00:00:00 2001 From: bastien ollier Date: Mon, 10 Jun 2024 16:55:41 +0200 Subject: [PATCH] update merge --- src/server.ts | 55 ++++++++++++++++++++++++--------------------------- 1 file changed, 26 insertions(+), 29 deletions(-) diff --git a/src/server.ts b/src/server.ts index dd38234..f859d62 100644 --- a/src/server.ts +++ b/src/server.ts @@ -14,16 +14,14 @@ await sender.bind(`tcp://127.0.0.1:5557`); const receiver = new Pull(); await receiver.bind(`tcp://127.0.0.1:5558`); - const clients: Record = {}; const generateId = () => nanoid(32); - type Room = { sockets: WebSocket[]; updates: Update[]; doc: Text; -} +}; const rooms: Record = {}; @@ -44,26 +42,25 @@ await fastify.register(cors, { }); fastify.register(websocket); - -fastify.register(async function (fastify: Fastify) { +fastify.register(async function(fastify: Fastify) { fastify.get( "/live/:roomId", { schema: { - params: Type.Object({ - roomId: Type.String(), - }) + params: Type.Object({ + roomId: Type.String(), + }), }, - websocket: true + websocket: true, }, (socket, request) => { const { roomId } = request.params; let room = rooms[roomId]; - if(!room){ + if (!room) { room = { sockets: [], updates: [], - doc: Text.of(['']) + doc: Text.of([""]), }; rooms[roomId] = room; } @@ -100,8 +97,9 @@ fastify.register(async function (fastify: Fastify) { send(socket, requestId, { version: room.updates.length, doc: room.doc.toString() }); } }); - }); -}) + }, + ); +}); /* Route pour créer une room */ fastify.post("/live", { @@ -111,22 +109,21 @@ fastify.post("/live", { }), }, }, (request, reply) => { - const { code } = request.body; - let room, roomId; - do{ - roomId = generateId(); - room = rooms[roomId]; - } while(room); - - room = { - sockets: [], - updates: [], - doc: Text.of([code]) - }; - rooms[roomId] = room; - return roomId; - }, -); + const { code } = request.body; + let room, roomId; + do { + roomId = generateId(); + room = rooms[roomId]; + } while (room); + + room = { + sockets: [], + updates: [], + doc: Text.of([code]), + }; + rooms[roomId] = room; + return roomId; +}); fastify.post("/run", { schema: {