From 1f8af50d6ad180e29eaa575ade699aac7482c96a Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 19 Aug 2024 22:22:48 +0400 Subject: [PATCH] Updated on 2026-08-14 --- core/ui/build.gradle.kts | 3 +- .../core/ui/components/token}/TokenItem.kt | 123 +++++++++++++++--- .../token/internal}/LockedRectangle.kt | 2 +- .../token/internal}/NonFiatContentBlock.kt | 6 +- .../token/internal}/TokenCryptoAmount.kt | 6 +- .../token/internal}/TokenFiatAmount.kt | 6 +- .../components/token/internal}/TokenPrice.kt | 6 +- .../components/token/internal}/TokenTitle.kt | 6 +- .../components/token}/state/TokenItemState.kt | 4 +- .../presentation/common/WalletPreviewData.kt | 121 ++--------------- .../common/preview/WalletScreenPreviewData.kt | 2 +- .../organizetokens/OrganizeTokensScreen.kt | 2 +- .../organizetokens/model/DraggableItem.kt | 2 +- .../CryptoCurrencyToDraggableItemConverter.kt | 2 +- .../state/model/WalletTokensListState.kt | 2 +- .../converter/TokenItemStateConverter.kt | 2 +- .../multicurrency/MultiCurrencyContentItem.kt | 2 +- 17 files changed, 143 insertions(+), 154 deletions(-) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component => core/ui/src/main/java/com/tangem/core/ui/components/token}/TokenItem.kt (76%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/LockedRectangle.kt (88%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/NonFiatContentBlock.kt (93%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/TokenCryptoAmount.kt (89%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/TokenFiatAmount.kt (92%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/TokenPrice.kt (95%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/token => core/ui/src/main/java/com/tangem/core/ui/components/token/internal}/TokenTitle.kt (92%) rename {features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common => core/ui/src/main/java/com/tangem/core/ui/components/token}/state/TokenItemState.kt (98%) diff --git a/core/ui/build.gradle.kts b/core/ui/build.gradle.kts index 4758911a25..3781bde624 100644 --- a/core/ui/build.gradle.kts +++ b/core/ui/build.gradle.kts @@ -1,5 +1,3 @@ -import com.android.ide.common.resources.generateLocaleList - plugins { alias(deps.plugins.android.library) alias(deps.plugins.kotlin.android) @@ -42,6 +40,7 @@ dependencies { implementation(deps.compose.coil) implementation(deps.compose.navigation) implementation(deps.compose.navigation.hilt) + implementation(deps.compose.reorderable) /** Other libraries */ implementation(deps.compose.accompanist.systemUiController) diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/TokenItem.kt b/core/ui/src/main/java/com/tangem/core/ui/components/token/TokenItem.kt similarity index 76% rename from features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/TokenItem.kt rename to core/ui/src/main/java/com/tangem/core/ui/components/token/TokenItem.kt index 1917d4e4c8..8bdd28b235 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/common/component/TokenItem.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/components/token/TokenItem.kt @@ -1,4 +1,4 @@ -package com.tangem.feature.wallet.presentation.common.component +package com.tangem.core.ui.components.token import androidx.compose.foundation.ExperimentalFoundationApi import androidx.compose.foundation.background @@ -16,15 +16,18 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.tooling.preview.datasource.CollectionPreviewParameterProvider import androidx.compose.ui.unit.Constraints +import com.tangem.core.ui.R import com.tangem.core.ui.components.currency.icon.CurrencyIcon +import com.tangem.core.ui.components.currency.icon.CurrencyIconState import com.tangem.core.ui.components.marketprice.PriceChangeType +import com.tangem.core.ui.components.token.internal.* +import com.tangem.core.ui.components.token.state.TokenItemState import com.tangem.core.ui.extensions.rememberHapticFeedback +import com.tangem.core.ui.res.TangemColorPalette import com.tangem.core.ui.res.TangemTheme import com.tangem.core.ui.res.TangemThemePreview -import com.tangem.feature.wallet.presentation.common.WalletPreviewData -import com.tangem.feature.wallet.presentation.common.component.token.* -import com.tangem.feature.wallet.presentation.common.state.TokenItemState import org.burnoutcrew.reorderable.ReorderableLazyListState +import java.util.UUID import kotlin.math.max private const val TITLE_MIN_WIDTH_COEFFICIENT = 0.3 @@ -35,7 +38,7 @@ private enum class LayoutId { } @Composable -internal fun TokenItem( +fun TokenItem( state: TokenItemState, isBalanceHidden: Boolean, modifier: Modifier = Modifier, @@ -397,8 +400,8 @@ private fun Preview_TokenItem_InLight(@PreviewParameter(TokenItemStateProvider:: private class TokenItemStateProvider : CollectionPreviewParameterProvider( collection = listOf( - WalletPreviewData.tokenItemVisibleState.copy( - iconState = WalletPreviewData.coinIconState.copy(showCustomBadge = true), + tokenItemVisibleState.copy( + iconState = coinIconState.copy(showCustomBadge = true), titleState = TokenItemState.TitleState.Content( text = "PolygonPolygonPolygonPolygonPolygonPolygon", hasPending = true, @@ -414,13 +417,101 @@ private class TokenItemStateProvider : CollectionPreviewParameterProvider