Skip to content

Commit 9ee8f19

Browse files
author
Melissa Thompson
committed
fix: namespace mods, use semantic tokens instead of global
1 parent e69ffd2 commit 9ee8f19

File tree

3 files changed

+44
-29
lines changed

3 files changed

+44
-29
lines changed

components/switch/index.css

Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ governing permissions and limitations under the License.
1717
--spectrum-switch-label-color-focus: var(--spectrum-neutral-content-color-key-focus);
1818
--spectrum-switch-label-color-disabled: var(--spectrum-disabled-content-color);
1919

20+
--spectrum-switch-border-width: var(--spectrum-switch-border-width);
21+
2022
--spectrum-switch-border-color-default: var(--spectrum-neutral-content-color-default);
2123
--spectrum-switch-border-color-hover: var(--spectrum-neutral-content-color-hover);
2224
--spectrum-switch-border-color-down: var(--spectrum-neutral-content-color-down);
@@ -37,8 +39,9 @@ governing permissions and limitations under the License.
3739
--spectrum-switch-background-color-selected-focus: var(--spectrum-neutral-background-color-key-focus);
3840
--spectrum-switch-background-color-selected-disabled: var(--spectrum-disabled-content-color);
3941

40-
--spectrum-switch-focus-indicator-thickness: var(--mod-focus-indicator-thickness, var(--spectrum-focus-indicator-thickness));
42+
--spectrum-switch-focus-indicator-thickness: var(--spectrum-focus-indicator-thickness);
4143
--spectrum-switch-focus-indicator-color: var(--spectrum-focus-indicator-color);
44+
--spectrum-switch-focus-indicator-gap: var(--spectrum-focus-indicator-gap);
4245

4346
--spectrum-switch-handle-background-color: var(--spectrum-neutral-content-color-default);
4447
--spectrum-switch-handle-background-color-disabled: var(--spectrum-disabled-content-color);
@@ -48,6 +51,9 @@ governing permissions and limitations under the License.
4851
--spectrum-switch-handle-size: var(--spectrum-switch-handle-size-medium);
4952
--spectrum-switch-handle-selected-size: var(--spectrum-switch-handle-selected-size-medium);
5053

54+
--spectrum-switch-animation-duration-100: var(--spectrum-animation-duration-100);
55+
--spectrum-switch-animation-duration-200: var(--spectrum-animation-duration-200);
56+
5157
/* Default size - medium */
5258
--spectrum-switch-min-height: var(--spectrum-component-height-100);
5359
--spectrum-switch-control-width: var(--spectrum-switch-control-width-medium);
@@ -58,6 +64,8 @@ governing permissions and limitations under the License.
5864
--spectrum-switch-spacing-bottom-to-label: var(--spectrum-component-bottom-to-text-100);
5965

6066
--spectrum-switch-font-size: var(--spectrum-font-size-100);
67+
--spectrum-switch-line-height: var(--spectrum-line-height-100);
68+
--spectrum-switch-cjk-line-height: var(--spectrum-cjk-line-height-100);
6169

6270
--spectrum-switch-border-radius: var(--spectrum-corner-radius-full);
6371
}
@@ -159,13 +167,13 @@ governing permissions and limitations under the License.
159167
margin-block-start: var(--mod-switch-spacing-top-to-label, var(--spectrum-switch-spacing-top-to-label));
160168
margin-block-end: var(--mod-switch-spacing-bottom-to-label, var(--spectrum-switch-spacing-bottom-to-label));;
161169
font-size: var(--mod-switch-font-size, var(--spectrum-switch-font-size));
162-
line-height: var(--mod-line-height-100, var(--spectrum-line-height-100));
163-
transition: color var(--mod-animation-duration-200, var(--spectrum-animation-duration-200)) ease-in-out;
170+
line-height: var(--mod-switch-line-height, var(--spectrum-switch-line-height));
171+
transition: color var(--mod-switch-animation-duration-200, var(--spectrum-switch-animation-duration-200)) ease-in-out;
164172

165173
&:lang(ja),
166174
&:lang(zh),
167175
&:lang(ko) {
168-
line-height: var(--mod-cjk-line-height-100, var(--spectrum-cjk-line-height-100));
176+
line-height: var(--mod-switch-cjk-line-height, var(--spectrum-switch-cjk-line-height));
169177
}
170178

171179
.spectrum-Switch:hover ~ & {
@@ -197,8 +205,8 @@ governing permissions and limitations under the License.
197205

198206
vertical-align: middle;
199207

200-
transition: background var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out,
201-
border var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out;
208+
transition: background var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out,
209+
border var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out;
202210

203211
block-size: var(--mod-switch-control-height, var(--spectrum-switch-control-height));
204212

@@ -207,7 +215,7 @@ governing permissions and limitations under the License.
207215

208216
background-color: var(--highcontrast-switch-background-color, var(--mod-switch-background-color, var(--spectrum-switch-background-color)));
209217
border-radius: var(--mod-switch-border-radius, var(--spectrum-switch-border-radius));
210-
border-width: var(--mod-border-width-200, var(--spectrum-border-width-200));
218+
border-width: var(--mod-switch-border-width, var(--spectrum-switch-border-width));
211219
border-color: var(--highcontrast-switch-border-color-default, var(--mod-switch-border-color-default, var(--spectrum-switch-border-color-default)));
212220
border-style: solid;
213221

@@ -250,10 +258,10 @@ governing permissions and limitations under the License.
250258
content: "";
251259
box-sizing: border-box;
252260

253-
transition: background var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out,
254-
border var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out,
255-
transform var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out,
256-
box-shadow var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out;
261+
transition: background var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out,
262+
border var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out,
263+
transform var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out,
264+
box-shadow var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out;
257265

258266
inline-size: var(--mod-switch-handle-size, var(--spectrum-switch-handle-size));
259267
block-size: var(--mod-switch-handle-size, var(--spectrum-switch-handle-size));
@@ -272,20 +280,20 @@ governing permissions and limitations under the License.
272280
block-size: var(--mod-switch-handle-selected-size, var(--spectrum-switch-handle-selected-size));
273281

274282
inset-block-start: calc((var(--mod-switch-control-height, var(--spectrum-switch-control-height))
275-
- var(--mod-border-width-200, var(--spectrum-border-width-200))
283+
- var(--mod-switch-border-width, var(--spectrum-switch-border-width))
276284
- var(--mod-switch-handle-selected-size, var(--spectrum-switch-handle-selected-size)))
277285
* 0.25
278286
);
279287
inset-inline-start: calc((var(--mod-switch-control-height, var(--spectrum-switch-control-height))
280-
- var(--mod-border-width-200, var(--spectrum-border-width-200))
288+
- var(--mod-switch-border-width, var(--spectrum-switch-border-width))
281289
- var(--mod-switch-handle-selected-size, var(--spectrum-switch-handle-selected-size)))
282290
* 0.25
283291
);
284292

285-
transform: translateX(calc(100% + (var(--mod-border-width-200, var(--spectrum-border-width-200)) * 0.25)));
293+
transform: translateX(calc(100% + (var(--mod-switch-border-width, var(--spectrum-switch-border-width)) * 0.25)));
286294

287295
&:dir(rtl) {
288-
transform: translateX(calc(-1 * (100% + (var(--mod-border-width-200, var(--spectrum-border-width-200)) * 0.25))));
296+
transform: translateX(calc(-1 * (100% + (var(--mod-switch-border-width, var(--spectrum-switch-border-width)) * 0.25))));
289297
}
290298

291299
.spectrum-Switch:hover & {
@@ -302,14 +310,14 @@ governing permissions and limitations under the License.
302310
.spectrum-Switch:active .spectrum-Switch-input:not(:disabled):checked + & {
303311
/* Add down state without overriding translateX */
304312
transform:
305-
translateX(calc(100% + (var(--mod-border-width-200, var(--spectrum-border-width-200)) * 0.25)))
313+
translateX(calc(100% + (var(--mod-switch-border-width, var(--spectrum-switch-border-width)) * 0.25)))
306314
perspective(var(--spectrum-component-size-minimum-perspective-down))
307315
translateZ(var(--spectrum-component-size-difference-down));
308316

309317
&:dir(rtl) {
310318
/* Add down state without overriding translateX */
311319
transform:
312-
translateX(calc(-1 * (100% + (var(--mod-border-width-200, var(--spectrum-border-width-200)) * 0.25))))
320+
translateX(calc(-1 * (100% + (var(--mod-switch-border-width, var(--spectrum-switch-border-width)) * 0.25))))
313321
perspective(var(--spectrum-component-size-minimum-perspective-down))
314322
translateZ(var(--spectrum-component-size-difference-down));
315323
}
@@ -328,14 +336,14 @@ governing permissions and limitations under the License.
328336
inset-block-start: 0;
329337
margin: 0;
330338

331-
transition: opacity var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-out,
332-
outline-offset var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-out,
333-
border var(--mod-animation-duration-100, var(--spectrum-animation-duration-100)) ease-in-out;
339+
transition: opacity var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-out,
340+
outline-offset var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-out,
341+
border var(--mod-switch-animation-duration-100, var(--spectrum-switch-animation-duration-100)) ease-in-out;
334342

335343
.spectrum-Switch-input:focus-visible + & {
336344
outline: var(--mod-switch-focus-indicator-thickness, var(--spectrum-switch-focus-indicator-thickness)) solid
337345
var(--highcontrast-switch-focus-indicator-color, var(--mod-switch-focus-indicator-color, var(--spectrum-switch-focus-indicator-color)));
338-
outline-offset: calc(var(--mod-focus-indicator-gap, var(--spectrum-focus-indicator-gap)) + var(--mod-switch-focus-indicator-thickness, var(--spectrum-switch-focus-indicator-thickness)));
346+
outline-offset: calc(var(--mod-switch-focus-indicator-gap, var(--spectrum-switch-focus-indicator-gap)) + var(--mod-switch-focus-indicator-thickness, var(--spectrum-switch-focus-indicator-thickness)));
339347
}
340348
}
341349
}

components/switch/metadata/mods.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
| Modifiable custom properties |
22
| -------------------------------------------------------- |
3-
| `--mod-animation-duration-100` |
4-
| `--mod-animation-duration-200` |
5-
| `--mod-border-width-200` |
6-
| `--mod-cjk-line-height-100` |
7-
| `--mod-focus-indicator-gap` |
8-
| `--mod-focus-indicator-thickness` |
9-
| `--mod-line-height-100` |
3+
| `--mod-switch-animation-duration-100` |
4+
| `--mod-switch-animation-duration-200` |
105
| `--mod-switch-background-color` |
116
| `--mod-switch-background-color-disabled` |
127
| `--mod-switch-background-color-selected-default` |
@@ -24,16 +19,19 @@
2419
| `--mod-switch-border-color-selected-focus` |
2520
| `--mod-switch-border-color-selected-hover` |
2621
| `--mod-switch-border-radius` |
22+
| `--mod-switch-border-width` |
23+
| `--mod-switch-cjk-line-height` |
2724
| `--mod-switch-control-height` |
2825
| `--mod-switch-control-label-spacing` |
2926
| `--mod-switch-control-width` |
3027
| `--mod-switch-focus-indicator-color` |
28+
| `--mod-switch-focus-indicator-gap` |
3129
| `--mod-switch-focus-indicator-thickness` |
3230
| `--mod-switch-font-size` |
3331
| `--mod-switch-handle-background-color` |
3432
| `--mod-switch-handle-background-color-disabled` |
33+
| `--mod-switch-handle-background-color-selected` |
3534
| `--mod-switch-handle-background-color-selected-disabled` |
36-
| `--mod-switch-handle-selected-background-color` |
3735
| `--mod-switch-handle-selected-size` |
3836
| `--mod-switch-handle-size` |
3937
| `--mod-switch-height` |
@@ -42,6 +40,7 @@
4240
| `--mod-switch-label-color-down` |
4341
| `--mod-switch-label-color-focus` |
4442
| `--mod-switch-label-color-hover` |
43+
| `--mod-switch-line-height` |
4544
| `--mod-switch-spacing-bottom-to-label` |
4645
| `--mod-switch-spacing-top-to-control` |
4746
| `--mod-switch-spacing-top-to-label` |

components/switch/metadata/switch.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,14 @@ sections:
1313
- Medium is now the default size and `.spectrum-Switch--sizeM` has been removed
1414
- Switch includes the Spectrum 2 down state transform
1515
- Due to design changes (addition of a track border, handle color change, removal of border on handle, etc.), many mods required updates:
16+
- Renamed mods:
17+
- `--mod-animation-duration-100` renamed to `--mod-switch-animation-duration-100`
18+
- `--mod-animation-duration-200` renamed to `--mod-switch-animation-duration-200`
19+
- `--mod-border-width-200` renamed to `--mod-switch-border-width`
20+
- `--mod-cjk-line-height-100` renamed to `--mod-switch-cjk-line-height`
21+
- `--mod-focus-indicator-gap` renamed to `--mod-switch-focus-indicator-gap`
22+
- `--mod-focus-indicator-thickness` renamed to `--mod-switch-focus-indicator-thickness`
23+
- `--mod-line-height-100` renamed to `--mod-switch-line-height`
1624
- New mods:
1725
- `--mod-cjk-line-height-100`
1826
- `--mod-switch-border-color-default`

0 commit comments

Comments
 (0)