@intility/bifrost-react
Version:
React library for Intility's design system, Bifrost.
93 lines • 2.32 kB
JavaScript
import { c as _c } from "react-compiler-runtime";
import { forwardRef } from "react";
import classNames from "classnames";
import { faSortUp } from "@fortawesome/free-solid-svg-icons/faSortUp";
import { faSortDown } from "@fortawesome/free-solid-svg-icons/faSortDown";
import { faSort } from "@fortawesome/free-solid-svg-icons/faSort";
import Icon from "../Icon/Icon.js";
import accessibleOnClick from "../../utils/accessibleOnClick.js";
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
const TableHeaderCell = /*#__PURE__*/forwardRef((t0, ref) => {
const $ = _c(20);
let children;
let sorting;
let t1;
let t2;
let t3;
let t4;
if ($[0] !== ref || $[1] !== t0) {
const {
className,
onClick,
sorting: t5,
children: t6,
...props
} = t0;
sorting = t5;
children = t6;
if ($[8] !== className || $[9] !== onClick) {
t1 = classNames(className, {
"bf-table-cell-clickable": onClick
});
$[8] = className;
$[9] = onClick;
$[10] = t1;
} else {
t1 = $[10];
}
t2 = ref;
t3 = props;
t4 = accessibleOnClick(props, onClick);
$[0] = ref;
$[1] = t0;
$[2] = children;
$[3] = sorting;
$[4] = t1;
$[5] = t2;
$[6] = t3;
$[7] = t4;
} else {
children = $[2];
sorting = $[3];
t1 = $[4];
t2 = $[5];
t3 = $[6];
t4 = $[7];
}
let t5;
if ($[11] !== sorting) {
t5 = sorting && (sorting === "none" ? /*#__PURE__*/_jsx(Icon, {
className: "bf-table-header-cell-sort bf-table-header-cell-sort-none",
icon: faSort
}) : /*#__PURE__*/_jsx(Icon, {
className: "bf-table-header-cell-sort",
icon: sorting === "asc" ? faSortUp : faSortDown
}));
$[11] = sorting;
$[12] = t5;
} else {
t5 = $[12];
}
let t6;
if ($[13] !== children || $[14] !== t1 || $[15] !== t2 || $[16] !== t3 || $[17] !== t4 || $[18] !== t5) {
t6 = /*#__PURE__*/_jsxs("th", {
className: t1,
ref: t2,
...t3,
...t4,
children: [children, t5]
});
$[13] = children;
$[14] = t1;
$[15] = t2;
$[16] = t3;
$[17] = t4;
$[18] = t5;
$[19] = t6;
} else {
t6 = $[19];
}
return t6;
});
TableHeaderCell.displayName = "Table.HeaderCell";
export default TableHeaderCell;