From 88e8f73f5316ea870eb85414d1a5b140d8e3d4ad Mon Sep 17 00:00:00 2001 From: Ajay Bura <32841439+ajbura@users.noreply.github.com> Date: Mon, 11 Aug 2025 20:38:11 +0530 Subject: [PATCH] get room creators as set only if room version support them --- src/app/hooks/useRoomCreators.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/app/hooks/useRoomCreators.ts b/src/app/hooks/useRoomCreators.ts index f4dc7569..1a635b29 100644 --- a/src/app/hooks/useRoomCreators.ts +++ b/src/app/hooks/useRoomCreators.ts @@ -2,12 +2,15 @@ import { MatrixEvent, Room } from 'matrix-js-sdk'; import { useMemo } from 'react'; import { useStateEvent } from './useStateEvent'; import { IRoomCreateContent, StateEvent } from '../../types/matrix/room'; +import { creatorsSupported } from '../utils/matrix'; -export const getRoomCreators = (createEvent: MatrixEvent): string[] => { +export const getRoomCreators = (createEvent: MatrixEvent): Set => { const createContent = createEvent.getContent(); const creators: Set = new Set(); + if (!creatorsSupported(createContent.room_version)) return creators; + if (createEvent.event.sender) { creators.add(createEvent.event.sender); } @@ -20,13 +23,16 @@ export const getRoomCreators = (createEvent: MatrixEvent): string[] => { }); } - return Array.from(creators); + return creators; }; -export const useRoomCreators = (room: Room): string[] => { +export const useRoomCreators = (room: Room): Set => { const createEvent = useStateEvent(room, StateEvent.RoomCreate); - const creators = useMemo(() => (createEvent ? getRoomCreators(createEvent) : []), [createEvent]); + const creators = useMemo( + () => (createEvent ? getRoomCreators(createEvent) : new Set()), + [createEvent] + ); return creators; };