import { IImageInfo, IThumbnailContent, IVideoInfo } from '../../types/matrix/common';
import { AccountDataEvent } from '../../types/matrix/accountData';
import { getStateEvent } from './room';
-import { StateEvent } from '../../types/matrix/room';
+import { Membership, StateEvent } from '../../types/matrix/room';
const DOMAIN_REGEX = /\b(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}\b/;
export const getDMRoomFor = (mx: MatrixClient, userId: string): Room | undefined => {
const dmLikeRooms = mx
.getRooms()
- .filter((room) => room.hasEncryptionStateEvent() && room.getMembers().length <= 2);
+ .filter(
+ (room) =>
+ room.getMyMembership() === Membership.Join &&
+ room.hasEncryptionStateEvent() &&
+ room.getMembers().length <= 2
+ );
return dmLikeRooms.find((room) => room.getMember(userId));
};