knock request : expose JoinRule from sdk
This commit is contained in:
parent
759cd0f0e0
commit
5715f6054a
9 changed files with 91 additions and 0 deletions
|
|
@ -12,6 +12,7 @@ import io.element.android.libraries.matrix.api.core.EventId
|
|||
import io.element.android.libraries.matrix.api.core.RoomAlias
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.api.room.join.JoinRule
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.ImmutableMap
|
||||
|
|
@ -27,6 +28,7 @@ data class MatrixRoomInfo(
|
|||
val avatarUrl: String?,
|
||||
val isDirect: Boolean,
|
||||
val isPublic: Boolean,
|
||||
val joinRule: JoinRule?,
|
||||
val isSpace: Boolean,
|
||||
val isTombstoned: Boolean,
|
||||
val isFavorite: Boolean,
|
||||
|
|
|
|||
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* Copyright 2024 New Vector Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.api.room.join
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
|
||||
sealed interface AllowRule {
|
||||
data class RoomMembership(val roomId: RoomId) : AllowRule
|
||||
data class Custom(val json: String) : AllowRule
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
/*
|
||||
* Copyright 2024 New Vector Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.api.room.join
|
||||
|
||||
sealed interface JoinRule {
|
||||
data object Public : JoinRule
|
||||
data object Private: JoinRule
|
||||
data object Knock: JoinRule
|
||||
data object Invite: JoinRule
|
||||
data class Restricted(val rules: List<AllowRule>): JoinRule
|
||||
data class KnockRestricted(val rules: List<AllowRule>): JoinRule
|
||||
data class Custom(val value: String): JoinRule
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue