@import '@devui/theme/styles-var/devui-var.scss';
$devui-btn-sm-padding: var(--devui-btn-sm-padding, 0 16px);
$devui-btn-padding: var(--devui-btn-padding, 0 20px);
$devui-btn-lg-padding: var(--devui-btn-lg-padding, 0 24px);
$font-size-map: (
lg: $devui-font-size-lg,
md: $devui-font-size-md,
sm: $devui-font-size-sm,
);
$button-padding-map: (
lg: $devui-btn-lg-padding,
md: $devui-btn-padding,
sm: $devui-btn-sm-padding,
);
$checkbox-label-height-map: (
lg: $devui-size-lg,
md: $devui-size-md,
sm: $devui-size-sm,
);
.#{$devui-prefix}-checkbox-button {
display: flex;
align-items: center;
position: relative;
&__input {
opacity: 0;
position: absolute;
margin: 0;
z-index: -1;
width: 0;
height: 0;
overflow: hidden;
left: 0;
pointer-events: none;
}
&__content {
font-size: 14px;
color: $devui-text;
padding: 10px 20px;
cursor: pointer;
border: 1px solid $devui-disabled-line;
display: inline-block;
line-height: 1;
user-select: none;
@each $size in ('lg', 'md', 'sm') {
&.#{$devui-prefix}-checkbox-button--#{$size} {
font-size: map-get($font-size-map, #{$size});
padding: map-get($button-padding-map, #{$size});
height: map-get($checkbox-label-height-map, #{$size});
line-height: map-get($checkbox-label-height-map, #{$size});
}
}
}
&.active {
.#{$devui-prefix}-checkbox-button__content {
color: #ffffff;
background-color: $devui-brand;
border-color: $devui-brand;
}
&.disabled {
.#{$devui-prefix}-checkbox-button__content {
color: #ffffff;
background-color: $devui-icon-fill-active-disabled;
border-color: $devui-icon-fill-active-disabled;
}
}
}
&.disabled {
.#{$devui-prefix}-checkbox-button__content {
cursor: not-allowed;
color: $devui-disabled-text;
background-color: #ffffff;
border-color: $devui-disabled-line;
}
}
}
.#{$devui-prefix}-checkbox__group {
&.is-row {
.#{$devui-prefix}-checkbox-button {
&__content {
border-left: none;
box-shadow: -1px 0 0 0 $devui-disabled-line;
}
&:first-child {
.#{$devui-prefix}-checkbox-button__content {
border-top-left-radius: $devui-border-radius;
border-bottom-left-radius: $devui-border-radius;
border-left: 1px solid $devui-disabled-line;
box-shadow: none;
}
}
&:last-child {
.#{$devui-prefix}-checkbox-button__content {
border-top-right-radius: $devui-border-radius;
border-bottom-right-radius: $devui-border-radius;
}
}
}
}
&.is-column {
.#{$devui-prefix}-checkbox-button {
width: 100%;
margin-top: 0;
&__content {
width: 100%;
border-top: none;
box-shadow: 0 -1px 0 0 $devui-disabled-line;
}
&:first-child {
.#{$devui-prefix}-checkbox-button__content {
border-top-left-radius: $devui-border-radius;
border-top-right-radius: $devui-border-radius;
border-top: 1px solid $devui-disabled-line;
box-shadow: none;
}
}
&:last-child {
.#{$devui-prefix}-checkbox-button__content {
border-bottom-left-radius: $devui-border-radius;
border-bottom-right-radius: $devui-border-radius;
}
}
}
}
}