Updated on 2026-08-14

This commit is contained in:
Tangem 2026-06-29 18:13:29 +05:00
parent 269e986601
commit 6f3007f0e3
4 changed files with 27 additions and 3 deletions

View file

@ -18,7 +18,7 @@ import com.tangem.core.ui.res.TangemThemePreviewRedesign
import com.tangem.core.ui.res.generated.icons.Icons
import com.tangem.core.ui.res.generated.icons.ic_cloud_24_filled
private const val DEFAULT_DEVICE_ICON_COLOR = 0xFF2C2C2C
private const val DEFAULT_DEVICE_ICON_COLOR = 0xFF595963
private const val DEFAULT_BORDER_COLOR = 0x1A1E1E1E
/**

View file

@ -2,6 +2,7 @@ package com.tangem.features.commonfeatures.api.choosetoken.model
import androidx.compose.runtime.Immutable
import com.tangem.core.ui.components.tokenlist.state.TokensListItemUM
import com.tangem.core.ui.ds.image.DeviceIconUM
import com.tangem.core.ui.extensions.TextReference
import kotlinx.collections.immutable.ImmutableList
import kotlinx.collections.immutable.persistentListOf
@ -22,6 +23,7 @@ data class WalletTabUM(
val count: TextReference?,
val isSelected: Boolean,
val onClick: () -> Unit,
val deviceIcon: DeviceIconUM,
)
@Immutable

View file

@ -1,5 +1,6 @@
package com.tangem.features.commonfeatures.impl.choosetoken.model
import com.tangem.common.ui.userwallet.converter.WalletIconUMConverter
import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.stringReference
import com.tangem.domain.models.wallet.UserWallet
@ -7,6 +8,7 @@ import com.tangem.domain.models.wallet.UserWalletId
import com.tangem.domain.models.wallet.isMultiCurrency
import com.tangem.domain.wallets.usecase.GetSelectedWalletUseCase
import com.tangem.domain.wallets.usecase.GetUserWalletUseCase
import com.tangem.domain.wallets.usecase.GetWalletIconUseCase
import com.tangem.domain.wallets.usecase.GetWalletsUseCase
import com.tangem.features.commonfeatures.api.choosetoken.ChooseTokenBridge
import com.tangem.features.commonfeatures.api.choosetoken.ChooseTokenBridgeInternal.SearchQuery
@ -30,6 +32,8 @@ internal class PortfolioFullBlockDelegate @AssistedInject constructor(
private val settingContextUseCase: SettingContextUseCase,
private val getWalletsUseCase: GetWalletsUseCase,
private val getUserWalletUseCase: GetUserWalletUseCase,
private val getWalletIconUseCase: GetWalletIconUseCase,
private val walletIconUMConverter: WalletIconUMConverter,
private val dispatchers: CoroutineDispatcherProvider,
private val selectedWalletUseCase: GetSelectedWalletUseCase,
@Assisted private val modelScope: CoroutineScope,
@ -87,6 +91,7 @@ internal class PortfolioFullBlockDelegate @AssistedInject constructor(
onClick = { selectWalletTab(walletId) },
isSelected = selectedWalletId == walletId,
count = searchResultCount,
deviceIcon = walletIconUMConverter.convert(getWalletIconUseCase(wallet)),
)
}
val walletListUM = if (walletsUM.size != 1) {

View file

@ -12,6 +12,7 @@ import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.platform.testTag
@ -38,6 +39,8 @@ import com.tangem.core.ui.components.tokenlist.state.PortfolioItemContentUM
import com.tangem.core.ui.components.tokenlist.state.PortfolioTokensListItemUM
import com.tangem.core.ui.components.tokenlist.state.TokensListItemUM
import com.tangem.core.ui.decorations.roundedShapeItemDecoration
import com.tangem.core.ui.ds.image.DeviceIconUM
import com.tangem.core.ui.ds.image.TangemDeviceIcon
import com.tangem.core.ui.extensions.*
import com.tangem.core.ui.res.LocalRedesignEnabled
import com.tangem.core.ui.res.TangemTheme
@ -262,6 +265,13 @@ private fun WalletTabItem(state: WalletTabUM, modifier: Modifier = Modifier) {
style = TangemTheme.typography2.bodySemibold16,
)
Spacer(modifier = Modifier.width(4.dp))
TangemDeviceIcon(
state = state.deviceIcon,
modifier = Modifier.size(20.dp),
)
val count = state.count
if (count != null) {
Spacer(modifier = Modifier.width(8.dp))
@ -464,24 +474,31 @@ private val wallets
isSelected = true,
onClick = {},
count = null,
deviceIcon = DeviceIconUM.Card(
mainColor = Color.DarkGray,
secondColor = null,
),
),
WalletTabUM(
text = TextReference.Str(value = "Wallet 1"),
isSelected = true,
onClick = {},
count = stringReference("3"),
count = null,
deviceIcon = DeviceIconUM.Mobile,
),
WalletTabUM(
text = TextReference.Str(value = "Wallet 2"),
isSelected = false,
onClick = {},
count = stringReference("333"),
count = stringReference("3"),
deviceIcon = DeviceIconUM.Ring(),
),
WalletTabUM(
text = TextReference.Str(value = "Wallet 3"),
isSelected = false,
onClick = {},
count = null,
deviceIcon = DeviceIconUM.Mobile,
),
)