1
1
import React , { memo } from 'react' ;
2
- import styled from 'styled-components' ;
2
+ import styled , { css } from 'styled-components' ;
3
3
4
4
import helpers from 'helpers' ;
5
5
import Button from 'Components/Button' ;
6
- import { slidein , slideout } from 'Styled/anim' ;
7
-
8
- const ContainerStyles = styled . div `
9
- transition: visibility 1s ease-in;
10
6
11
- visibility: ${ ( { open } ) =>
12
- open ? 'visible' : 'hidden' } ;
7
+ import { slidein , slideout } from 'Styled/anim' ;
8
+ import { visibleDynamic } from 'Styled/dynamic' ;
13
9
14
- ${ ( { open } ) => ( open ? slidein : slideout ) } ;
10
+ const slideAnim = css `
11
+ ${ ( { visible } ) => ( visible ? slidein : slideout ) } ;
15
12
` ;
16
13
17
- const Container = styled ( ContainerStyles ) `
14
+ const Container = styled . div `
15
+ ${ slideAnim } ;
16
+ ${ visibleDynamic } ;
18
17
width: 350px;
19
18
position: fixed;
20
19
flex-direction: column;
@@ -25,6 +24,7 @@ const Container = styled(ContainerStyles)`
25
24
background-color: inherit;
26
25
border-radius: 5px;
27
26
box-shadow: 25px 0px 30px 5px black;
27
+ transition: visibility 1s ease-in;
28
28
` ;
29
29
30
30
const Wrapper = styled . div `
@@ -68,9 +68,9 @@ const Body = styled.div`
68
68
*/
69
69
70
70
const Drawer = memo (
71
- ( { open , title, toggle, className, children } ) => {
71
+ ( { isOpen , title, toggle, className, children } ) => {
72
72
return (
73
- < Container className = { className } open = { open } >
73
+ < Container className = { className } visible = { isOpen } >
74
74
< Wrapper >
75
75
< Header >
76
76
< Title >
0 commit comments