UNPKG

react-bootify

Version:
91 lines (72 loc) 3.92 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = Table; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _classnames = _interopRequireDefault(require("classnames")); var _tag = _interopRequireDefault(require("../tag")); var _col = _interopRequireDefault(require("./col")); var _header = _interopRequireDefault(require("./header")); var _body = _interopRequireDefault(require("./body")); var _row = _interopRequireDefault(require("./row")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } /** * See https://getbootstrap.com/docs/4.4/content/tables */ function Table(props) { var _props = props, responsive = _props.responsive, className = _props.className, striped = _props.striped, dark = _props.dark, hover = _props.hover, bordered = _props.bordered, borderless = _props.borderless, size = _props.size, props = _objectWithoutProperties(_props, ["responsive", "className", "striped", "dark", "hover", "bordered", "borderless", "size"]); className = (0, _classnames["default"])(className, 'table'); className = (0, _classnames["default"])(className, striped ? 'table-striped' : false); className = (0, _classnames["default"])(className, hover ? 'table-hover' : false); className = (0, _classnames["default"])(className, dark ? 'table-dark' : false); className = (0, _classnames["default"])(className, bordered ? 'table-bordered' : false); className = (0, _classnames["default"])(className, borderless ? 'table-borderless' : false); className = (0, _classnames["default"])(className, size ? 'table-' + size : false); var table = _react["default"].createElement("table", _extends({}, props, { className: className }), props.children); if (responsive) { var wrapperClassName = typeof responsive == 'string' ? 'table-responsive-' + responsive : 'table-responsive'; table = _react["default"].createElement("div", { className: wrapperClassName }, table); } return table; } ; Table.propTypes = { borderless: _propTypes["default"].bool, bordered: _propTypes["default"].bool, striped: _propTypes["default"].bool, dark: _propTypes["default"].bool, hover: _propTypes["default"].bool, responsive: _propTypes["default"].oneOfType([_propTypes["default"].bool, _propTypes["default"].string]), size: _propTypes["default"].string }; Table.defaultProps = { hover: false, striped: false, dark: false, bordered: false, borderless: false, responsive: false, size: 'md' }; Table.Header = _header["default"]; Table.Col = _col["default"]; Table.Row = _row["default"]; Table.Body = _body["default"];