ExpandedRow.js 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. var _typeof = require("@babel/runtime/helpers/typeof");
  4. Object.defineProperty(exports, "__esModule", {
  5. value: true
  6. });
  7. exports.default = void 0;
  8. var _context = require("@rc-component/context");
  9. var React = _interopRequireWildcard(require("react"));
  10. var _Cell = _interopRequireDefault(require("../Cell"));
  11. var _TableContext = _interopRequireDefault(require("../context/TableContext"));
  12. var _useRenderTimes = _interopRequireDefault(require("../hooks/useRenderTimes"));
  13. function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
  14. function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
  15. function ExpandedRow(props) {
  16. if (process.env.NODE_ENV !== 'production') {
  17. (0, _useRenderTimes.default)(props);
  18. }
  19. var prefixCls = props.prefixCls,
  20. children = props.children,
  21. Component = props.component,
  22. cellComponent = props.cellComponent,
  23. className = props.className,
  24. expanded = props.expanded,
  25. colSpan = props.colSpan,
  26. isEmpty = props.isEmpty,
  27. _props$stickyOffset = props.stickyOffset,
  28. stickyOffset = _props$stickyOffset === void 0 ? 0 : _props$stickyOffset;
  29. var _useContext = (0, _context.useContext)(_TableContext.default, ['scrollbarSize', 'fixHeader', 'fixColumn', 'componentWidth', 'horizonScroll']),
  30. scrollbarSize = _useContext.scrollbarSize,
  31. fixHeader = _useContext.fixHeader,
  32. fixColumn = _useContext.fixColumn,
  33. componentWidth = _useContext.componentWidth,
  34. horizonScroll = _useContext.horizonScroll;
  35. // Cache render node
  36. var contentNode = children;
  37. if (isEmpty ? horizonScroll && componentWidth : fixColumn) {
  38. contentNode = /*#__PURE__*/React.createElement("div", {
  39. style: {
  40. width: componentWidth - stickyOffset - (fixHeader && !isEmpty ? scrollbarSize : 0),
  41. position: 'sticky',
  42. left: stickyOffset,
  43. overflow: 'hidden'
  44. },
  45. className: "".concat(prefixCls, "-expanded-row-fixed")
  46. }, contentNode);
  47. }
  48. return /*#__PURE__*/React.createElement(Component, {
  49. className: className,
  50. style: {
  51. display: expanded ? null : 'none'
  52. }
  53. }, /*#__PURE__*/React.createElement(_Cell.default, {
  54. component: cellComponent,
  55. prefixCls: prefixCls,
  56. colSpan: colSpan
  57. }, contentNode));
  58. }
  59. var _default = exports.default = ExpandedRow;