forked from dsutanto/bChot-android
refactoring to id.databisnis.bachot
This commit is contained in:
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.invitepeople.api"
|
||||
namespace = "id.databisnis.android.bachot.features.invitepeople.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.api
|
||||
package id.databisnis.android.bachot.features.invitepeople.api
|
||||
|
||||
interface InvitePeopleEvents {
|
||||
data object SendInvites : InvitePeopleEvents
|
||||
+4
-4
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.api
|
||||
package id.databisnis.android.bachot.features.invitepeople.api
|
||||
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.room.JoinedRoom
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.JoinedRoom
|
||||
|
||||
interface InvitePeoplePresenter : Presenter<InvitePeopleState> {
|
||||
interface Factory {
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.api
|
||||
package id.databisnis.android.bachot.features.invitepeople.api
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
+2
-2
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.api
|
||||
package id.databisnis.android.bachot.features.invitepeople.api
|
||||
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncAction
|
||||
|
||||
interface InvitePeopleState {
|
||||
val canInvite: Boolean
|
||||
+2
-2
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.api
|
||||
package id.databisnis.android.bachot.features.invitepeople.api
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncAction
|
||||
|
||||
class InvitePeopleStateProvider : PreviewParameterProvider<InvitePeopleState> {
|
||||
override val values: Sequence<InvitePeopleState>
|
||||
@@ -10,12 +10,12 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
id("kotlin-parcelize")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.invitepeople.impl"
|
||||
namespace = "id.databisnis.android.bachot.features.invitepeople.impl"
|
||||
|
||||
testOptions {
|
||||
unitTests {
|
||||
|
||||
+3
-3
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleEvents
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleEvents
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
|
||||
sealed interface DefaultInvitePeopleEvents : InvitePeopleEvents {
|
||||
data class ToggleUser(val user: MatrixUser) : DefaultInvitePeopleEvents
|
||||
+23
-23
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
@@ -21,28 +21,28 @@ import dev.zacsweers.metro.Assisted
|
||||
import dev.zacsweers.metro.AssistedFactory
|
||||
import dev.zacsweers.metro.AssistedInject
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleEvents
|
||||
import io.element.android.features.invitepeople.api.InvitePeoplePresenter
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleState
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.architecture.map
|
||||
import io.element.android.libraries.architecture.runCatchingUpdatingState
|
||||
import io.element.android.libraries.architecture.runUpdatingState
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import io.element.android.libraries.di.SessionScope
|
||||
import io.element.android.libraries.di.annotations.SessionCoroutineScope
|
||||
import io.element.android.libraries.matrix.api.MatrixClient
|
||||
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.RoomMember
|
||||
import io.element.android.libraries.matrix.api.room.RoomMembershipState
|
||||
import io.element.android.libraries.matrix.api.room.filterMembers
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import io.element.android.libraries.usersearch.api.UserRepository
|
||||
import io.element.android.services.apperror.api.AppErrorStateService
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleEvents
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeoplePresenter
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleState
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncAction
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.architecture.map
|
||||
import id.databisnis.android.bachot.libraries.architecture.runCatchingUpdatingState
|
||||
import id.databisnis.android.bachot.libraries.architecture.runUpdatingState
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import id.databisnis.android.bachot.libraries.di.SessionScope
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.SessionCoroutineScope
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClient
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.JoinedRoom
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.RoomMember
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.RoomMembershipState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.filterMembers
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.libraries.usersearch.api.UserRepository
|
||||
import id.databisnis.android.bachot.services.apperror.api.AppErrorStateService
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
+4
-4
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleRenderer
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleState
|
||||
import io.element.android.libraries.di.SessionScope
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleRenderer
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleState
|
||||
import id.databisnis.android.bachot.libraries.di.SessionScope
|
||||
|
||||
@ContributesBinding(SessionScope::class)
|
||||
class DefaultInvitePeopleRenderer : InvitePeopleRenderer {
|
||||
+7
-7
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleEvents
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleState
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleEvents
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleState
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncAction
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
|
||||
data class DefaultInvitePeopleState(
|
||||
+7
-7
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.ui.components.aMatrixUser
|
||||
import io.element.android.libraries.matrix.ui.components.aMatrixUserList
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncAction
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.aMatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.aMatrixUserList
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
+2
-2
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
|
||||
data class InvitableUser(
|
||||
val matrixUser: MatrixUser,
|
||||
+18
-18
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
@@ -24,23 +24,23 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.compose.ui.unit.dp
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.designsystem.components.async.AsyncFailure
|
||||
import io.element.android.libraries.designsystem.components.async.AsyncLoading
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBar
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import io.element.android.libraries.designsystem.theme.components.Text
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.ui.components.CheckableUserRow
|
||||
import io.element.android.libraries.matrix.ui.components.CheckableUserRowData
|
||||
import io.element.android.libraries.matrix.ui.components.SelectedUsersRowList
|
||||
import io.element.android.libraries.matrix.ui.model.getAvatarData
|
||||
import io.element.android.libraries.matrix.ui.model.getBestName
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.async.AsyncFailure
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.async.AsyncLoading
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarSize
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBar
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.CheckableUserRow
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.CheckableUserRowData
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.SelectedUsersRowList
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.model.getAvatarData
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.model.getBestName
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
|
||||
@Composable
|
||||
+35
-35
@@ -6,44 +6,44 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.invitepeople.impl
|
||||
package id.databisnis.android.bachot.features.invitepeople.impl
|
||||
|
||||
import app.cash.turbine.ReceiveTurbine
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.invitepeople.api.InvitePeopleEvents
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import io.element.android.libraries.matrix.api.MatrixClient
|
||||
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.JoinedRoom
|
||||
import io.element.android.libraries.matrix.api.room.RoomMembersState
|
||||
import io.element.android.libraries.matrix.api.room.RoomMembershipState
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.test.AN_EXCEPTION
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID_2
|
||||
import io.element.android.libraries.matrix.test.FakeMatrixClient
|
||||
import io.element.android.libraries.matrix.test.room.FakeJoinedRoom
|
||||
import io.element.android.libraries.matrix.test.room.aRoomMember
|
||||
import io.element.android.libraries.matrix.test.room.aRoomMemberList
|
||||
import io.element.android.libraries.matrix.ui.components.aMatrixUser
|
||||
import io.element.android.libraries.matrix.ui.components.aMatrixUserList
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import io.element.android.libraries.usersearch.api.UserRepository
|
||||
import io.element.android.libraries.usersearch.api.UserSearchResult
|
||||
import io.element.android.libraries.usersearch.api.UserSearchResultState
|
||||
import io.element.android.libraries.usersearch.test.FakeUserRepository
|
||||
import io.element.android.services.apperror.api.AppErrorStateService
|
||||
import io.element.android.services.apperror.test.FakeAppErrorStateService
|
||||
import io.element.android.tests.testutils.WarmUpRule
|
||||
import io.element.android.tests.testutils.lambda.lambdaError
|
||||
import io.element.android.tests.testutils.lambda.lambdaRecorder
|
||||
import io.element.android.tests.testutils.lambda.value
|
||||
import io.element.android.tests.testutils.test
|
||||
import io.element.android.tests.testutils.testCoroutineDispatchers
|
||||
import id.databisnis.android.bachot.features.invitepeople.api.InvitePeopleEvents
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.SearchBarResultState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClient
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.JoinedRoom
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.RoomMembersState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.RoomMembershipState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.user.MatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.AN_EXCEPTION
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID_2
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClient
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.room.FakeJoinedRoom
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.room.aRoomMember
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.room.aRoomMemberList
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.aMatrixUser
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.components.aMatrixUserList
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.libraries.usersearch.api.UserRepository
|
||||
import id.databisnis.android.bachot.libraries.usersearch.api.UserSearchResult
|
||||
import id.databisnis.android.bachot.libraries.usersearch.api.UserSearchResultState
|
||||
import id.databisnis.android.bachot.libraries.usersearch.test.FakeUserRepository
|
||||
import id.databisnis.android.bachot.services.apperror.api.AppErrorStateService
|
||||
import id.databisnis.android.bachot.services.apperror.test.FakeAppErrorStateService
|
||||
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.value
|
||||
import id.databisnis.android.bachot.tests.testutils.test
|
||||
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import kotlinx.coroutines.delay
|
||||
Reference in New Issue
Block a user