Skip to content

Commit fcb1e62

Browse files
Only rotate icon
1 parent ebb8cf2 commit fcb1e62

File tree

1 file changed

+24
-30
lines changed

1 file changed

+24
-30
lines changed

src/MainButton.js

Lines changed: 24 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3,36 +3,32 @@ import React, { Component } from 'react';
33
import styled from 'styled-jss';
44
import PropTypes from 'prop-types';
55

6-
const Wrapper = styled('a')(
7-
({ backgroundColor, size, iconColor }) => ({
8-
color: iconColor,
9-
zIndex: '1',
10-
display: 'flex',
11-
border: 'none',
12-
borderRadius: '50%',
13-
boxShadow: '0 0 4px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.28)',
14-
cursor: 'pointer',
15-
outline: 'none',
16-
padding: '0',
17-
WebkitUserDrag: 'none',
18-
fontWeight: 'bold',
19-
justifyContent: 'center',
20-
alignItems: 'center',
21-
WebkitTransition: '-webkit-transform 300ms',
22-
transition: 'transform 300ms',
23-
width: size,
24-
height: size,
25-
backgroundColor,
26-
}),
27-
({ isOpen }) => ({
28-
WebkitTransform: `rotate(${isOpen ? 180 : 0}deg)`,
29-
transform: `rotate(${isOpen ? 180 : 0}deg)`,
30-
}),
31-
);
6+
const Wrapper = styled('a')(({ backgroundColor, size, iconColor }) => ({
7+
color: iconColor,
8+
zIndex: '1',
9+
display: 'flex',
10+
border: 'none',
11+
borderRadius: '50%',
12+
boxShadow: '0 0 4px rgba(0,0,0,.14),0 4px 8px rgba(0,0,0,.28)',
13+
cursor: 'pointer',
14+
outline: 'none',
15+
padding: '0',
16+
WebkitUserDrag: 'none',
17+
fontWeight: 'bold',
18+
justifyContent: 'center',
19+
alignItems: 'center',
20+
width: size,
21+
height: size,
22+
backgroundColor,
23+
}));
3224

33-
const IconWrapper = styled('div')(({
25+
const IconWrapper = styled('div')(({ isOpen }) => ({
3426
display: 'flex',
3527
position: 'absolute',
28+
WebkitTransition: '-webkit-transform 300ms',
29+
transition: 'transform 300ms',
30+
WebkitTransform: `rotate(${isOpen ? 180 : 0}deg)`,
31+
transform: `rotate(${isOpen ? 180 : 0}deg)`,
3632
}));
3733

3834
class MainButton extends Component {
@@ -53,9 +49,7 @@ class MainButton extends Component {
5349

5450
return (
5551
<Wrapper {...this.props}>
56-
<IconWrapper>
57-
{isOpen ? iconActive : iconResting}
58-
</IconWrapper>
52+
<IconWrapper isOpen={isOpen}>{isOpen ? iconActive : iconResting}</IconWrapper>
5953
</Wrapper>
6054
);
6155
}

0 commit comments

Comments
 (0)