2020-05-29 05:33:00 +08:00
|
|
|
/*
|
2024-09-09 21:57:16 +08:00
|
|
|
Copyright 2024 New Vector Ltd.
|
2020-05-29 05:33:00 +08:00
|
|
|
Copyright 2020 The Matrix.org Foundation C.I.C.
|
|
|
|
|
2024-09-09 21:57:16 +08:00
|
|
|
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
|
|
|
|
Please see LICENSE files in the repository root for full details.
|
2020-05-29 05:33:00 +08:00
|
|
|
*/
|
|
|
|
|
|
|
|
.mx_Checkbox {
|
|
|
|
$size: $font-16px;
|
2023-07-11 19:33:04 +08:00
|
|
|
$border-radius: 0.27rem;
|
2020-05-29 05:33:00 +08:00
|
|
|
|
|
|
|
display: flex;
|
|
|
|
align-items: flex-start;
|
|
|
|
|
2022-07-15 21:53:23 +08:00
|
|
|
input[type="checkbox"] {
|
2020-06-10 20:41:34 +08:00
|
|
|
appearance: none;
|
2020-06-11 19:40:49 +08:00
|
|
|
margin: 0;
|
|
|
|
padding: 0;
|
2020-05-29 05:33:00 +08:00
|
|
|
|
|
|
|
& + label {
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
flex-grow: 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
& + label > .mx_Checkbox_background {
|
|
|
|
display: inline-flex;
|
|
|
|
position: relative;
|
|
|
|
|
|
|
|
flex-shrink: 0;
|
|
|
|
|
|
|
|
height: $size;
|
|
|
|
width: $size;
|
|
|
|
size: 0.5rem;
|
2024-03-05 12:25:47 +08:00
|
|
|
border: 1px solid var(--cpd-color-border-interactive-primary);
|
2020-05-29 05:33:00 +08:00
|
|
|
box-sizing: border-box;
|
|
|
|
border-radius: $border-radius;
|
|
|
|
|
2021-10-30 09:57:32 +08:00
|
|
|
.mx_Checkbox_checkmark {
|
2020-06-09 00:38:07 +08:00
|
|
|
display: none;
|
|
|
|
|
2020-05-29 05:33:00 +08:00
|
|
|
height: 100%;
|
|
|
|
width: 100%;
|
2024-10-18 21:51:54 +08:00
|
|
|
mask-image: url("@vector-im/compound-design-tokens/icons/check.svg");
|
2021-10-30 09:57:32 +08:00
|
|
|
mask-position: center;
|
|
|
|
mask-size: 100%;
|
|
|
|
mask-repeat: no-repeat;
|
2020-05-29 05:33:00 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-10-30 09:57:32 +08:00
|
|
|
&:checked + label > .mx_Checkbox_background .mx_Checkbox_checkmark {
|
|
|
|
display: block;
|
2020-05-29 05:33:00 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
& + label > *:not(.mx_Checkbox_background) {
|
|
|
|
margin-left: 10px;
|
|
|
|
}
|
2020-06-17 21:24:11 +08:00
|
|
|
|
|
|
|
&:disabled + label {
|
|
|
|
cursor: not-allowed;
|
|
|
|
}
|
|
|
|
|
2023-09-28 19:52:26 +08:00
|
|
|
&:focus-visible {
|
2020-07-28 23:08:25 +08:00
|
|
|
& + label .mx_Checkbox_background {
|
|
|
|
@mixin unreal-focus;
|
|
|
|
}
|
|
|
|
}
|
2020-05-29 05:33:00 +08:00
|
|
|
}
|
|
|
|
}
|
2021-10-30 09:57:32 +08:00
|
|
|
|
2022-07-15 21:53:23 +08:00
|
|
|
.mx_Checkbox.mx_Checkbox_kind_solid input[type="checkbox"] {
|
2021-10-30 09:57:32 +08:00
|
|
|
& + label > .mx_Checkbox_background .mx_Checkbox_checkmark {
|
2024-03-05 12:25:47 +08:00
|
|
|
background: var(--cpd-color-icon-on-solid-primary);
|
2021-10-30 09:57:32 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
&:checked + label > .mx_Checkbox_background {
|
2024-03-05 12:25:47 +08:00
|
|
|
background: var(--cpd-color-bg-accent-rest);
|
|
|
|
border-color: var(--cpd-color-bg-accent-rest);
|
2021-10-30 09:57:32 +08:00
|
|
|
}
|
2023-07-13 01:46:49 +08:00
|
|
|
|
|
|
|
&:checked:disabled + label > .mx_Checkbox_background {
|
2024-03-05 12:25:47 +08:00
|
|
|
background: var(--cpd-color-bg-action-primary-disabled);
|
|
|
|
border-color: var(--cpd-color-bg-action-primary-disabled);
|
2023-07-13 01:46:49 +08:00
|
|
|
}
|
2021-10-30 09:57:32 +08:00
|
|
|
}
|
|
|
|
|
2022-07-15 21:53:23 +08:00
|
|
|
.mx_Checkbox.mx_Checkbox_kind_outline input[type="checkbox"] {
|
2021-10-30 09:57:32 +08:00
|
|
|
& + label > .mx_Checkbox_background .mx_Checkbox_checkmark {
|
2024-03-05 12:25:47 +08:00
|
|
|
background: var(--cpd-color-bg-accent-rest);
|
2021-10-30 09:57:32 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
&:checked + label > .mx_Checkbox_background {
|
|
|
|
background: transparent;
|
2024-03-05 12:25:47 +08:00
|
|
|
border-color: var(--cpd-color-bg-accent-rest);
|
2021-10-30 09:57:32 +08:00
|
|
|
}
|
|
|
|
}
|