Replace MSC3244 support with in-client room version checking (#9018)
* Replace MSC3244 support with in-client room version checking * Fix irrelevant ternary * It helps to use Jest correctly
This commit is contained in:
parent
bd8949872d
commit
644b841591
7 changed files with 120 additions and 37 deletions
|
@ -35,6 +35,7 @@ import dis from "../../../dispatcher/dispatcher";
|
|||
import { ROOM_SECURITY_TAB } from "../dialogs/RoomSettingsDialog";
|
||||
import { Action } from "../../../dispatcher/actions";
|
||||
import { ViewRoomPayload } from "../../../dispatcher/payloads/ViewRoomPayload";
|
||||
import { doesRoomVersionSupport, PreferredRoomVersions } from "../../../utils/PreferredRoomVersions";
|
||||
|
||||
interface IProps {
|
||||
room: Room;
|
||||
|
@ -48,11 +49,9 @@ interface IProps {
|
|||
const JoinRuleSettings = ({ room, promptUpgrade, aliasWarning, onError, beforeChange, closeSettingsFn }: IProps) => {
|
||||
const cli = room.client;
|
||||
|
||||
const restrictedRoomCapabilities = SpaceStore.instance.restrictedJoinRuleSupport;
|
||||
const roomSupportsRestricted = Array.isArray(restrictedRoomCapabilities?.support)
|
||||
&& restrictedRoomCapabilities.support.includes(room.getVersion());
|
||||
const roomSupportsRestricted = doesRoomVersionSupport(room.getVersion(), PreferredRoomVersions.RestrictedRooms);
|
||||
const preferredRestrictionVersion = !roomSupportsRestricted && promptUpgrade
|
||||
? restrictedRoomCapabilities?.preferred
|
||||
? PreferredRoomVersions.RestrictedRooms
|
||||
: undefined;
|
||||
|
||||
const disabled = !room.currentState.mayClientSendStateEvent(EventType.RoomJoinRules, cli);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue