Skip to main content
Give us your valuable feedback

It will help us understand how we can serve you better

Give feedback

Components

Chips

Chips allow users to enter information, make selections, filter content, or trigger actions.

banner-Chips
Component Status Details

Status component contains a list of checks and completeness that has been tested and owned by each component

check-list-icon We don't use color as the only visual tool to convey information.
check-list-icon The component’s structure and properties include relevant options such as variant, style, size, orientation, optional iconography, decorations, selection, error state, etc.check-list-icon The title is the component name that uses the frame base component template.check-list-icon The base component name contains: .Base & "Component Name" if there is more than one.check-list-icon All component properties use the Legion foundation.
check-list-icon We can change all the parts that are connected to the component base.check-list-icon The inside of the base component remains connected to the master component.check-list-icon All variant options are not damaged when we change from one to another.check-list-icon Overriding changes to components will not reset other variants.
check-list-icon Component's already has component specs documentation.

Status

Resources

Upcoming

Chips allow users to enter information, make selections, filter content, or trigger actions.

While buttons are expected to appear consistently and with familiar calls to action, chips should appear dynamically as a group of multiple interactive elements.

chips usage

Variants

Legion has two theme variants of chips :

  1. Primary
  2. Secondary

and also have two size variant of chips :

  1. Large
  2. Small

Usage

Primary

var selected by remember { mutableStateOf(false) }
LgnChip(
selected = selected,
onClick = { selected = !selected },
label = { Text(text = "Primary") }
)

Secondary

var selected by remember { mutableStateOf(false) }
LgnChip(
selected = selected,
onClick = { selected = !selected },
label = { Text(text = "Secondary") },
colors = LgnChipDefaults.SolidTheme.secondary()
)

Large

Static in xml

var selected by remember { mutableStateOf(false) }
LgnChip(
selected = selected,
onClick = { selected = !selected },
label = { Text(text = "Large") },
size = LgnChipSize.Large
)

Small

var selected by remember { mutableStateOf(false) }
LgnChip(
selected = selected,
onClick = { selected = !selected },
label = { Text(text = "Small") },
size = LgnChipSize.Small
)

Attributes

ParametersTypeDescription
labelStringSet label of chip
selectedBooleanSet state of chip
onClickFunctioncalled when this chip is clicked
colorsLgnChipColors[LgnChipColors] that will be used to resolve the colors used for this chip in different states. See [LgnChipDefaults.solidColors]
enabledBooleanSet whether the button can be pressed or not
iconLeftComposableSet left icon of chip
iconRightComposableSet Right icon of chip
avatarComposableoptional image to be displayed on the left side of the chip
shapeShapedefines the shape of this chip’s container
borderLgnChipBorder[LgnChipBorder] the border to draw around the container of this chip. Pass null for no border. See [LgnChipDefaults.border]
sizeLgnChipSizeSet size of chip by LgnChipSize.Small
modifierModifier[Modifier] to be applied to the chip
interactionSourceMutableInteractionSource[MutableInteractionSource] representing the source of the interactions