diff options
author | Rory& <root@rory.gay> | 2024-05-30 09:31:29 +0000 |
---|---|---|
committer | Rory& <root@rory.gay> | 2024-05-30 09:31:29 +0000 |
commit | 08f5483df2c01eba7c764cdaec94fca71e4976b8 (patch) | |
tree | 1e521bf7bae7bdf07fa8e87505b2fa95d21a196e /LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs | |
parent | Rename StateEvent to LegacyMatrixEvent (diff) | |
download | LibMatrix-08f5483df2c01eba7c764cdaec94fca71e4976b8.tar.xz |
Clarify LegacyEvent types
Diffstat (limited to 'LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs')
-rw-r--r-- | LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs b/LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs deleted file mode 100644 index 349c8a7..0000000 --- a/LibMatrix.EventTypes/Spec/State/RoomInfo/RoomJoinRulesEventContent.cs +++ /dev/null @@ -1,60 +0,0 @@ -using System.Text.Json.Serialization; - -namespace LibMatrix.EventTypes.Spec.State; - -[MatrixEvent(EventName = EventId)] -public class RoomJoinRulesEventContent : EventContent { - public const string EventId = "m.room.join_rules"; - - /// <summary> - /// one of ["public", "invite", "knock", "restricted", "knock_restricted"] - /// "private" is reserved without implementation! - /// unknown values are treated as "private" - /// </summary> - [JsonPropertyName("join_rule")] - public string JoinRuleValue { get; set; } - - [JsonIgnore] - public JoinRules JoinRule { - get => JoinRuleValue switch { - "public" => JoinRules.Public, - "invite" => JoinRules.Invite, - "knock" => JoinRules.Knock, - "restricted" => JoinRules.Restricted, - "knock_restricted" => JoinRules.KnockRestricted, - _ => JoinRules.Private - }; - set => JoinRuleValue = value switch { - JoinRules.Public => "public", - JoinRules.Invite => "invite", - JoinRules.Knock => "knock", - JoinRules.Restricted => "restricted", - JoinRules.KnockRestricted => "knock_restricted", - _ => "private" - }; - } - - [JsonPropertyName("allow")] - public List<AllowEntry>? Allow { get; set; } - - public class AllowEntry { - [JsonPropertyName("type")] - public required string Type { get; set; } - - [JsonPropertyName("room_id")] - public required string RoomId { get; set; } - - public static class Types { - public const string RoomMembership = "m.room_membership"; - } - } - - public enum JoinRules { - Public, - Invite, - Knock, - Restricted, - KnockRestricted, - Private // reserved without implementation! - } -} \ No newline at end of file |