@talend/react-components
Version:
Set of react components.
61 lines (60 loc) • 2.22 kB
JavaScript
;
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