From 41f92c31e2c4790d5d3bb92d7262902b6f7ad3f8 Mon Sep 17 00:00:00 2001 From: Volpeon Date: Mon, 31 Mar 2025 08:10:02 +0200 Subject: More options for l-button-group --- src/layouts/_button-group.scss | 37 +++++++++++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) (limited to 'src/layouts/_button-group.scss') diff --git a/src/layouts/_button-group.scss b/src/layouts/_button-group.scss index c51ae7e..25bc2fe 100644 --- a/src/layouts/_button-group.scss +++ b/src/layouts/_button-group.scss @@ -5,13 +5,46 @@ @forward 'button-group.vars'; @use 'button-group.vars' as vars; +@use '../objects/action-button.vars' as action-button; @mixin styles { @include materialize-at-root(meta.module-variables('vars')); @include bem.layout('button-group') { - display: flex; + display: inline-flex; flex-wrap: wrap; - gap: props.get(vars.$spacing); + gap: props.get(vars.$gap); + + @each $mod, $size in vars.$sizes { + @include bem.modifier($mod) { + gap: props.get($size); + } + } + + @include bem.modifier('align-block') { + margin-inline: calc(-1 * props.get(action-button.$pad-i) - props.get(action-button.$border-width)); + + @include bem.modifier('pill') { + margin-inline: calc(-1 * props.get(action-button.$pad-i-pill) - props.get(action-button.$border-width)); + } + + @include bem.modifier('icon') { + margin-inline: calc(-1 * props.get(action-button.$pad-b) - props.get(action-button.$border-width) - .5em * (props.get(action-button.$line-height) - 1)); + } + + @each $mod, $pad-i, $pad-i-label, $pad-i-pill, $pad-b, $font-size in action-button.$fixed-sizes { + @include bem.modifier($mod) { + margin-inline: calc(-1 * props.get($pad-i) - props.get(action-button.$border-width)); + + @include bem.modifier('pill') { + margin-inline: calc(-1 * props.get($pad-i-pill) - props.get(action-button.$border-width)); + } + + @include bem.modifier('icon') { + margin-inline: calc(-1 * props.get($pad-b) - props.get(action-button.$border-width) - .5em * (props.get(action-button.$line-height) - 1)); + } + } + } + } } } -- cgit v1.3.1