UNPKG

3.37 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = void 0;
7
8var _react = _interopRequireWildcard(require("react"));
9
10var _withStyles = require("../helpers/withStyles");
11
12var _Blanket = _interopRequireDefault(require("./Blanket"));
13
14var _Transition = _interopRequireDefault(require("react-transition-group/Transition"));
15
16var _FlatButton = _interopRequireDefault(require("./FlatButton"));
17
18function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
20function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
21
22var Drawer = function Drawer(_ref) {
23 var active = _ref.active,
24 children = _ref.children,
25 css = _ref.css,
26 fullWidth = _ref.fullWidth,
27 onClose = _ref.onClose,
28 onClosed = _ref.onClosed,
29 right = _ref.right,
30 width = _ref.width,
31 styles = _ref.styles;
32 return _react.default.createElement(_react.Fragment, null, _react.default.createElement(_Transition.default, {
33 in: active,
34 timeout: 200 //mountOnEnter
35 //unmountOnExit
36 ,
37 onEnter: function onEnter(node) {
38 return node.scrollTop;
39 },
40 onExited: function onExited() {
41 return onClosed && onClosed();
42 }
43 }, function (state) {
44 return _react.default.createElement("div", css(styles.drawer, !fullWidth && styles.drawer_width_default, fullWidth && styles.drawer_width_full, right ? styles.drawer_right : styles.drawer_left, (state === 'entering' || state === 'entered') && styles.entering, (state === 'exiting' || state === 'exited') && styles.exiting), _react.default.createElement("div", css(styles.closeButton), _react.default.createElement(_FlatButton.default, {
45 transparent: true,
46 icon: "error",
47 onClick: function onClick() {
48 return onClose && onClose();
49 }
50 })), children);
51 }), _react.default.createElement(_Blanket.default, {
52 onClick: function onClick() {
53 return onClose && onClose();
54 }
55 }));
56};
57
58var DrawerWithStyles = (0, _withStyles.withStyles)(function (_ref2) {
59 var color = _ref2.color,
60 units = _ref2.units;
61 return {
62 drawer: {
63 background: color.white,
64 position: 'absolute',
65 top: 0,
66 bottom: 0,
67 width: 0,
68 overflow: 'hidden',
69 zIndex: 99,
70 transition: 'transform 200ms ease-out'
71 },
72 drawer_left: {
73 left: 0,
74 right: 'unset'
75 },
76 drawer_right: {
77 right: 0,
78 left: 'unset'
79 },
80 drawer_width_default: {
81 width: units(24)
82 },
83 drawer_width_full: {
84 width: '100%'
85 },
86 entering: {
87 transform: 'translate(0, 0)',
88 transition: 'transform 200ms ease-out'
89 },
90 exiting: {
91 transform: 'translate(100%, 0)',
92 transition: 'transform 200ms ease-out'
93 },
94 closeButton: {
95 marginTop: units(.5),
96 marginRight: units(.5),
97 float: 'right'
98 }
99 };
100})(Drawer);
101var _default = DrawerWithStyles;
102exports.default = _default;
\No newline at end of file