@appbuckets/react-ui
Version:
Just Another React UI Framework
55 lines (52 loc) • 1.31 kB
JavaScript
import { __assign } from 'tslib';
import clsx from 'clsx';
import * as React from 'react';
import { useRxTable } from '../RxTable.context.js';
/* --------
* Component Definition
* -------- */
var ColumnFooter = function (props) {
var className = props.className,
column = props.column;
// ----
// Get Context Data
// ----
var _a = useRxTable(),
classes = _a.classes,
FooterCell = _a.Components.FooterCell,
getColumnWidth = _a.columns.getWidth,
isVirtualized = _a.layout.isVirtualized,
styles = _a.styles;
// ----
// Build Footer Classes
// ----
var footerClasses = clsx(
column.textAlign && 'has-text-'.concat(column.textAlign),
className,
column.footerClassName,
classes.FooterCell
);
// ----
// Get Column Width
// ----
var columnWidth = React.useMemo(
function () {
return getColumnWidth(column.key);
},
[getColumnWidth, column.key]
);
// ----
// Render the Component
// ----
return React.createElement(FooterCell, {
className: footerClasses,
column: column,
isVirtualized: isVirtualized,
style: __assign(__assign({}, styles.FooterCell), {
flexBasis: columnWidth,
width: columnWidth,
}),
});
};
ColumnFooter.displayName = 'ColumnFooter';
export { ColumnFooter as default };