UNPKG

pouncejs

Version:

A collection of UI components from Panther labs

78 lines (61 loc) 2.29 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 _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _react = _interopRequireDefault(require("react")); var _Box = _interopRequireDefault(require("../Box")); var _Table = require("./Table"); var TableRow = /*#__PURE__*/_react.default.forwardRef(function TableRow(_ref, ref) { var _ref$selected = _ref.selected, selected = _ref$selected === void 0 ? false : _ref$selected, rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["selected"]); var tableProps = (0, _Table.useTable)(); var rowStyles = _react.default.useMemo(function () { var styles = {}; if (tableProps.rowSeparationStrategy === 'background') { styles = (0, _extends2.default)({}, styles, { 'tbody > &:nth-of-type(odd)': { backgroundColor: !selected ? tableProps.backgroundColorOddRows : undefined }, 'tbody > &:nth-of-type(even)': { backgroundColor: !selected ? tableProps.backgroundColor : undefined } }); } if (tableProps.rowSeparationStrategy === 'border') { styles = (0, _extends2.default)({}, styles, { borderBottom: '1px solid', borderColor: 'navyblue-300' }); } if (tableProps.hoverable) { styles = (0, _extends2.default)({}, styles, { transition: 'all 0.05s linear', _hover: { backgroundColor: 'navyblue-500' } }); } if (selected) { styles = (0, _extends2.default)({}, styles, { backgroundColor: 'navyblue-600', borderColor: 'navyblue-600', _hover: { backgroundColor: 'navyblue-600', borderColor: 'navyblue-600' } }); } return styles; }, [tableProps, selected]); return /*#__PURE__*/_react.default.createElement(_Box.default, (0, _extends2.default)({ as: "tr", role: "row", ref: ref, sx: rowStyles }, rest)); }); var _default = /*#__PURE__*/_react.default.memo(TableRow); exports.default = _default;