pouncejs
Version:
A collection of UI components from Panther labs
52 lines (39 loc) • 1.99 kB
JavaScript
"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 TableHeaderCell = /*#__PURE__*/_react.default.forwardRef(function TableHeaderCell(_ref, ref) {
var _ref$align = _ref.align,
align = _ref$align === void 0 ? 'left' : _ref$align,
sortDir = _ref.sortDir,
rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["align", "sortDir"]);
var _useTable = (0, _Table.useTable)(),
size = _useTable.size,
stickyHeader = _useTable.stickyHeader,
backgroundColor = _useTable.backgroundColor; // When a value for backgroundColor has been provided, the header, sticky or otherwise, will be
// that value. When a value for backgroundColor has not been provided, and the default value of
// `inherit` has been applied, sticky headers will have a `navyblue-300` background color.
var headerBackgroundColor = stickyHeader && backgroundColor === 'inherit' ? 'navyblue-300' : backgroundColor;
return /*#__PURE__*/_react.default.createElement(_Box.default, (0, _extends2.default)({
as: "th",
role: "columnheader",
ref: ref,
p: size === 'medium' ? 4 : 2,
fontWeight: "medium",
textTransform: "uppercase",
fontSize: "small",
textAlign: align,
"aria-sort": sortDir ? sortDir : undefined,
position: stickyHeader ? 'sticky' : undefined,
top: stickyHeader ? 0 : undefined,
backgroundColor: headerBackgroundColor,
verticalAlign: "middle"
}, rest));
});
var _default = /*#__PURE__*/_react.default.memo(TableHeaderCell);
exports.default = _default;