From f2fd168a78cfe99a4e87327f8029f474b135ee43 Mon Sep 17 00:00:00 2001 From: ganfra Date: Thu, 2 Mar 2023 18:16:17 +0100 Subject: [PATCH] [Architecture]: use FeatureEntryPoint on Messages feature --- .../io/element/android/x/node/RoomFlowNode.kt | 8 +++-- .../messages/api/MessagesEntryPoint.kt | 21 ++++++++++++ .../impl/DefaultMessagesEntryPoint.kt | 33 +++++++++++++++++++ .../messages/{ => impl}/MessagesEvents.kt | 6 ++-- .../messages/{ => impl}/MessagesNode.kt | 2 +- .../messages/{ => impl}/MessagesPresenter.kt | 20 +++++------ .../messages/{ => impl}/MessagesState.kt | 8 ++--- .../{ => impl}/MessagesStateProvider.kt | 12 +++---- .../messages/{ => impl}/MessagesView.kt | 16 ++++----- .../{ => impl}/actionlist/ActionListEvents.kt | 4 +-- .../actionlist/ActionListPresenter.kt | 8 ++--- .../{ => impl}/actionlist/ActionListState.kt | 6 ++-- .../actionlist/ActionListStateProvider.kt | 6 ++-- .../{ => impl}/actionlist/ActionListView.kt | 6 ++-- .../actionlist/model/TimelineItemAction.kt | 2 +- .../textcomposer/MessageComposerEvents.kt | 2 +- .../textcomposer/MessageComposerPresenter.kt | 2 +- .../textcomposer/MessageComposerState.kt | 2 +- .../MessageComposerStateProvider.kt | 2 +- .../textcomposer/MessageComposerView.kt | 2 +- .../{ => impl}/timeline/TimelineEvents.kt | 2 +- .../{ => impl}/timeline/TimelinePresenter.kt | 4 +-- .../{ => impl}/timeline/TimelineState.kt | 4 +-- .../timeline/TimelineStateProvider.kt | 14 ++++---- .../{ => impl}/timeline/TimelineView.kt | 24 +++++++------- .../timeline/components/MessageEventBubble.kt | 8 ++--- .../components/MessagesReactionButton.kt | 6 ++-- .../components/TimelineItemReactionsView.kt | 6 ++-- .../event/TimelineItemContentView.kt | 14 ++++---- .../event/TimelineItemEncryptedView.kt | 4 +-- .../components/event/TimelineItemImageView.kt | 6 ++-- .../event/TimelineItemInformativeView.kt | 2 +- .../event/TimelineItemRedactedView.kt | 4 +-- .../components/event/TimelineItemTextView.kt | 8 ++--- .../event/TimelineItemUnknownView.kt | 4 +-- .../components/html/DocumentProvider.kt | 2 +- .../timeline/components/html/HtmlDocument.kt | 2 +- .../virtual/TimelineItemDaySeparatorView.kt | 14 +++++--- .../TimelineItemLoadingMoreIndicator.kt | 2 +- .../timeline/diff/CacheInvalidator.kt | 6 ++-- .../diff/MatrixTimelineItemsDiffCallback.kt | 2 +- .../factories/TimelineItemsFactory.kt | 12 +++---- .../event/TimelineItemContentFactory.kt | 4 +-- ...eItemContentFailedToParseMessageFactory.kt | 6 ++-- ...ineItemContentFailedToParseStateFactory.kt | 6 ++-- .../TimelineItemContentMessageFactory.kt | 16 ++++----- ...TimelineItemContentProfileChangeFactory.kt | 6 ++-- .../TimelineItemContentRedactedFactory.kt | 6 ++-- ...imelineItemContentRoomMembershipFactory.kt | 6 ++-- .../event/TimelineItemContentStateFactory.kt | 6 ++-- .../TimelineItemContentStickerFactory.kt | 6 ++-- .../event/TimelineItemContentUTDFactory.kt | 6 ++-- .../event/TimelineItemEventFactory.kt | 10 +++--- .../TimelineItemDaySeparatorFactory.kt | 6 ++-- .../virtual/TimelineItemVirtualFactory.kt | 12 +++---- .../timeline/model/AggregatedReaction.kt | 2 +- .../model/AggregatedReactionProvider.kt | 2 +- .../{ => impl}/timeline/model/TimelineItem.kt | 6 ++-- .../model/TimelineItemGroupPosition.kt | 2 +- .../TimelineItemGroupPositionProvider.kt | 2 +- .../timeline/model/TimelineItemReactions.kt | 2 +- .../model/TimelineItemReactionsProvider.kt | 2 +- .../timeline/model/bubble/BubbleState.kt | 4 +-- .../model/bubble/BubbleStateProvider.kt | 4 +-- .../model/event/TimelineItemEmoteContent.kt | 2 +- .../event/TimelineItemEncryptedContent.kt | 2 +- .../model/event/TimelineItemEventContent.kt | 2 +- .../event/TimelineItemEventContentProvider.kt | 2 +- .../model/event/TimelineItemImageContent.kt | 2 +- .../event/TimelineItemImageContentProvider.kt | 2 +- .../model/event/TimelineItemNoticeContent.kt | 2 +- .../event/TimelineItemRedactedContent.kt | 2 +- .../event/TimelineItemTextBasedContent.kt | 2 +- .../model/event/TimelineItemTextContent.kt | 2 +- .../model/event/TimelineItemUnknownContent.kt | 2 +- .../virtual/TimelineItemDaySeparatorModel.kt | 2 +- .../TimelineItemDaySeparatorModelProvider.kt | 2 +- .../model/virtual/TimelineItemLoadingModel.kt | 2 +- .../virtual/TimelineItemReadMarkerModel.kt | 2 +- .../virtual/TimelineItemTimelineStartModel.kt | 2 +- .../TimelineItemUnknownVirtualModel.kt | 2 +- .../model/virtual/TimelineItemVirtualModel.kt | 2 +- .../timeline/util/MutableListExt.kt | 2 +- .../timeline/util/toHtmlDocument.kt | 2 +- .../messages/MessagesPresenterTest.kt | 21 ++++-------- .../actionlist/ActionListPresenterTest.kt | 16 +++++---- .../messages/fixtures/aMessageEvent.kt | 8 ++--- .../messages/fixtures/timelineItemsFactory.kt | 28 ++++++++-------- .../MessageComposerPresenterTest.kt | 3 ++ .../timeline/TimelinePresenterTest.kt | 2 ++ 90 files changed, 308 insertions(+), 250 deletions(-) create mode 100644 features/messages/src/main/kotlin/io/element/android/features/messages/api/MessagesEntryPoint.kt create mode 100644 features/messages/src/main/kotlin/io/element/android/features/messages/impl/DefaultMessagesEntryPoint.kt rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesEvents.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesNode.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesPresenter.kt (86%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesState.kt (79%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesStateProvider.kt (78%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/MessagesView.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/ActionListEvents.kt (84%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/ActionListPresenter.kt (89%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/ActionListState.kt (83%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/ActionListStateProvider.kt (88%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/ActionListView.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/actionlist/model/TimelineItemAction.kt (94%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/textcomposer/MessageComposerEvents.kt (94%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/textcomposer/MessageComposerPresenter.kt (98%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/textcomposer/MessageComposerState.kt (94%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/textcomposer/MessageComposerStateProvider.kt (95%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/textcomposer/MessageComposerView.kt (97%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/TimelineEvents.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/TimelinePresenter.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/TimelineState.kt (88%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/TimelineStateProvider.kt (84%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/TimelineView.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/MessageEventBubble.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/MessagesReactionButton.kt (92%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/TimelineItemReactionsView.kt (87%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemContentView.kt (73%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemEncryptedView.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemImageView.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemInformativeView.kt (97%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemRedactedView.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemTextView.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/event/TimelineItemUnknownView.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/html/DocumentProvider.kt (97%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/html/HtmlDocument.kt (99%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/virtual/TimelineItemDaySeparatorView.kt (81%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/diff/CacheInvalidator.kt (89%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/diff/MatrixTimelineItemsDiffCallback.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/TimelineItemsFactory.kt (88%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentFactory.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentMessageFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentRedactedFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentStateFactory.kt (76%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentStickerFactory.kt (76%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemContentUTDFactory.kt (77%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/event/TimelineItemEventFactory.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt (80%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/factories/virtual/TimelineItemVirtualFactory.kt (75%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/AggregatedReaction.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/AggregatedReactionProvider.kt (94%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/TimelineItem.kt (86%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/TimelineItemGroupPosition.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/TimelineItemGroupPositionProvider.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/TimelineItemReactions.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/TimelineItemReactionsProvider.kt (92%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/bubble/BubbleState.kt (82%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/bubble/BubbleStateProvider.kt (89%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemEmoteContent.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemEncryptedContent.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemEventContent.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemEventContentProvider.kt (96%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemImageContent.kt (92%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemImageContentProvider.kt (94%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemNoticeContent.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemRedactedContent.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemTextBasedContent.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemTextContent.kt (91%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/event/TimelineItemUnknownContent.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemDaySeparatorModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt (93%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemLoadingModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemReadMarkerModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemTimelineStartModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/model/virtual/TimelineItemVirtualModel.kt (90%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/util/MutableListExt.kt (92%) rename features/messages/src/main/kotlin/io/element/android/features/messages/{ => impl}/timeline/util/toHtmlDocument.kt (93%) diff --git a/app/src/main/kotlin/io/element/android/x/node/RoomFlowNode.kt b/app/src/main/kotlin/io/element/android/x/node/RoomFlowNode.kt index d00b2e2414..e0bd39b252 100644 --- a/app/src/main/kotlin/io/element/android/x/node/RoomFlowNode.kt +++ b/app/src/main/kotlin/io/element/android/x/node/RoomFlowNode.kt @@ -28,11 +28,10 @@ import com.bumble.appyx.navmodel.backstack.BackStack import dagger.assisted.Assisted import dagger.assisted.AssistedInject import io.element.android.anvilannotations.ContributesNode -import io.element.android.features.messages.MessagesNode +import io.element.android.features.messages.api.MessagesEntryPoint import io.element.android.libraries.architecture.BackstackNode import io.element.android.libraries.architecture.NodeInputs import io.element.android.libraries.architecture.bindings -import io.element.android.libraries.architecture.createNode import io.element.android.libraries.architecture.nodeInputs import io.element.android.libraries.di.DaggerComponentOwner import io.element.android.libraries.di.SessionScope @@ -45,6 +44,7 @@ import timber.log.Timber class RoomFlowNode @AssistedInject constructor( @Assisted buildContext: BuildContext, @Assisted plugins: List, + private val messagesEntryPoint: MessagesEntryPoint, ) : BackstackNode( backstack = BackStack( initialElement = NavTarget.Messages, @@ -73,7 +73,9 @@ class RoomFlowNode @AssistedInject constructor( override fun resolve(navTarget: NavTarget, buildContext: BuildContext): Node { return when (navTarget) { - NavTarget.Messages -> createNode(buildContext) + NavTarget.Messages -> { + messagesEntryPoint.node(this, buildContext) + } } } diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/api/MessagesEntryPoint.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/api/MessagesEntryPoint.kt new file mode 100644 index 0000000000..3509df342b --- /dev/null +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/api/MessagesEntryPoint.kt @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2023 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.element.android.features.messages.api + +import io.element.android.libraries.architecture.FeatureEntryPoint + +interface MessagesEntryPoint : FeatureEntryPoint diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/impl/DefaultMessagesEntryPoint.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/DefaultMessagesEntryPoint.kt new file mode 100644 index 0000000000..6545e3ac66 --- /dev/null +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/DefaultMessagesEntryPoint.kt @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2023 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.element.android.features.messages.impl + +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.core.node.Node +import com.bumble.appyx.core.plugin.Plugin +import com.squareup.anvil.annotations.ContributesBinding +import io.element.android.features.messages.api.MessagesEntryPoint +import io.element.android.libraries.architecture.createNode +import io.element.android.libraries.di.AppScope +import javax.inject.Inject + +@ContributesBinding(AppScope::class) +class DefaultMessagesEntryPoint @Inject constructor() : MessagesEntryPoint { + override fun node(parentNode: Node, buildContext: BuildContext, plugins: List): Node { + return parentNode.createNode(buildContext, plugins) + } +} diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesEvents.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesEvents.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesEvents.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesEvents.kt index 4e6505f31c..249e94e0e1 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesEvents.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesEvents.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages +package io.element.android.features.messages.impl -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.timeline.model.TimelineItem sealed interface MessagesEvents { data class HandleAction(val action: TimelineItemAction, val event: TimelineItem.Event) : MessagesEvents diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesNode.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesNode.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesNode.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesNode.kt index 0b3db020bf..2ef24c0158 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesNode.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesNode.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages +package io.element.android.features.messages.impl import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesPresenter.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt similarity index 86% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesPresenter.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt index da149fbe0c..a6316585f4 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesPresenter.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages +package io.element.android.features.messages.impl import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect @@ -24,15 +24,15 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.saveable.rememberSaveable -import io.element.android.features.messages.actionlist.ActionListPresenter -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.textcomposer.MessageComposerEvents -import io.element.android.features.messages.textcomposer.MessageComposerPresenter -import io.element.android.features.messages.textcomposer.MessageComposerState -import io.element.android.features.messages.timeline.TimelineEvents -import io.element.android.features.messages.timeline.TimelinePresenter -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.event.TimelineItemTextBasedContent +import io.element.android.features.messages.impl.actionlist.ActionListPresenter +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.textcomposer.MessageComposerEvents +import io.element.android.features.messages.impl.textcomposer.MessageComposerPresenter +import io.element.android.features.messages.impl.textcomposer.MessageComposerState +import io.element.android.features.messages.impl.timeline.TimelineEvents +import io.element.android.features.messages.impl.timeline.TimelinePresenter +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContent import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesState.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesState.kt similarity index 79% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesState.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesState.kt index 4270c9f2e6..c2f90160da 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesState.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesState.kt @@ -14,12 +14,12 @@ * limitations under the License. */ -package io.element.android.features.messages +package io.element.android.features.messages.impl import androidx.compose.runtime.Immutable -import io.element.android.features.messages.actionlist.ActionListState -import io.element.android.features.messages.textcomposer.MessageComposerState -import io.element.android.features.messages.timeline.TimelineState +import io.element.android.features.messages.impl.actionlist.ActionListState +import io.element.android.features.messages.impl.textcomposer.MessageComposerState +import io.element.android.features.messages.impl.timeline.TimelineState import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.core.RoomId diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesStateProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt similarity index 78% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesStateProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt index 7310ba76f4..e403791509 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesStateProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages +package io.element.android.features.messages.impl import androidx.compose.ui.tooling.preview.PreviewParameterProvider -import io.element.android.features.messages.actionlist.anActionListState -import io.element.android.features.messages.textcomposer.aMessageComposerState -import io.element.android.features.messages.timeline.aTimelineItemContent -import io.element.android.features.messages.timeline.aTimelineItemList -import io.element.android.features.messages.timeline.aTimelineState +import io.element.android.features.messages.impl.actionlist.anActionListState +import io.element.android.features.messages.impl.textcomposer.aMessageComposerState +import io.element.android.features.messages.impl.timeline.aTimelineItemContent +import io.element.android.features.messages.impl.timeline.aTimelineItemList +import io.element.android.features.messages.impl.timeline.aTimelineState import io.element.android.libraries.core.data.StableCharSequence import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.core.RoomId diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/MessagesView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt index ae6f5326d0..6a408b3044 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/MessagesView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 New Vector Ltd + * Copyright (c) 2023 New Vector Ltd * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,7 +19,7 @@ ExperimentalMaterialApi::class, ExperimentalMaterial3Api::class, ) -package io.element.android.features.messages +package io.element.android.features.messages.impl import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -53,12 +53,12 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.element.android.features.messages.actionlist.ActionListEvents -import io.element.android.features.messages.actionlist.ActionListView -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.textcomposer.MessageComposerView -import io.element.android.features.messages.timeline.TimelineView -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.actionlist.ActionListEvents +import io.element.android.features.messages.impl.actionlist.ActionListView +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.textcomposer.MessageComposerView +import io.element.android.features.messages.impl.timeline.TimelineView +import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.libraries.designsystem.components.avatar.Avatar import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.preview.ElementPreviewDark diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListEvents.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListEvents.kt similarity index 84% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListEvents.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListEvents.kt index 99e41de3e1..a6244a72e3 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListEvents.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListEvents.kt @@ -14,9 +14,9 @@ * limitations under the License. */ -package io.element.android.features.messages.actionlist +package io.element.android.features.messages.impl.actionlist -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItem sealed interface ActionListEvents { object Clear : ActionListEvents diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListPresenter.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListPresenter.kt similarity index 89% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListPresenter.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListPresenter.kt index 194a7f103e..cdffa9c618 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListPresenter.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListPresenter.kt @@ -14,16 +14,16 @@ * limitations under the License. */ -package io.element.android.features.messages.actionlist +package io.element.android.features.messages.impl.actionlist import androidx.compose.runtime.Composable import androidx.compose.runtime.MutableState import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.event.TimelineItemRedactedContent +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent import io.element.android.libraries.architecture.Presenter import kotlinx.collections.immutable.toImmutableList import kotlinx.coroutines.CoroutineScope diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListState.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListState.kt similarity index 83% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListState.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListState.kt index 0bb8f9dd5d..faf41160be 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListState.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListState.kt @@ -14,11 +14,11 @@ * limitations under the License. */ -package io.element.android.features.messages.actionlist +package io.element.android.features.messages.impl.actionlist import androidx.compose.runtime.Immutable -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.timeline.model.TimelineItem import kotlinx.collections.immutable.ImmutableList @Immutable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListStateProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt similarity index 88% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListStateProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt index 8d63af518c..7df34bf36e 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListStateProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt @@ -14,11 +14,11 @@ * limitations under the License. */ -package io.element.android.features.messages.actionlist +package io.element.android.features.messages.impl.actionlist import androidx.compose.ui.tooling.preview.PreviewParameterProvider -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.aTimelineItemEvent +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.timeline.aTimelineItemEvent import kotlinx.collections.immutable.persistentListOf open class ActionListStateProvider : PreviewParameterProvider { diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListView.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListView.kt index 9b0ee80ed5..dc71d1d834 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListView.kt @@ -16,7 +16,7 @@ @file:OptIn(ExperimentalMaterialApi::class) -package io.element.android.features.messages.actionlist +package io.element.android.features.messages.impl.actionlist import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Box @@ -40,8 +40,8 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.designsystem.theme.components.Icon diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/model/TimelineItemAction.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/model/TimelineItemAction.kt similarity index 94% rename from features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/model/TimelineItemAction.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/model/TimelineItemAction.kt index ea48797824..fc3f114ac4 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/model/TimelineItemAction.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/actionlist/model/TimelineItemAction.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.actionlist.model +package io.element.android.features.messages.impl.actionlist.model import androidx.annotation.DrawableRes import androidx.compose.runtime.Immutable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerEvents.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerEvents.kt similarity index 94% rename from features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerEvents.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerEvents.kt index 656229555b..1da1188ee4 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerEvents.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerEvents.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.textcomposer +package io.element.android.features.messages.impl.textcomposer import io.element.android.libraries.textcomposer.MessageComposerMode diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenter.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerPresenter.kt similarity index 98% rename from features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenter.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerPresenter.kt index 4f7cbc287f..43d8cafd3b 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenter.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerPresenter.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.textcomposer +package io.element.android.features.messages.impl.textcomposer import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerState.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerState.kt similarity index 94% rename from features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerState.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerState.kt index 2b5396cb9e..ce6d68f8f7 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerState.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerState.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.textcomposer +package io.element.android.features.messages.impl.textcomposer import androidx.compose.runtime.Immutable import io.element.android.libraries.core.data.StableCharSequence diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerStateProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerStateProvider.kt similarity index 95% rename from features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerStateProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerStateProvider.kt index d777893d58..6a8ec37e30 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerStateProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerStateProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.textcomposer +package io.element.android.features.messages.impl.textcomposer import androidx.compose.ui.tooling.preview.PreviewParameterProvider import io.element.android.libraries.core.data.StableCharSequence diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerView.kt similarity index 97% rename from features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerView.kt index b720ab5fbb..e94ebb0a2a 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/textcomposer/MessageComposerView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/textcomposer/MessageComposerView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.textcomposer +package io.element.android.features.messages.impl.textcomposer import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineEvents.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvents.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineEvents.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvents.kt index c59b99fe3f..bf953f5883 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineEvents.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvents.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline +package io.element.android.features.messages.impl.timeline import io.element.android.libraries.matrix.core.EventId diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelinePresenter.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelinePresenter.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt index 514ec34d78..8e4d7f77de 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelinePresenter.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline +package io.element.android.features.messages.impl.timeline import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect @@ -24,7 +24,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.saveable.rememberSaveable -import io.element.android.features.messages.timeline.factories.TimelineItemsFactory +import io.element.android.features.messages.impl.timeline.factories.TimelineItemsFactory import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.matrix.core.EventId import io.element.android.libraries.matrix.room.MatrixRoom diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineState.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineState.kt similarity index 88% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineState.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineState.kt index affe32ee66..eb21b12fc1 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineState.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineState.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline +package io.element.android.features.messages.impl.timeline import androidx.compose.runtime.Immutable -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.libraries.matrix.core.EventId import io.element.android.libraries.matrix.timeline.MatrixTimeline import kotlinx.collections.immutable.ImmutableList diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineStateProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineStateProvider.kt similarity index 84% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineStateProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineStateProvider.kt index 6f3c04a7c6..53712fb928 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineStateProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineStateProvider.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline +package io.element.android.features.messages.impl.timeline -import io.element.android.features.messages.timeline.model.AggregatedReaction -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.TimelineItemGroupPosition -import io.element.android.features.messages.timeline.model.TimelineItemReactions -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextContent +import io.element.android.features.messages.impl.timeline.model.AggregatedReaction +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextContent import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.core.EventId import io.element.android.libraries.matrix.timeline.MatrixTimeline diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt index 856a756f7c..7ea427a8cf 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/TimelineView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline +package io.element.android.features.messages.impl.timeline import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Arrangement @@ -54,17 +54,17 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp import androidx.compose.ui.zIndex -import io.element.android.features.messages.timeline.components.MessageEventBubble -import io.element.android.features.messages.timeline.components.TimelineItemReactionsView -import io.element.android.features.messages.timeline.components.event.TimelineItemEventContentView -import io.element.android.features.messages.timeline.components.virtual.TimelineItemDaySeparatorView -import io.element.android.features.messages.timeline.components.virtual.TimelineLoadingMoreIndicator -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.bubble.BubbleState -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContentProvider -import io.element.android.features.messages.timeline.model.virtual.TimelineItemDaySeparatorModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemLoadingModel +import io.element.android.features.messages.impl.timeline.components.MessageEventBubble +import io.element.android.features.messages.impl.timeline.components.TimelineItemReactionsView +import io.element.android.features.messages.impl.timeline.components.event.TimelineItemEventContentView +import io.element.android.features.messages.impl.timeline.components.virtual.TimelineItemDaySeparatorView +import io.element.android.features.messages.impl.timeline.components.virtual.TimelineLoadingMoreIndicator +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.bubble.BubbleState +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContentProvider +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemDaySeparatorModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemLoadingModel import io.element.android.libraries.designsystem.components.avatar.Avatar import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.preview.ElementPreviewDark diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessageEventBubble.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessageEventBubble.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt index 4ae30c86ec..b696b63f92 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessageEventBubble.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components +package io.element.android.features.messages.impl.timeline.components import androidx.compose.foundation.ExperimentalFoundationApi import androidx.compose.foundation.combinedClickable @@ -35,9 +35,9 @@ import androidx.compose.ui.graphics.Shape import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import io.element.android.features.messages.timeline.model.TimelineItemGroupPosition -import io.element.android.features.messages.timeline.model.bubble.BubbleState -import io.element.android.features.messages.timeline.model.bubble.BubbleStateProvider +import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.bubble.BubbleState +import io.element.android.features.messages.impl.timeline.model.bubble.BubbleStateProvider import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.designsystem.theme.ElementTheme diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessagesReactionButton.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessagesReactionButton.kt similarity index 92% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessagesReactionButton.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessagesReactionButton.kt index dd8cb53fe1..c0b6f91c9e 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/MessagesReactionButton.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessagesReactionButton.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components +package io.element.android.features.messages.impl.timeline.components import androidx.compose.foundation.BorderStroke import androidx.compose.foundation.layout.Row @@ -31,8 +31,8 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.element.android.features.messages.timeline.model.AggregatedReaction -import io.element.android.features.messages.timeline.model.AggregatedReactionProvider +import io.element.android.features.messages.impl.timeline.model.AggregatedReaction +import io.element.android.features.messages.impl.timeline.model.AggregatedReactionProvider import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.designsystem.theme.components.Surface diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/TimelineItemReactionsView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemReactionsView.kt similarity index 87% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/TimelineItemReactionsView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemReactionsView.kt index 92b4fa6dd6..48507629dd 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/TimelineItemReactionsView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemReactionsView.kt @@ -14,15 +14,15 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components +package io.element.android.features.messages.impl.timeline.components import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.google.accompanist.flowlayout.FlowRow -import io.element.android.features.messages.timeline.model.TimelineItemReactions -import io.element.android.features.messages.timeline.model.aTimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.TimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.aTimelineItemReactions import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemContentView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemContentView.kt similarity index 73% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemContentView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemContentView.kt index 7ab6f14ec6..bfb1d7f0c7 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemContentView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemContentView.kt @@ -14,17 +14,17 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier -import io.element.android.features.messages.timeline.model.event.TimelineItemEncryptedContent -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemImageContent -import io.element.android.features.messages.timeline.model.event.TimelineItemRedactedContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextBasedContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEncryptedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemImageContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent @Composable fun TimelineItemEventContentView( diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemEncryptedView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemEncryptedView.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemEncryptedView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemEncryptedView.kt index 30e0480ca1..2d98005eba 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemEncryptedView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemEncryptedView.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Warning import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import io.element.android.features.messages.timeline.model.event.TimelineItemEncryptedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEncryptedContent import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import org.matrix.rustcomponents.sdk.EncryptedMessage diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemImageView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemImageView.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemImageView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemImageView.kt index fcac353e81..a532557ffb 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemImageView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemImageView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.aspectRatio @@ -32,8 +32,8 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import coil.compose.AsyncImage import coil.request.ImageRequest -import io.element.android.features.messages.timeline.model.event.TimelineItemImageContent -import io.element.android.features.messages.timeline.model.event.TimelineItemImageContentProvider +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemImageContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemImageContentProvider import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.designsystem.preview.debugPlaceholderBackground diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemInformativeView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemInformativeView.kt similarity index 97% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemInformativeView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemInformativeView.kt index a3718dae22..94aa89d1f6 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemInformativeView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemInformativeView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemRedactedView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemRedactedView.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemRedactedView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemRedactedView.kt index cbc33d28fb..2424e76ae1 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemRedactedView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemRedactedView.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Delete import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import io.element.android.features.messages.timeline.model.event.TimelineItemRedactedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemTextView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemTextView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt index b41ae6a09e..e2ff060c12 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemTextView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import android.text.SpannableString import android.text.style.URLSpan @@ -30,9 +30,9 @@ import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.core.text.util.LinkifyCompat -import io.element.android.features.messages.timeline.components.html.HtmlDocument -import io.element.android.features.messages.timeline.model.event.TimelineItemTextBasedContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextBasedContentProvider +import io.element.android.features.messages.impl.timeline.components.html.HtmlDocument +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContentProvider import io.element.android.libraries.designsystem.LinkColor import io.element.android.libraries.designsystem.components.ClickableLinkText import io.element.android.libraries.designsystem.preview.ElementPreviewDark diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemUnknownView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemUnknownView.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemUnknownView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemUnknownView.kt index 43acfe43eb..00732c6882 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/event/TimelineItemUnknownView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemUnknownView.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.event +package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Info import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/DocumentProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/DocumentProvider.kt similarity index 97% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/DocumentProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/DocumentProvider.kt index 2a8833911a..249334cace 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/DocumentProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/DocumentProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.html +package io.element.android.features.messages.impl.timeline.components.html import androidx.compose.ui.tooling.preview.PreviewParameterProvider import org.jsoup.Jsoup diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/HtmlDocument.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/HtmlDocument.kt similarity index 99% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/HtmlDocument.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/HtmlDocument.kt index 94db09090e..a151c4c7e6 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/html/HtmlDocument.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/html/HtmlDocument.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.html +package io.element.android.features.messages.impl.timeline.components.html import androidx.compose.foundation.background import androidx.compose.foundation.interaction.MutableInteractionSource diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemDaySeparatorView.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemDaySeparatorView.kt similarity index 81% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemDaySeparatorView.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemDaySeparatorView.kt index 753723a88d..4fcb1013a5 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemDaySeparatorView.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemDaySeparatorView.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.virtual +package io.element.android.features.messages.impl.timeline.components.virtual import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxWidth @@ -27,8 +27,8 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import io.element.android.features.messages.timeline.model.virtual.TimelineItemDaySeparatorModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemDaySeparatorModelProvider +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemDaySeparatorModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemDaySeparatorModelProvider import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.designsystem.theme.components.Text @@ -54,12 +54,16 @@ internal fun TimelineItemDaySeparatorView( @Preview @Composable -internal fun TimelineItemDaySeparatorViewLightPreview(@PreviewParameter(TimelineItemDaySeparatorModelProvider::class) model: TimelineItemDaySeparatorModel) = +internal fun TimelineItemDaySeparatorViewLightPreview(@PreviewParameter( + TimelineItemDaySeparatorModelProvider::class) model: TimelineItemDaySeparatorModel +) = ElementPreviewLight { ContentToPreview(model) } @Preview @Composable -internal fun TimelineItemDaySeparatorViewDarkPreview(@PreviewParameter(TimelineItemDaySeparatorModelProvider::class) model: TimelineItemDaySeparatorModel) = +internal fun TimelineItemDaySeparatorViewDarkPreview(@PreviewParameter( + TimelineItemDaySeparatorModelProvider::class) model: TimelineItemDaySeparatorModel +) = ElementPreviewDark { ContentToPreview(model) } @Composable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt index ace9b8d58b..388be95381 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemLoadingMoreIndicator.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.components.virtual +package io.element.android.features.messages.impl.timeline.components.virtual import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxWidth diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/CacheInvalidator.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/CacheInvalidator.kt similarity index 89% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/CacheInvalidator.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/CacheInvalidator.kt index c71fa7bcd1..c2f3b33667 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/CacheInvalidator.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/CacheInvalidator.kt @@ -14,11 +14,11 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.diff +package io.element.android.features.messages.impl.timeline.diff import androidx.recyclerview.widget.ListUpdateCallback -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.util.invalidateLast +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.util.invalidateLast import timber.log.Timber internal class CacheInvalidator(private val itemStatesCache: MutableList) : diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/MatrixTimelineItemsDiffCallback.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/MatrixTimelineItemsDiffCallback.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/MatrixTimelineItemsDiffCallback.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/MatrixTimelineItemsDiffCallback.kt index fd5119cc2a..142ee69608 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/diff/MatrixTimelineItemsDiffCallback.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/diff/MatrixTimelineItemsDiffCallback.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.diff +package io.element.android.features.messages.impl.timeline.diff import androidx.recyclerview.widget.DiffUtil import io.element.android.libraries.matrix.timeline.MatrixTimelineItem diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/TimelineItemsFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactory.kt similarity index 88% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/TimelineItemsFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactory.kt index ff3318de5e..a04e003a1b 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/TimelineItemsFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactory.kt @@ -14,14 +14,14 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories +package io.element.android.features.messages.impl.timeline.factories import androidx.recyclerview.widget.DiffUtil -import io.element.android.features.messages.timeline.diff.CacheInvalidator -import io.element.android.features.messages.timeline.diff.MatrixTimelineItemsDiffCallback -import io.element.android.features.messages.timeline.factories.event.TimelineItemEventFactory -import io.element.android.features.messages.timeline.factories.virtual.TimelineItemVirtualFactory -import io.element.android.features.messages.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.diff.CacheInvalidator +import io.element.android.features.messages.impl.timeline.diff.MatrixTimelineItemsDiffCallback +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemEventFactory +import io.element.android.features.messages.impl.timeline.factories.virtual.TimelineItemVirtualFactory +import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.libraries.core.coroutine.CoroutineDispatchers import io.element.android.libraries.matrix.timeline.MatrixTimelineItem import kotlinx.coroutines.flow.MutableStateFlow diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFactory.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFactory.kt index 121e5e38e8..c3417bc3c9 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFactory.kt @@ -14,9 +14,9 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt index 5839cd06da..f5923e34af 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseMessageFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt index a64950a77f..7ef7bfecab 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentFailedToParseStateFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentMessageFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentMessageFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt index ce38a9e96f..ecf52d44f4 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentMessageFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt @@ -14,15 +14,15 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemEmoteContent -import io.element.android.features.messages.timeline.model.event.TimelineItemImageContent -import io.element.android.features.messages.timeline.model.event.TimelineItemNoticeContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent -import io.element.android.features.messages.timeline.util.toHtmlDocument +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEmoteContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemImageContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemNoticeContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.util.toHtmlDocument import io.element.android.libraries.matrix.media.MediaResolver import org.matrix.rustcomponents.sdk.Message import org.matrix.rustcomponents.sdk.MessageType diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt index 6f775ac80f..8e7683d51d 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentProfileChangeFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRedactedFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRedactedFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRedactedFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRedactedFactory.kt index 4d6b9257a3..968c51070c 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRedactedFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRedactedFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemRedactedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt index 1764087a2d..037338cbbe 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentRoomMembershipFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStateFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStateFactory.kt similarity index 76% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStateFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStateFactory.kt index 176a540e00..e2dcec5a8c 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStateFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStateFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStickerFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStickerFactory.kt similarity index 76% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStickerFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStickerFactory.kt index 8e8a81ccf5..de7ad74ef5 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentStickerFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentStickerFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemUnknownContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemUnknownContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentUTDFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentUTDFactory.kt similarity index 77% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentUTDFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentUTDFactory.kt index 77d9dcfefd..495059be73 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemContentUTDFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentUTDFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemEncryptedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEncryptedContent import org.matrix.rustcomponents.sdk.TimelineItemContentKind import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemEventFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemEventFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt index 4dbf72b8e2..7856494c6b 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/event/TimelineItemEventFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt @@ -14,12 +14,12 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.event +package io.element.android.features.messages.impl.timeline.factories.event -import io.element.android.features.messages.timeline.model.AggregatedReaction -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.TimelineItemGroupPosition -import io.element.android.features.messages.timeline.model.TimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.AggregatedReaction +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemReactions import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize import io.element.android.libraries.matrix.timeline.MatrixTimelineItem diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt similarity index 80% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt index 43a6beada7..4a6dd5fdf1 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemDaySeparatorFactory.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.virtual +package io.element.android.features.messages.impl.timeline.factories.virtual -import io.element.android.features.messages.timeline.model.virtual.TimelineItemDaySeparatorModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemVirtualModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemDaySeparatorModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemVirtualModel import io.element.android.libraries.dateformatter.DaySeparatorFormatter import org.matrix.rustcomponents.sdk.VirtualTimelineItem import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemVirtualFactory.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemVirtualFactory.kt similarity index 75% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemVirtualFactory.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemVirtualFactory.kt index e92171caa7..b22ba1ed83 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/factories/virtual/TimelineItemVirtualFactory.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/virtual/TimelineItemVirtualFactory.kt @@ -14,13 +14,13 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.factories.virtual +package io.element.android.features.messages.impl.timeline.factories.virtual -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.virtual.TimelineItemLoadingModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemReadMarkerModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemUnknownVirtualModel -import io.element.android.features.messages.timeline.model.virtual.TimelineItemVirtualModel +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemLoadingModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemReadMarkerModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemUnknownVirtualModel +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemVirtualModel import io.element.android.libraries.matrix.timeline.MatrixTimelineItem import org.matrix.rustcomponents.sdk.VirtualTimelineItem import javax.inject.Inject diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReaction.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReaction.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReaction.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReaction.kt index c40396a5c2..d7fde40968 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReaction.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReaction.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model data class AggregatedReaction( val key: String, diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReactionProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt similarity index 94% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReactionProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt index 681e57b2ef..301a9db36c 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/AggregatedReactionProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import androidx.compose.ui.tooling.preview.PreviewParameterProvider diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItem.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItem.kt similarity index 86% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItem.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItem.kt index 86ea70956f..e6963235fc 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItem.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItem.kt @@ -14,11 +14,11 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import androidx.compose.runtime.Immutable -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.virtual.TimelineItemVirtualModel +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.virtual.TimelineItemVirtualModel import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.core.EventId diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPosition.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPosition.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPosition.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPosition.kt index 11912b3047..ec3a94519b 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPosition.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPosition.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import androidx.compose.runtime.Immutable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPositionProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPositionProvider.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPositionProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPositionProvider.kt index 4a4c3296d7..8d8d1231ec 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemGroupPositionProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemGroupPositionProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import androidx.compose.ui.tooling.preview.PreviewParameterProvider diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactions.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactions.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactions.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactions.kt index 1884af9c70..3912844f20 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactions.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactions.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import kotlinx.collections.immutable.ImmutableList diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactionsProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactionsProvider.kt similarity index 92% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactionsProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactionsProvider.kt index 998413e9df..cbd6373d6a 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/TimelineItemReactionsProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReactionsProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model +package io.element.android.features.messages.impl.timeline.model import kotlinx.collections.immutable.toPersistentList diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleState.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleState.kt similarity index 82% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleState.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleState.kt index 0daeef1417..1912aac668 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleState.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleState.kt @@ -14,9 +14,9 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.bubble +package io.element.android.features.messages.impl.timeline.model.bubble -import io.element.android.features.messages.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition data class BubbleState( val groupPosition: TimelineItemGroupPosition, diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleStateProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleStateProvider.kt similarity index 89% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleStateProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleStateProvider.kt index bd0dfe53e6..91804278ae 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/bubble/BubbleStateProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/bubble/BubbleStateProvider.kt @@ -14,10 +14,10 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.bubble +package io.element.android.features.messages.impl.timeline.model.bubble import androidx.compose.ui.tooling.preview.PreviewParameterProvider -import io.element.android.features.messages.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition open class BubbleStateProvider : PreviewParameterProvider { override val values: Sequence diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEmoteContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEmoteContent.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEmoteContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEmoteContent.kt index e6b4c9b439..67fefb665e 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEmoteContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEmoteContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import org.jsoup.nodes.Document diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEncryptedContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEncryptedContent.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEncryptedContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEncryptedContent.kt index a57378dfd8..cdb9b1a274 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEncryptedContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEncryptedContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import org.matrix.rustcomponents.sdk.EncryptedMessage diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt index ee09cfb979..7e166dba97 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import androidx.compose.runtime.Immutable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContentProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt similarity index 96% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContentProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt index 2cd8e78c29..e8df9d9639 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemEventContentProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import androidx.compose.ui.tooling.preview.PreviewParameterProvider import org.jsoup.Jsoup diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt similarity index 92% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt index 92912d952a..7dbfc5ccfb 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import io.element.android.libraries.matrix.media.MediaResolver diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContentProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentProvider.kt similarity index 94% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContentProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentProvider.kt index f2a1bee698..4b2de362fa 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemImageContentProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import androidx.compose.ui.tooling.preview.PreviewParameterProvider import io.element.android.libraries.matrix.media.MediaResolver diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemNoticeContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemNoticeContent.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemNoticeContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemNoticeContent.kt index 0b6ca6c26d..6c647158c4 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemNoticeContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemNoticeContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import org.jsoup.nodes.Document diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemRedactedContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemRedactedContent.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemRedactedContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemRedactedContent.kt index 4ddae9be32..de98b22bbb 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemRedactedContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemRedactedContent.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event object TimelineItemRedactedContent : TimelineItemEventContent diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextBasedContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextBasedContent.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextBasedContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextBasedContent.kt index 6ca23a4e16..2fa8eb4f67 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextBasedContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextBasedContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import org.jsoup.nodes.Document diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextContent.kt similarity index 91% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextContent.kt index f35941b5bb..6cbb0ccd08 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemTextContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemTextContent.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event import org.jsoup.nodes.Document diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemUnknownContent.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemUnknownContent.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemUnknownContent.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemUnknownContent.kt index 4b435bde69..eb79b29f79 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/event/TimelineItemUnknownContent.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemUnknownContent.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.event +package io.element.android.features.messages.impl.timeline.model.event object TimelineItemUnknownContent : TimelineItemEventContent diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModel.kt index c6e762a235..b4c1235f8f 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModel.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual data class TimelineItemDaySeparatorModel( val formattedDate: String diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt index 0d1cb4d68a..76a5b72807 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemDaySeparatorModelProvider.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual import androidx.compose.ui.tooling.preview.PreviewParameterProvider diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemLoadingModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemLoadingModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemLoadingModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemLoadingModel.kt index 334fbd09ed..4870177a84 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemLoadingModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemLoadingModel.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual object TimelineItemLoadingModel : TimelineItemVirtualModel diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemReadMarkerModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemReadMarkerModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemReadMarkerModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemReadMarkerModel.kt index ccc154acf5..247cd58212 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemReadMarkerModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemReadMarkerModel.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual object TimelineItemReadMarkerModel : TimelineItemVirtualModel diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemTimelineStartModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemTimelineStartModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemTimelineStartModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemTimelineStartModel.kt index a7493353f6..ab0ec4fdf8 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemTimelineStartModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemTimelineStartModel.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual object TimelineItemTimelineStartModel : TimelineItemVirtualModel diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt index dac0724dce..6d023bf748 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemUnknownVirtualModel.kt @@ -14,6 +14,6 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual object TimelineItemUnknownVirtualModel : TimelineItemVirtualModel diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemVirtualModel.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemVirtualModel.kt similarity index 90% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemVirtualModel.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemVirtualModel.kt index 9970375daa..a7911867f9 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/model/virtual/TimelineItemVirtualModel.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/virtual/TimelineItemVirtualModel.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.model.virtual +package io.element.android.features.messages.impl.timeline.model.virtual import androidx.compose.runtime.Immutable diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/MutableListExt.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/MutableListExt.kt similarity index 92% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/MutableListExt.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/MutableListExt.kt index 555cb4cb01..50810d3dfc 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/MutableListExt.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/MutableListExt.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.util +package io.element.android.features.messages.impl.timeline.util internal inline fun MutableList.invalidateLast() { val indexOfLast = size diff --git a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/toHtmlDocument.kt b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/toHtmlDocument.kt similarity index 93% rename from features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/toHtmlDocument.kt rename to features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/toHtmlDocument.kt index 199a6739b8..5a9a51796a 100644 --- a/features/messages/src/main/kotlin/io/element/android/features/messages/timeline/util/toHtmlDocument.kt +++ b/features/messages/src/main/kotlin/io/element/android/features/messages/impl/timeline/util/toHtmlDocument.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.messages.timeline.util +package io.element.android.features.messages.impl.timeline.util import org.jsoup.Jsoup import org.jsoup.nodes.Document diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/MessagesPresenterTest.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/MessagesPresenterTest.kt index 49786d1c49..97192985f1 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/MessagesPresenterTest.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/MessagesPresenterTest.kt @@ -22,30 +22,21 @@ import app.cash.molecule.RecompositionClock import app.cash.molecule.moleculeFlow import app.cash.turbine.test import com.google.common.truth.Truth.assertThat -import io.element.android.features.messages.actionlist.ActionListPresenter -import io.element.android.features.messages.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.actionlist.ActionListPresenter +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction import io.element.android.features.messages.fixtures.aMessageEvent import io.element.android.features.messages.fixtures.aTimelineItemsFactory -import io.element.android.features.messages.textcomposer.MessageComposerPresenter -import io.element.android.features.messages.timeline.TimelinePresenter -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.TimelineItemReactions -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextContent -import io.element.android.libraries.core.coroutine.CoroutineDispatchers -import io.element.android.libraries.designsystem.components.avatar.AvatarData +import io.element.android.features.messages.impl.MessagesEvents +import io.element.android.features.messages.impl.MessagesPresenter +import io.element.android.features.messages.impl.textcomposer.MessageComposerPresenter +import io.element.android.features.messages.impl.timeline.TimelinePresenter import io.element.android.libraries.matrix.room.MatrixRoom import io.element.android.libraries.matrixtest.AN_EVENT_ID -import io.element.android.libraries.matrixtest.A_MESSAGE import io.element.android.libraries.matrixtest.A_ROOM_ID -import io.element.android.libraries.matrixtest.A_USER_ID -import io.element.android.libraries.matrixtest.A_USER_NAME import io.element.android.libraries.matrixtest.room.FakeMatrixRoom import io.element.android.libraries.textcomposer.MessageComposerMode -import kotlinx.collections.immutable.persistentListOf import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.TestScope -import kotlinx.coroutines.test.UnconfinedTestDispatcher import kotlinx.coroutines.test.runTest import org.junit.Test diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/actionlist/ActionListPresenterTest.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/actionlist/ActionListPresenterTest.kt index 2c0f9164a3..aefe06f438 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/actionlist/ActionListPresenterTest.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/actionlist/ActionListPresenterTest.kt @@ -22,12 +22,15 @@ import app.cash.molecule.RecompositionClock import app.cash.molecule.moleculeFlow import app.cash.turbine.test import com.google.common.truth.Truth.assertThat -import io.element.android.features.messages.actionlist.model.TimelineItemAction -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.TimelineItemReactions -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemRedactedContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextContent +import io.element.android.features.messages.impl.actionlist.ActionListEvents +import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction +import io.element.android.features.messages.impl.actionlist.ActionListPresenter +import io.element.android.features.messages.impl.actionlist.ActionListState +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextContent import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrixtest.AN_EVENT_ID import io.element.android.libraries.matrixtest.A_MESSAGE @@ -37,7 +40,6 @@ import kotlinx.collections.immutable.persistentListOf import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runTest import org.junit.Test -import org.matrix.rustcomponents.sdk.TimelineItemContent class ActionListPresenterTest { @Test diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/aMessageEvent.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/aMessageEvent.kt index 9e665be409..68cfc1150c 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/aMessageEvent.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/aMessageEvent.kt @@ -16,10 +16,10 @@ package io.element.android.features.messages.fixtures -import io.element.android.features.messages.timeline.model.TimelineItem -import io.element.android.features.messages.timeline.model.TimelineItemReactions -import io.element.android.features.messages.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.timeline.model.event.TimelineItemTextContent +import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItemReactions +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent +import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextContent import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrixtest.AN_EVENT_ID import io.element.android.libraries.matrixtest.A_MESSAGE diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/timelineItemsFactory.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/timelineItemsFactory.kt index fc4cecf203..75ba0ff070 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/timelineItemsFactory.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/fixtures/timelineItemsFactory.kt @@ -17,20 +17,20 @@ package io.element.android.features.messages.fixtures import io.element.android.features.messages.fakes.FakeDaySeparatorFormatter -import io.element.android.features.messages.timeline.factories.TimelineItemsFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentFailedToParseMessageFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentFailedToParseStateFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentMessageFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentProfileChangeFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentRedactedFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentRoomMembershipFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentStateFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentStickerFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemContentUTDFactory -import io.element.android.features.messages.timeline.factories.event.TimelineItemEventFactory -import io.element.android.features.messages.timeline.factories.virtual.TimelineItemDaySeparatorFactory -import io.element.android.features.messages.timeline.factories.virtual.TimelineItemVirtualFactory +import io.element.android.features.messages.impl.timeline.factories.TimelineItemsFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentFailedToParseMessageFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentFailedToParseStateFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentMessageFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentProfileChangeFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentRedactedFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentRoomMembershipFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentStateFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentStickerFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemContentUTDFactory +import io.element.android.features.messages.impl.timeline.factories.event.TimelineItemEventFactory +import io.element.android.features.messages.impl.timeline.factories.virtual.TimelineItemDaySeparatorFactory +import io.element.android.features.messages.impl.timeline.factories.virtual.TimelineItemVirtualFactory internal fun aTimelineItemsFactory() = TimelineItemsFactory( dispatchers = testCoroutineDispatchers(), diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenterTest.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenterTest.kt index 8278acd13e..5782e08416 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenterTest.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/textcomposer/MessageComposerPresenterTest.kt @@ -23,6 +23,9 @@ import app.cash.molecule.moleculeFlow import app.cash.turbine.ReceiveTurbine import app.cash.turbine.test import com.google.common.truth.Truth.assertThat +import io.element.android.features.messages.impl.textcomposer.MessageComposerEvents +import io.element.android.features.messages.impl.textcomposer.MessageComposerPresenter +import io.element.android.features.messages.impl.textcomposer.MessageComposerState import io.element.android.libraries.core.data.StableCharSequence import io.element.android.libraries.matrixtest.ANOTHER_MESSAGE import io.element.android.libraries.matrixtest.AN_EVENT_ID diff --git a/features/messages/src/test/kotlin/io/element/android/features/messages/timeline/TimelinePresenterTest.kt b/features/messages/src/test/kotlin/io/element/android/features/messages/timeline/TimelinePresenterTest.kt index b209d4ce5e..94641cf314 100644 --- a/features/messages/src/test/kotlin/io/element/android/features/messages/timeline/TimelinePresenterTest.kt +++ b/features/messages/src/test/kotlin/io/element/android/features/messages/timeline/TimelinePresenterTest.kt @@ -23,6 +23,8 @@ import app.cash.molecule.moleculeFlow import app.cash.turbine.test import com.google.common.truth.Truth.assertThat import io.element.android.features.messages.fixtures.aTimelineItemsFactory +import io.element.android.features.messages.impl.timeline.TimelineEvents +import io.element.android.features.messages.impl.timeline.TimelinePresenter import io.element.android.libraries.matrixtest.AN_EVENT_ID import io.element.android.libraries.matrixtest.room.FakeMatrixRoom import io.element.android.libraries.matrixtest.timeline.FakeMatrixTimeline