Loading core/ui/compose/designsystem/src/debug/kotlin/app/k9mail/core/ui/compose/designsystem/organism/drawer/NavigationDrawerItemBadgePreview.kt +13 −1 Original line number Diff line number Diff line Loading @@ -3,13 +3,25 @@ package app.k9mail.core.ui.compose.designsystem.organism.drawer import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.Preview import app.k9mail.core.ui.compose.designsystem.PreviewWithThemes import app.k9mail.core.ui.compose.designsystem.atom.icon.Icons @Composable @Preview(showBackground = true) internal fun NavigationDrawerItemBadgePreview() { PreviewWithThemes { NavigationDrawerItemBadge( label = "100+", label = "99+", ) } } @Composable @Preview(showBackground = true) internal fun NavigationDrawerItemBadgeWithIconPreview() { PreviewWithThemes { NavigationDrawerItemBadge( label = "99+", imageVector = Icons.Outlined.Info, ) } } core/ui/compose/designsystem/src/main/kotlin/app/k9mail/core/ui/compose/designsystem/organism/drawer/NavigationDrawerItemBadge.kt +29 −3 Original line number Diff line number Diff line package app.k9mail.core.ui.compose.designsystem.organism.drawer import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.vector.ImageVector import app.k9mail.core.ui.compose.designsystem.atom.icon.Icon import app.k9mail.core.ui.compose.designsystem.atom.text.TextLabelLarge import app.k9mail.core.ui.compose.theme2.MainTheme /** * A badge for a navigation drawer item with an optional icon. * * @param label The label to display. * @param modifier The modifier to apply. * @param imageVector The image vector to display (optional). */ @Composable fun NavigationDrawerItemBadge( label: String, modifier: Modifier = Modifier, imageVector: ImageVector? = null, ) { Row( modifier = modifier, verticalAlignment = Alignment.CenterVertically, ) { if (imageVector != null) { Icon( imageVector = imageVector, modifier = Modifier.size(MainTheme.sizes.iconSmall) .padding(end = MainTheme.spacings.quarter), ) } TextLabelLarge( text = label, modifier = modifier, ) } } Loading
core/ui/compose/designsystem/src/debug/kotlin/app/k9mail/core/ui/compose/designsystem/organism/drawer/NavigationDrawerItemBadgePreview.kt +13 −1 Original line number Diff line number Diff line Loading @@ -3,13 +3,25 @@ package app.k9mail.core.ui.compose.designsystem.organism.drawer import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.Preview import app.k9mail.core.ui.compose.designsystem.PreviewWithThemes import app.k9mail.core.ui.compose.designsystem.atom.icon.Icons @Composable @Preview(showBackground = true) internal fun NavigationDrawerItemBadgePreview() { PreviewWithThemes { NavigationDrawerItemBadge( label = "100+", label = "99+", ) } } @Composable @Preview(showBackground = true) internal fun NavigationDrawerItemBadgeWithIconPreview() { PreviewWithThemes { NavigationDrawerItemBadge( label = "99+", imageVector = Icons.Outlined.Info, ) } }
core/ui/compose/designsystem/src/main/kotlin/app/k9mail/core/ui/compose/designsystem/organism/drawer/NavigationDrawerItemBadge.kt +29 −3 Original line number Diff line number Diff line package app.k9mail.core.ui.compose.designsystem.organism.drawer import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.vector.ImageVector import app.k9mail.core.ui.compose.designsystem.atom.icon.Icon import app.k9mail.core.ui.compose.designsystem.atom.text.TextLabelLarge import app.k9mail.core.ui.compose.theme2.MainTheme /** * A badge for a navigation drawer item with an optional icon. * * @param label The label to display. * @param modifier The modifier to apply. * @param imageVector The image vector to display (optional). */ @Composable fun NavigationDrawerItemBadge( label: String, modifier: Modifier = Modifier, imageVector: ImageVector? = null, ) { Row( modifier = modifier, verticalAlignment = Alignment.CenterVertically, ) { if (imageVector != null) { Icon( imageVector = imageVector, modifier = Modifier.size(MainTheme.sizes.iconSmall) .padding(end = MainTheme.spacings.quarter), ) } TextLabelLarge( text = label, modifier = modifier, ) } }