UNPKG

1.62 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _extends2 = require('babel-runtime/helpers/extends');
8
9var _extends3 = _interopRequireDefault(_extends2);
10
11var _react = require('react');
12
13var _react2 = _interopRequireDefault(_react);
14
15var _Transition = require('react-transition-group/Transition');
16
17var _Transition2 = _interopRequireDefault(_Transition);
18
19function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
21var transitionStyles = {
22 entering: {
23 opacity: '0.01',
24 cursor: 'pointer',
25 zIndex: '-1',
26 transform: 'scale(1, 0.9) translateY(-100%)'
27 },
28 entered: {
29 opacity: '1',
30 transform: 'scale(1) translateY(0%)'
31 },
32 //exiting: {
33 // opacity: '1',
34 // transform: 'scale(1) translateY(0%)',
35 //},
36 exiting: {
37 opacity: '0.01',
38 cursor: 'pointer',
39 zIndex: '-1',
40 transform: 'scale(1, 0.9) translateY(-100%)'
41 }
42};
43var baseStyles = {
44 transition: 'all 300ms ease-out'
45};
46var RTGDropdown = function RTGDropdown(_ref) {
47 var style = _ref.style,
48 inProp = _ref.in,
49 children = _ref.children;
50 return _react2.default.createElement(
51 _Transition2.default,
52 { 'in': inProp, timeout: { enter: 0, exit: 300 }, unmountOnExit: true },
53 function (state) {
54 return children({ style: (0, _extends3.default)({}, baseStyles, style, transitionStyles[state]) });
55 }
56 );
57};
58RTGDropdown.defaultProps = {
59 handleClick: function handleClick() {
60 return console.log('RTGDropdown: handleClick');
61 },
62 transitionOptions: {
63 duration: 300
64 }
65};
66
67exports.default = RTGDropdown;
\No newline at end of file