Skip to content

Commit 1fb3914

Browse files
committed
fix(checkbox): update themes so they use properties property
1 parent e535bdb commit 1fb3914

File tree

3 files changed

+56
-16
lines changed

3 files changed

+56
-16
lines changed

src/components/checkbox/themes/shared/checkbox/checkbox.common.scss

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ $theme: $material;
99
color: var-get($theme, 'label-color');
1010
}
1111

12-
:host(:hover) {
12+
:host(:not([disabled], :state(ig-invalid)):hover),
13+
:host(:not([disabled], :state(ig-invalid))[indeterminate]:hover) {
1314
[part~='label'] {
1415
color: var-get($theme, 'label-color-hover');
1516
}

src/components/checkbox/themes/shared/checkbox/checkbox.indigo.scss

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,9 @@ $error-color-hover: var-get($theme, 'error-color-hover');
139139
}
140140
}
141141

142-
[part='base focused'] {
142+
[part='base focused'],
143+
&:focus-visible,
144+
[part='base checked focused'] {
143145
[part~='control'],
144146
[part='control checked'] {
145147
box-shadow: 0 0 0 rem(3px) var-get($theme, 'focus-outline-color-error');

src/components/checkbox/themes/shared/checkbox/checkbox.material.scss

Lines changed: 51 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ $theme: $material;
1212
}
1313
}
1414

15-
:host(:hover) {
15+
:host(:not([disabled], :state(ig-invalid)):hover),
16+
:host(:not([disabled], :state(ig-invalid))[indeterminate]:hover) {
1617
[part='control checked']::after {
1718
border-color: var-get($theme, 'fill-color-hover');
1819
}
@@ -68,7 +69,7 @@ $theme: $material;
6869
&:hover {
6970
[part~='control'] {
7071
&::before {
71-
background: var-get($theme, 'fill-color');
72+
background: var-get($theme, 'fill-color-hover');
7273
opacity: .06;
7374
}
7475
}
@@ -88,13 +89,18 @@ $theme: $material;
8889

8990
[part='base checked']:focus-visible,
9091
[part='base checked focused'] {
91-
&:hover [part~='control'],
9292
[part~='control'] {
9393
&::before {
9494
background: var-get($theme, 'fill-color');
9595
opacity: .12;
9696
}
9797
}
98+
99+
&:hover [part~='control'] {
100+
&::before {
101+
background: var-get($theme, 'fill-color-hover');
102+
}
103+
}
98104
}
99105

100106
:host([indeterminate]) {
@@ -105,7 +111,6 @@ $theme: $material;
105111
}
106112
}
107113

108-
[part='base']:hover,
109114
[part='base']:focus-visible,
110115
[part='base focused'] {
111116
[part~='control']::before {
@@ -128,17 +133,52 @@ $theme: $material;
128133
}
129134
}
130135

131-
[part~='base']:hover {
136+
[part='base focused'] {
132137
[part~='control']::before {
133138
background: var-get($theme, 'error-color');
134139
}
135140
}
136141

137-
[part='base focused'] {
142+
[part='base checked']:focus-visible,
143+
[part='base checked focused'] {
138144
[part~='control']::before {
145+
background: var-get($theme, 'error-color');
146+
opacity: .12;
147+
}
148+
}
149+
}
150+
151+
:host(:not([disabled]):state(ig-invalid):hover),
152+
:host(:not(:disabled):state(ig-invalid):hover),
153+
:host(:not([disabled]):state(ig-invalid)[indeterminate]:hover),
154+
:host(:not(:disabled):state(ig-invalid)[indeterminate]:hover) {
155+
[part~='control'] {
156+
&::after {
157+
border-color: var-get($theme, 'error-color-hover');
158+
}
159+
}
160+
161+
[part='control checked'] {
162+
&::after {
139163
background: var-get($theme, 'error-color-hover');
140164
}
141165
}
166+
167+
[part~='control']::before {
168+
background: var-get($theme, 'error-color-hover');
169+
}
170+
171+
[part='base checked']:focus-visible,
172+
[part='base checked focused'] {
173+
[part~='control'] {
174+
&::before {
175+
background: var-get($theme, 'error-color-hover');
176+
}
177+
178+
&::after {
179+
border-color: var-get($theme, 'error-color-hover');}
180+
}
181+
}
142182
}
143183

144184
:host(:not([disabled]):state(ig-invalid)[indeterminate]),
@@ -151,14 +191,11 @@ $theme: $material;
151191
}
152192

153193
[part~='base']:hover {
154-
[part~='control']::before {
155-
background: var-get($theme, 'error-color-hover');
156-
}
157-
}
158-
159-
[part='base focused'] {
160-
[part~='control']::before {
161-
background: var-get($theme, 'error-color-hover');
194+
[part~='control'] {
195+
&::after {
196+
border-color: var-get($theme, 'error-color-hover');
197+
background: var-get($theme, 'error-color-hover');
198+
}
162199
}
163200
}
164201
}

0 commit comments

Comments
 (0)