From 6cfb3fb99d320f0308555f0c0b1e3af36a41200b Mon Sep 17 00:00:00 2001 From: Tangem Date: Sun, 29 Oct 2023 20:37:46 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/core/ui/components/Buttons.kt | 6 ++++++ .../buttons/common/TangemButtonSize.kt | 20 ++++++++++++++++--- .../components/notifications/Notification.kt | 6 ++++++ .../tangem/core/ui/res/TangemTypography.kt | 2 +- 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/core/ui/src/main/java/com/tangem/core/ui/components/Buttons.kt b/core/ui/src/main/java/com/tangem/core/ui/components/Buttons.kt index 385824799e..3e60c55ef8 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/components/Buttons.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/components/Buttons.kt @@ -77,6 +77,7 @@ fun PrimaryButton( text: String, onClick: () -> Unit, modifier: Modifier = Modifier, + size: TangemButtonSize = TangemButtonSize.Default, showProgress: Boolean = false, enabled: Boolean = true, ) { @@ -88,6 +89,7 @@ fun PrimaryButton( colors = TangemButtonsDefaults.primaryButtonColors, enabled = enabled, showProgress = showProgress, + size = size, ) } @@ -100,6 +102,7 @@ fun PrimaryButtonIconEnd( @DrawableRes iconResId: Int, onClick: () -> Unit, modifier: Modifier = Modifier, + size: TangemButtonSize = TangemButtonSize.Default, showProgress: Boolean = false, enabled: Boolean = true, ) { @@ -111,6 +114,7 @@ fun PrimaryButtonIconEnd( colors = TangemButtonsDefaults.primaryButtonColors, enabled = enabled, showProgress = showProgress, + size = size, ) } @@ -144,6 +148,7 @@ fun SecondaryButton( text: String, onClick: () -> Unit, modifier: Modifier = Modifier, + size: TangemButtonSize = TangemButtonSize.Default, showProgress: Boolean = false, enabled: Boolean = true, ) { @@ -155,6 +160,7 @@ fun SecondaryButton( colors = TangemButtonsDefaults.secondaryButtonColors, enabled = enabled, showProgress = showProgress, + size = size, ) } diff --git a/core/ui/src/main/java/com/tangem/core/ui/components/buttons/common/TangemButtonSize.kt b/core/ui/src/main/java/com/tangem/core/ui/components/buttons/common/TangemButtonSize.kt index e64aaf1965..134ad1ddac 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/components/buttons/common/TangemButtonSize.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/components/buttons/common/TangemButtonSize.kt @@ -14,6 +14,7 @@ enum class TangemButtonSize { Selector, Action, RoundedAction, + WideAction, } @Composable @@ -25,12 +26,15 @@ internal fun TangemButtonSize.toHeightDp(): Dp = when (this) { TangemButtonSize.Action, TangemButtonSize.RoundedAction, -> TangemTheme.dimens.size36 + TangemButtonSize.WideAction -> TangemTheme.dimens.size40 } @Composable @ReadOnlyComposable internal fun TangemButtonSize.toShape(): Shape = when (this) { - TangemButtonSize.Default -> TangemTheme.shapes.roundedCornersMedium + TangemButtonSize.Default, + TangemButtonSize.WideAction, + -> TangemTheme.shapes.roundedCornersMedium TangemButtonSize.Text -> TangemTheme.shapes.roundedCornersSmall TangemButtonSize.Selector -> TangemTheme.shapes.roundedCornersSmall TangemButtonSize.Action -> TangemTheme.shapes.roundedCornersMedium @@ -40,7 +44,9 @@ internal fun TangemButtonSize.toShape(): Shape = when (this) { @Composable @ReadOnlyComposable internal fun TangemButtonSize.toIconPadding(): Dp = when (this) { - TangemButtonSize.Default -> TangemTheme.dimens.spacing4 + TangemButtonSize.Default, + TangemButtonSize.WideAction, + -> TangemTheme.dimens.spacing4 TangemButtonSize.Text -> TangemTheme.dimens.spacing8 TangemButtonSize.Selector -> 0.dp TangemButtonSize.Action, @@ -80,6 +86,12 @@ internal fun TangemButtonSize.toContentPadding(icon: TangemButtonIconPosition): start = horizontalPadding.first, end = horizontalPadding.second, ) + TangemButtonSize.WideAction -> PaddingValues( + top = TangemTheme.dimens.spacing10, + bottom = TangemTheme.dimens.spacing10, + start = horizontalPadding.first, + end = horizontalPadding.second, + ) } } @@ -87,7 +99,9 @@ internal fun TangemButtonSize.toContentPadding(icon: TangemButtonIconPosition): @ReadOnlyComposable internal fun TangemButtonSize.toHorizontalContentPadding(icon: TangemButtonIconPosition): Pair { return when (this) { - TangemButtonSize.Default -> TangemTheme.dimens.spacing32 to TangemTheme.dimens.spacing32 + TangemButtonSize.Default, + TangemButtonSize.WideAction, + -> TangemTheme.dimens.spacing32 to TangemTheme.dimens.spacing32 TangemButtonSize.Text -> when (icon) { is TangemButtonIconPosition.None -> TangemTheme.dimens.spacing16 to TangemTheme.dimens.spacing16 is TangemButtonIconPosition.Start -> TangemTheme.dimens.spacing14 to TangemTheme.dimens.spacing16 diff --git a/core/ui/src/main/java/com/tangem/core/ui/components/notifications/Notification.kt b/core/ui/src/main/java/com/tangem/core/ui/components/notifications/Notification.kt index 56b449ec3a..2f30c95eba 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/components/notifications/Notification.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/components/notifications/Notification.kt @@ -24,6 +24,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.tooling.preview.datasource.CollectionPreviewParameterProvider import com.tangem.core.ui.R import com.tangem.core.ui.components.* +import com.tangem.core.ui.components.buttons.common.TangemButtonSize import com.tangem.core.ui.extensions.TextReference import com.tangem.core.ui.extensions.resolveReference import com.tangem.core.ui.res.TangemTheme @@ -178,6 +179,7 @@ private fun SingleSecondaryButton(config: NotificationButtonsState.SecondaryButt text = config.text.resolveReference(), onClick = config.onClick, modifier = Modifier.fillMaxWidth(), + size = TangemButtonSize.WideAction, ) } @@ -189,12 +191,14 @@ private fun SinglePrimaryButton(config: NotificationButtonsState.PrimaryButtonCo iconResId = config.iconResId, onClick = config.onClick, modifier = Modifier.fillMaxWidth(), + size = TangemButtonSize.WideAction, ) } else { PrimaryButton( text = config.text.resolveReference(), onClick = config.onClick, modifier = Modifier.fillMaxWidth(), + size = TangemButtonSize.WideAction, ) } } @@ -206,12 +210,14 @@ private fun PairButtons(config: NotificationButtonsState.PairButtonsConfig) { text = config.secondaryText.resolveReference(), onClick = config.onSecondaryClick, modifier = Modifier.weight(weight = 1f), + size = TangemButtonSize.WideAction, ) PrimaryButton( text = config.primaryText.resolveReference(), onClick = config.onPrimaryClick, modifier = Modifier.weight(weight = 1f), + size = TangemButtonSize.WideAction, ) } } diff --git a/core/ui/src/main/java/com/tangem/core/ui/res/TangemTypography.kt b/core/ui/src/main/java/com/tangem/core/ui/res/TangemTypography.kt index 0187255098..f2572e21ff 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/res/TangemTypography.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/res/TangemTypography.kt @@ -78,7 +78,7 @@ data class TangemTypography internal constructor( fontSize = 14.sp, fontWeight = FontWeight.Medium, letterSpacing = TextUnit(value = 0.1f, type = TextUnitType.Sp), - lineHeight = TextUnit(value = 16f, type = TextUnitType.Sp), + lineHeight = TextUnit(value = 20f, type = TextUnitType.Sp), ), val caption1: TextStyle = TextStyle( fontFamily = RobotoFamily,