UNPKG

@atlaskit/dynamic-table

Version:

A dynamic table displays rows of data with built-in pagination, sorting, and re-ordering functionality.

59 lines (57 loc) 3.23 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireDefault(require("react")); var _withSortedPageRows = _interopRequireDefault(require("../hoc/with-sorted-page-rows")); var _tableRow = _interopRequireDefault(require("./table-row")); function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } // eslint-disable-next-line @repo/internal/react/no-class-components var BodyComponent = /*#__PURE__*/function (_React$Component) { function BodyComponent() { (0, _classCallCheck2.default)(this, BodyComponent); return _callSuper(this, BodyComponent, arguments); } (0, _inherits2.default)(BodyComponent, _React$Component); return (0, _createClass2.default)(BodyComponent, [{ key: "render", value: function render() { var _this$props = this.props, pageRows = _this$props.pageRows, head = _this$props.head, isFixedSize = _this$props.isFixedSize, highlightedRowIndex = _this$props.highlightedRowIndex, testId = _this$props.testId, forwardedRef = _this$props.forwardedRef; return /*#__PURE__*/_react.default.createElement("tbody", { "data-testid": testId && "".concat(testId, "--body"), ref: forwardedRef }, pageRows.map(function (row, rowIndex) { return /*#__PURE__*/_react.default.createElement(_tableRow.default, { head: head, isFixedSize: isFixedSize, key: row.key || rowIndex, row: row, isHighlighted: row.isHighlighted || !!highlightedRowIndex && (typeof highlightedRowIndex === 'number' ? highlightedRowIndex === rowIndex : highlightedRowIndex.indexOf(rowIndex) > -1), testId: testId }); })); } }]); }(_react.default.Component); var Body = (0, _withSortedPageRows.default)( /*#__PURE__*/_react.default.forwardRef(function (props, ref) { return /*#__PURE__*/_react.default.createElement(BodyComponent, (0, _extends2.default)({}, props, { forwardedRef: ref })); })); // eslint-disable-next-line @repo/internal/react/require-jsdoc var _default = exports.default = Body;