mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 21:32:34 +00:00
Split code into several files.
This commit is contained in:
+12
@@ -0,0 +1,12 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.element.android.features.messages.impl.threads.list
|
||||||
|
|
||||||
|
sealed interface ThreadsListEvent {
|
||||||
|
data object Paginate : ThreadsListEvent
|
||||||
|
}
|
||||||
-17
@@ -20,13 +20,10 @@ import io.element.android.features.messages.impl.utils.messagesummary.MessageSum
|
|||||||
import io.element.android.libraries.architecture.Presenter
|
import io.element.android.libraries.architecture.Presenter
|
||||||
import io.element.android.libraries.dateformatter.api.DateFormatter
|
import io.element.android.libraries.dateformatter.api.DateFormatter
|
||||||
import io.element.android.libraries.dateformatter.api.DateFormatterMode
|
import io.element.android.libraries.dateformatter.api.DateFormatterMode
|
||||||
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
|
||||||
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
||||||
import io.element.android.libraries.matrix.api.core.RoomId
|
|
||||||
import io.element.android.libraries.matrix.api.room.JoinedRoom
|
import io.element.android.libraries.matrix.api.room.JoinedRoom
|
||||||
import io.element.android.libraries.matrix.api.room.threads.ThreadListPaginationStatus
|
import io.element.android.libraries.matrix.api.room.threads.ThreadListPaginationStatus
|
||||||
import io.element.android.libraries.matrix.ui.model.getAvatarData
|
import io.element.android.libraries.matrix.ui.model.getAvatarData
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
|
||||||
import kotlinx.collections.immutable.persistentListOf
|
import kotlinx.collections.immutable.persistentListOf
|
||||||
import kotlinx.collections.immutable.toImmutableList
|
import kotlinx.collections.immutable.toImmutableList
|
||||||
import kotlinx.coroutines.flow.onStart
|
import kotlinx.coroutines.flow.onStart
|
||||||
@@ -129,17 +126,3 @@ class ThreadsListPresenter(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
data class ThreadsListState(
|
|
||||||
val roomId: RoomId,
|
|
||||||
val roomName: String,
|
|
||||||
val roomAvatarUrl: String?,
|
|
||||||
val isRoomTombstoned: Boolean,
|
|
||||||
val heroes: ImmutableList<AvatarData>,
|
|
||||||
val threads: ImmutableList<ThreadListRowItem>,
|
|
||||||
val eventSink: (ThreadsListEvent) -> Unit,
|
|
||||||
)
|
|
||||||
|
|
||||||
sealed interface ThreadsListEvent {
|
|
||||||
data object Paginate : ThreadsListEvent
|
|
||||||
}
|
|
||||||
|
|||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.element.android.features.messages.impl.threads.list
|
||||||
|
|
||||||
|
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
||||||
|
import io.element.android.libraries.matrix.api.core.RoomId
|
||||||
|
import kotlinx.collections.immutable.ImmutableList
|
||||||
|
|
||||||
|
data class ThreadsListState(
|
||||||
|
val roomId: RoomId,
|
||||||
|
val roomName: String,
|
||||||
|
val roomAvatarUrl: String?,
|
||||||
|
val isRoomTombstoned: Boolean,
|
||||||
|
val heroes: ImmutableList<AvatarData>,
|
||||||
|
val threads: ImmutableList<ThreadListRowItem>,
|
||||||
|
val eventSink: (ThreadsListEvent) -> Unit,
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user