Segmented control components¶
Simple helpers around dmc SegmentedControl component.
Segmented control¶
Helper method to create a simple segmented control, with sensible default parameters
def segmented_control(id: str,
label: str,
value: str | None = None,
data: list[str] | None = None
) -> dmc.SegmentedControl:
"""
Renders a dmc.SegmentedControl that allows to toggle between different values
"""
return dmc.SegmentedControl(
id=id,
label=label,
value=value,
data=data or []
)
Segmented control with label¶
Helper method for creating a segmented control with a stylized label, with sensible default parameters for the select
def segmented_control_label(id: str,
label: str,
value: str | None = None,
data: list[str] | None = None,
size: str = 'md',
c: str = '#A0AEC0') -> dmc.Stack:
"""
Renders a segmented control with a stylized label
"""
return dmc.Stack([
dmc.Text(label, c=c),
dmc.SegmentedControl(
id=id,
value=value,
data=data or [],
size=size,
)
], gap='xs', w='100%')