UNPKG

@talend/react-components

Version:
61 lines (60 loc) 2.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _react = require("react"); var _reactTransitionGroup = require("react-transition-group"); var _Drawer = _interopRequireDefault(require("../Drawer")); var _withDrawerModule = _interopRequireDefault(require("./withDrawer.module.scss")); var _lodash = require("lodash"); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /** * The Layout component is a container * that should follow the body of your App. * If the Layout is not after the body you have to * add some CSS * @example body > div { max-height: 100vh; overflow: hidden; display: flex; width: 100vw; } * @param {object} props react props * @example <Layout mode="TwoColumns" one={one} two={two}></Layout> */function WithDrawer({ drawers, children, ...rest }) { return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", { className: _withDrawerModule.default['tc-with-drawer'], children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactTransitionGroup.TransitionGroup, { className: _withDrawerModule.default['tc-with-drawer-container'], ...rest, children: drawers && drawers.map((drawer, key) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_Drawer.default.Animation, { withTransition: (0, _lodash.get)(drawer, 'props.withTransition', true) && (0, _lodash.get)(drawer, 'props.route.state.withTransition'), children: ({ style, ...props }) => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: "tc-with-drawer-wrapper", style: style, children: /*#__PURE__*/(0, _react.cloneElement)(drawer, props) }) }, (0, _lodash.get)(drawer, 'props.route.path', key))) })] }); } WithDrawer.displayName = 'WithDrawer'; WithDrawer.propTypes = { drawers: _propTypes.default.arrayOf(_propTypes.default.element), children: _propTypes.default.node, ..._reactTransitionGroup.TransitionGroup.propTypes }; var _default = exports.default = WithDrawer; //# sourceMappingURL=WithDrawer.component.js.map