Fix missing creators support using via (#2431)

* add additional_creators in IRoomCreateContent type

* use creators in getViaServers

* consider creators in guessing perfect parent
This commit is contained in:
Ajay Bura
2025-08-16 17:00:02 +05:30
committed by GitHub
parent 752a19a4e7
commit 1ad7fe8deb
3 changed files with 49 additions and 8 deletions

View File

@@ -1,11 +1,19 @@
import { Room } from 'matrix-js-sdk';
import { IPowerLevels } from '../hooks/usePowerLevels';
import { getMxIdServer } from '../utils/matrix';
import { StateEvent } from '../../types/matrix/room';
import { creatorsSupported, getMxIdServer } from '../utils/matrix';
import { IRoomCreateContent, StateEvent } from '../../types/matrix/room';
import { getStateEvent } from '../utils/room';
export const getViaServers = (room: Room): string[] => {
const getHighestPowerUserId = (): string | undefined => {
const creatorEvent = getStateEvent(room, StateEvent.RoomCreate);
if (
creatorEvent &&
creatorsSupported(creatorEvent.getContent<IRoomCreateContent>().room_version)
) {
return creatorEvent.getSender();
}
const powerLevels = getStateEvent(room, StateEvent.RoomPowerLevels)?.getContent<IPowerLevels>();
if (!powerLevels) return undefined;