UNPKG

wix-style-react

Version:
118 lines (117 loc) 4.53 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireWildcard(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _Item = _interopRequireDefault(require("./Item")); var _utils = require("./utils"); var _jsxFileName = "/home/builduser/work/a9c1ac8876d5057c/packages/wix-style-react/dist/cjs/NestableListBase/Container.js"; function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } class Container extends _react.Component { render() { var { items, parentPosition, childrenProperty, childrenStyle, renderAction, treeDepth, isParentLastItem = true, isRenderDraggingChildren, topLevel, theme } = this.props; var containerClass; if (theme) { containerClass = topLevel && theme.topContainer || theme.container; } var classes = (0, _classnames.default)('nestable-container', { 'nestable-top-container': topLevel }, containerClass); return /*#__PURE__*/_react.default.createElement("div", { className: classes, style: topLevel ? {} : childrenStyle, __self: this, __source: { fileName: _jsxFileName, lineNumber: 32, columnNumber: 7 } }, items.map((item, i) => { var position = parentPosition.concat([i]); var children = item[childrenProperty] && item[childrenProperty].map(child => { if (item.lockDropArea || item.isParentLocked) { child.isParentLocked = true; child.draggable = false; } return child; }); var hasChildren = children && children.length; var isLastItem = items.length - 1 === i; var actionButton = renderAction({ siblings: items, item, veryLastItem: isLastItem && isParentLastItem, depth: treeDepth }); var veryLastItem = isLastItem && isParentLastItem && (!hasChildren || item.isCollapsed) && !actionButton; return /*#__PURE__*/_react.default.createElement(_Item.default, { id: item.id, key: item.id, item: item, index: i, isVeryLastItem: veryLastItem, siblings: items, isRenderDraggingChildren: isRenderDraggingChildren, position: position, depth: (0, _utils.getDepth)(item, childrenProperty), theme: theme, __self: this, __source: { fileName: _jsxFileName, lineNumber: 60, columnNumber: 13 } }, !item.isCollapsed && /*#__PURE__*/_react.default.createElement("div", { __self: this, __source: { fileName: _jsxFileName, lineNumber: 73, columnNumber: 17 } }, hasChildren ? /*#__PURE__*/_react.default.createElement(WrappedContainer, { isParentLastItem: isLastItem && isParentLastItem && !actionButton, items: children, renderAction: renderAction, isRenderDraggingChildren: isRenderDraggingChildren, parentPosition: position, childrenProperty: childrenProperty, childrenStyle: childrenStyle, theme: theme, treeDepth: treeDepth + 1, __self: this, __source: { fileName: _jsxFileName, lineNumber: 75, columnNumber: 21 } }) : null, actionButton)); })); } } class WrappedContainer extends _react.default.PureComponent { render() { return /*#__PURE__*/_react.default.createElement(Container, (0, _extends2.default)({}, this.props, { __self: this, __source: { fileName: _jsxFileName, lineNumber: 102, columnNumber: 12 } })); } } var _default = exports.default = WrappedContainer; //# sourceMappingURL=Container.js.map