Package-level declarations

JengaCard (filled, outlined, selectable) and JengaCardFooter.

Types

Link copied to clipboard
class JengaCardColors(val container: Color, val border: Color)

Resolved colors for a JengaCard.

Link copied to clipboard

Defaults and token mappings for JengaCard.

Link copied to clipboard
class JengaCardFooterColors(val container: Color, val content: Color)

Resolved colors for a JengaCardFooter. Override via JengaCardFooterDefaults.colors.

Link copied to clipboard

Defaults for JengaCardFooter. Each one follows the theme's JengaCardFooterStyle.

Link copied to clipboard
class JengaCardFooterStyle(val contentPadding: PaddingValues? = null, val textStyle: TextStyle? = null, val colors: JengaCardFooterColors? = null)

Theme-wide style for every JengaCardFooter, set through io.github.joelkanyi.jenga.theme.JengaComponentStyles.cardFooter. A null value keeps Jenga's default; arguments passed to a call still win.

Link copied to clipboard
class JengaCardStyle(val shape: Shape? = null, val contentPadding: PaddingValues? = null, val borderWidth: Dp? = null, val disabledAlpha: Float? = null, val elevated: JengaCardColors? = null, val outlined: JengaCardColors? = null, val filled: JengaCardColors? = null)

Theme-wide style for every JengaCard, set through io.github.joelkanyi.jenga.theme.JengaComponentStyles.card. A null value keeps Jenga's default; arguments passed to a JengaCard call still win.

Link copied to clipboard

Visual style of a JengaCard.

Functions

Link copied to clipboard
fun JengaCard(modifier: Modifier = Modifier, variant: JengaCardVariant = JengaCardVariant.Elevated, onClick: () -> Unit? = null, enabled: Boolean = true, selected: Boolean = false, shape: Shape = JengaCardDefaults.shape, colors: JengaCardColors = JengaCardDefaults.colors(variant, selected), elevation: Dp = JengaCardDefaults.elevation(variant), contentPadding: PaddingValues = JengaTheme.components.card?.contentPadding ?: JengaCardDefaults.contentPadding, borderWidth: Dp = if (selected) { JengaCardDefaults.SelectedBorderWidth } else { JengaTheme.components.card?.borderWidth ?: JengaCardDefaults.BorderWidth }, disabledAlpha: Float = JengaTheme.components.card?.disabledAlpha ?: JengaCardDefaults.DisabledAlpha, content: @Composable ColumnScope.() -> Unit)

A surface that groups related content.

Link copied to clipboard
fun JengaCardFooter(text: String, modifier: Modifier = Modifier, leadingIcon: @Composable () -> Unit? = null, contentPadding: PaddingValues = JengaCardFooterDefaults.contentPadding, textStyle: TextStyle = JengaCardFooterDefaults.textStyle, colors: JengaCardFooterColors = JengaCardFooterDefaults.colors())

A quiet footer row for the bottom of a JengaCard: a sunk strip with an optional icon and a short line of text (e.g. "Last updated 2h ago"). Place it last inside a card whose contentPadding is zero so it spans the full width.