* Copyright (c) 2022 - present TinyVue Authors.
* Copyright (c) 2022 - present Huawei Cloud Computing Technologies Co., Ltd.
*
* Use of this source code is governed by an MIT-style license.
*
* THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,
* BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR
* A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.
*
*/
@import '../custom.less';
@grid-checkbox-prefix-cls: ~'@{css-prefix}grid-checkbox';
.@{grid-checkbox-prefix-cls} {
display: inline-block;
user-select: none;
cursor: pointer;
& + & {
margin-left: 10px;
}
> input {
display: none;
& + .@{grid-checkbox-prefix-cls}__icon {
position: relative;
display: block;
width: var(--tv-Grid-icon-size);
height: var(--tv-Grid-icon-size);
border-radius: var(--tv-Grid-checkbox-border-radius);
font-size: var(--tv-Grid-font-size);
& + .@{grid-checkbox-prefix-cls}__label {
display: none;
}
> svg {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
fill: var(--tv-Grid-checkbox-icon-color);
font-size: var(--tv-Grid-checkbox-icon-size);
path:last-child {
fill: var(--tv-Grid-unchecked-border-color);
}
&:hover {
path:last-child {
fill: var(--tv-Grid-unchecked-border-color-hover);
}
}
&.icon-checked-sur {
display: none;
}
}
}
&:checked + .@{grid-checkbox-prefix-cls}__icon {
& + .@{grid-checkbox-prefix-cls}__label {
color: var(--tv-Grid-text-color);
}
> svg {
&.icon-check {
display: block;
}
&.icon-checked-sur {
display: block;
path:first-child {
fill: var(--tv-Grid-bg-color-active);
}
path:last-child {
fill: var(--tv-Grid-border-color-inverse);
}
}
}
}
&:not(:checked) + .@{grid-checkbox-prefix-cls}__icon {
.icon-check {
path:first-child {
fill: transparent;
}
}
}
}
&.is__indeterminate {
> input {
&:not(:checked) {
& + .@{grid-checkbox-prefix-cls}__icon {
border: none;
> svg {
&.icon-half-select {
path:first-child {
fill: var(--tv-Grid-bg-color-active);
}
path:last-child {
fill: var(--tv-Grid-border-color-inverse);
}
}
}
}
}
}
}
&.is__disabled:not(.is__indeterminate) {
cursor: not-allowed;
> input {
& + .@{grid-checkbox-prefix-cls}__icon {
> svg {
fill: var(--tv-Grid-checkbox-border-color-disabled);
}
& + .@{grid-checkbox-prefix-cls}__label {
color: var(--tv-Grid-checkbox-border-color-disabled);
}
}
&:checked + .@{grid-checkbox-prefix-cls}__icon {
> svg {
path:first-child {
fill: var(--tv-Grid-checked-disabled-bg-color);
}
path:nth-child(2) {
fill: var(--tv-Grid-icon-inverse-disabled);
}
}
}
}
}
&.is__disabled.is__indeterminate {
cursor: not-allowed;
> input {
& + .@{grid-checkbox-prefix-cls}__icon {
> svg {
fill: var(--tv-Grid-checkbox-border-color-disabled);
}
}
& + .@{grid-checkbox-prefix-cls}__icon {
svg.icon-half-select {
path:first-child {
fill: var(--tv-Grid-checked-disabled-bg-color);
}
path:nth-child(2) {
fill: var(--tv-Grid-icon-inverse-disabled);
}
}
}
}
}
&.is__disabled > input:not(:checked) + .tiny-grid-checkbox__icon .icon-check {
path:first-child {
fill: var(--tv-Grid-bg-color-disabled);
}
path:nth-child(2) {
fill: var(--tv-Grid-border-color-disabled);
}
&:hover {
path:last-child {
fill: var(--tv-Grid-unchecked-border-color);
}
}
}
& &__label {
padding-left: 5px;
vertical-align: middle;
display: inline-block;
}
}