File tree Expand file tree Collapse file tree 3 files changed +49
-61
lines changed Expand file tree Collapse file tree 3 files changed +49
-61
lines changed Original file line number Diff line number Diff line change
1
+ .container {
2
+ composes : -menuItemFullButton from './shared.module.css' ;
3
+
4
+ & : hover {
5
+ color : var (--header-tint );
6
+ }
7
+ }
8
+
9
+ .selected {
10
+ composes : container;
11
+ color : var (--header-tint );
12
+ font-weight : 600 ;
13
+ }
14
+
15
+ .header {
16
+ display : flex;
17
+ align-items : center;
18
+ }
19
+
20
+ .name {
21
+ composes : -menuItemTitle from './shared.module.css' ;
22
+ }
23
+
24
+ .description {
25
+ padding-left : 2em ;
26
+ }
27
+
28
+ .checkmark {
29
+ margin-right : 0.5em ;
30
+ opacity : 0 ;
31
+ transition : opacity 0.15s ease-in-out;
32
+ }
33
+
34
+ .selected .checkmark ,
35
+ .selected : hover .checkmark {
36
+ opacity : 1 ;
37
+ }
38
+
39
+ .container : hover .checkmark {
40
+ color : var (--header-tint );
41
+ opacity : 0.5 ;
42
+ }
Original file line number Diff line number Diff line change @@ -3,6 +3,8 @@ import React from 'react';
3
3
import { CheckmarkIcon } from './Icon' ;
4
4
import MenuItem from './MenuItem' ;
5
5
6
+ import styles from './SelectableMenuItem.module.css' ;
7
+
6
8
type Button = JSX . IntrinsicElements [ 'button' ] ;
7
9
8
10
interface SelectableMenuItemProps extends Button {
@@ -12,14 +14,14 @@ interface SelectableMenuItemProps extends Button {
12
14
13
15
const SelectableMenuItem : React . SFC < SelectableMenuItemProps > = ( { name, selected, children, ...props } ) => (
14
16
< MenuItem >
15
- < button className = { `selectable-item ${ selected ? 'selectable-item-- selected' : '' } ` } { ...props } >
16
- < div className = "selectable-item__header" >
17
- < span className = "selectable-item__checkmark" >
17
+ < button className = { selected ? styles . selected : styles . container } { ...props } >
18
+ < div className = { styles . header } >
19
+ < span className = { styles . checkmark } >
18
20
< CheckmarkIcon />
19
21
</ span >
20
- < span className = "selectable-item__name" > { name } </ span >
22
+ < span className = { styles . name } > { name } </ span >
21
23
</ div >
22
- < div className = "selectable-item__description" > { children } </ div >
24
+ < div className = { styles . description } > { children } </ div >
23
25
</ button >
24
26
</ MenuItem >
25
27
) ;
Original file line number Diff line number Diff line change @@ -356,62 +356,6 @@ $header-transition: 0.2s ease-in-out;
356
356
}
357
357
}
358
358
359
- @mixin menu-item-title {
360
- font-size : 13px ;
361
- font-weight : 600 ;
362
- }
363
-
364
- @mixin full-menu-button {
365
- @include button-reset ;
366
-
367
- width : 100% ;
368
- transition : color $header-transition ;
369
- user-select : text ;
370
- }
371
-
372
- .selectable-item {
373
- @include full-menu-button ;
374
-
375
- & __header {
376
- display : flex ;
377
- align-items : center ;
378
- }
379
-
380
- & __name {
381
- @include menu-item-title ;
382
- }
383
-
384
- & __description {
385
- padding-left : 2em ;
386
- }
387
-
388
- & :hover {
389
- color : $header-tint ;
390
- }
391
-
392
- & --selected {
393
- font-weight : 600 ;
394
- color : $header-tint ;
395
- }
396
-
397
- & __checkmark {
398
- margin-right : 0.5em ;
399
-
400
- opacity : 0 ;
401
- transition : opacity 0.15s ease-in-out ;
402
- }
403
-
404
- & :hover & __checkmark {
405
- opacity : 0.5 ;
406
- color : $header-tint ;
407
- }
408
-
409
- & --selected & __checkmark ,
410
- & --selected :hover & __checkmark {
411
- opacity : 1 ;
412
- }
413
- }
414
-
415
359
.config-element {
416
360
display : flex ;
417
361
align-items : center ;
You can’t perform that action at this time.
0 commit comments