From 8319af3a4717938104cbe92a0d31382da87cef4c Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 14 Feb 2024 16:10:06 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../tangem/feature/swap/ui/ProviderItem.kt | 118 +++++++++--------- 1 file changed, 58 insertions(+), 60 deletions(-) diff --git a/features/swap/presentation/src/main/java/com/tangem/feature/swap/ui/ProviderItem.kt b/features/swap/presentation/src/main/java/com/tangem/feature/swap/ui/ProviderItem.kt index eaddec7e0c..903818aa1b 100644 --- a/features/swap/presentation/src/main/java/com/tangem/feature/swap/ui/ProviderItem.kt +++ b/features/swap/presentation/src/main/java/com/tangem/feature/swap/ui/ProviderItem.kt @@ -391,75 +391,73 @@ private fun PermissionBadgeItem(modifier: Modifier = Modifier) { } } -@Preview +// region Preview +@Preview(showBackground = true, widthDp = 360) @Composable -private fun ProviderItem_Loading_Preview() { - Column { - TangemTheme(isDark = false) { - ProviderItemBlock(state = ProviderState.Loading()) - } - - SpacerH24() - - TangemTheme(isDark = true) { - ProviderItemBlock(state = ProviderState.Loading()) - } +private fun ProviderItemPreview_Light( + @PreviewParameter(ProviderItemParameterProvider::class) state: Pair, +) { + TangemTheme { + ProviderItem( + modifier = Modifier.background(TangemTheme.colors.background.action), + state = state.first, + isSelected = state.second, + ) } } -@Preview +@Preview(showBackground = true, widthDp = 360) @Composable -private fun ProviderItem_Content_Preview() { - val state = ProviderState.Content( - id = "1", - name = "1inch", - type = "DEX", - iconUrl = "", - subtitle = stringReference("1 000 000"), - additionalBadge = ProviderState.AdditionalBadge.PermissionRequired, - percentLowerThenBest = PercentLowerThanBest.Value(-1.0f), - selectionType = ProviderState.SelectionType.SELECT, - onProviderClick = {}, - ) - Column { - TangemTheme(isDark = false) { - ProviderItemBlock(state = state) - } - - SpacerH24() - - TangemTheme(isDark = true) { - ProviderItemBlock(state = state) - } +private fun ProviderItemPreview_Dark( + @PreviewParameter(ProviderItemParameterProvider::class) state: Pair, +) { + TangemTheme(isDark = true) { + ProviderItem( + modifier = Modifier.background(TangemTheme.colors.background.action), + state = state.first, + isSelected = state.second, + ) } } -@Preview -@Composable -private fun ProviderItem_Unavailable_Preview() { - val state = ProviderState.Unavailable( - id = "1", - name = "1inch", - type = "DEX", - iconUrl = "", - selectionType = ProviderState.SelectionType.SELECT, - alertText = stringReference("Unavailable"), - ) - Column { - TangemTheme(isDark = false) { - ProviderItemBlock(state = state) - } +private class ProviderItemParameterProvider : CollectionPreviewParameterProvider>( + collection = buildList { + val contentState = ProviderState.Content( + id = "1", + name = "1inch", + type = "DEX", + iconUrl = "", + subtitle = stringReference(value = "1 132,46 MATIC"), + additionalBadge = ProviderState.AdditionalBadge.PermissionRequired, + percentLowerThenBest = PercentLowerThanBest.Empty, + selectionType = ProviderState.SelectionType.SELECT, + onProviderClick = {}, + ) + val contentState2 = contentState.copy( + percentLowerThenBest = PercentLowerThanBest.Value(value = 5f), + ) + val unavailableState = ProviderState.Unavailable( + id = "1", + name = "1inch", + type = "DEX", + iconUrl = "", + alertText = stringReference(value = "Not available"), + selectionType = ProviderState.SelectionType.SELECT, + onProviderClick = {}, + ) + val loadingState = ProviderState.Loading() - SpacerH24() + add(contentState to true) + add(contentState to false) - TangemTheme(isDark = true) { - ProviderItemBlock(state = state) - } + add(contentState2 to true) + add(contentState2 to false) - SpacerH24() + add(unavailableState to true) + add(unavailableState to false) - TangemTheme(isDark = true) { - ProviderItem(state = state, isSelected = true) - } - } -} \ No newline at end of file + add(loadingState to true) + add(loadingState to false) + }, +) +// endregion Preview \ No newline at end of file