diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/FeedComponentModel.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/FeedComponentModel.kt index d2690e25b3..a54a7d58df 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/FeedComponentModel.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/FeedComponentModel.kt @@ -172,7 +172,10 @@ internal class FeedComponentModel @Inject constructor( currentDate = getCurrentDate(), feedListSearchBar = FeedListSearchBar( placeholderText = resourceReference(R.string.markets_search_header_title), - onBarClick = { params.feedClickIntents.onMarketOpenClick(null) }, + onBarClick = { + analyticsEventHandler.send(FeedAnalyticsEvent.TokenSearchedClicked()) + params.feedClickIntents.onMarketOpenClick(null) + }, ), feedListCallbacks = FeedListCallbacks( onSearchClick = {}, diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/analytics/FeedAnalyticsEvent.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/analytics/FeedAnalyticsEvent.kt index c61c143dd9..cd869f6455 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/analytics/FeedAnalyticsEvent.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/feed/analytics/FeedAnalyticsEvent.kt @@ -88,6 +88,8 @@ internal sealed class FeedAnalyticsEvent( ), ) + class TokenSearchedClicked : FeedAnalyticsEvent(event = "Token Searched Clicked") + private companion object { const val IS_NOT_HTTP_ERROR = "Is not http error" } diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/MarketsListModel.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/MarketsListModel.kt index 063129a71e..2daaa70082 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/MarketsListModel.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/MarketsListModel.kt @@ -75,6 +75,7 @@ internal class MarketsListModel @Inject constructor( shouldAlwaysShowSearchBar = Provider { params.shouldAlwaysShowSearchBar }, preselectedSortType = Provider { params.preselectedSortType }, onBackClick = params.onBackClicked, + analyticsEventHandler = analyticsEventHandler, ) } diff --git a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/statemanager/MarketsListUMStateManager.kt b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/statemanager/MarketsListUMStateManager.kt index 92e8aeafea..e503e85087 100644 --- a/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/statemanager/MarketsListUMStateManager.kt +++ b/features/feed/impl/src/main/kotlin/com/tangem/features/feed/model/market/list/statemanager/MarketsListUMStateManager.kt @@ -2,6 +2,7 @@ package com.tangem.features.feed.model.market.list.statemanager import androidx.compose.runtime.Stable import com.tangem.common.ui.markets.models.MarketsListItemUM +import com.tangem.core.analytics.api.AnalyticsEventHandler import com.tangem.core.ui.components.bottomsheets.TangemBottomSheetConfig import com.tangem.core.ui.components.fields.entity.SearchBarUM import com.tangem.core.ui.event.consumedEvent @@ -9,12 +10,8 @@ import com.tangem.core.ui.event.triggeredEvent import com.tangem.core.ui.extensions.resourceReference import com.tangem.domain.models.currency.CryptoCurrency import com.tangem.features.feed.impl.R -import com.tangem.features.feed.model.market.list.state.ListUM -import com.tangem.features.feed.model.market.list.state.MarketsListUM -import com.tangem.features.feed.model.market.list.state.MarketsNotificationUM -import com.tangem.features.feed.model.market.list.state.MarketsSearchBar -import com.tangem.features.feed.model.market.list.state.SortByBottomSheetContentUM -import com.tangem.features.feed.model.market.list.state.SortByTypeUM +import com.tangem.features.feed.model.feed.analytics.FeedAnalyticsEvent +import com.tangem.features.feed.model.market.list.state.* import com.tangem.utils.Provider import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.toImmutableList @@ -35,6 +32,7 @@ internal class MarketsListUMStateManager( private val onTokenClick: (MarketsListItemUM) -> Unit, private val onShowTokensUnder100kClicked: () -> Unit, private val onBackClick: () -> Unit, + private val analyticsEventHandler: AnalyticsEventHandler, ) { val state = MutableStateFlow(state()) @@ -246,7 +244,10 @@ internal class MarketsListUMStateManager( ), ), marketsNotificationUM = null, - onSearchClicked = { changeSearchBarIsActive(true) }, + onSearchClicked = { + analyticsEventHandler.send(FeedAnalyticsEvent.TokenSearchedClicked()) + changeSearchBarIsActive(true) + }, ) private fun onBottomSheetOptionClicked(sortByTypeUM: SortByTypeUM) {