1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import * as React from 'react';
- import ResizeObserver from 'rc-resize-observer';
- import MeasureCell from "./MeasureCell";
- import isVisible from "rc-util/es/Dom/isVisible";
- import { useContext } from '@rc-component/context';
- import TableContext from "../context/TableContext";
- export default function MeasureRow(_ref) {
- var prefixCls = _ref.prefixCls,
- columnsKey = _ref.columnsKey,
- onColumnResize = _ref.onColumnResize,
- columns = _ref.columns;
- var ref = React.useRef(null);
- var _useContext = useContext(TableContext, ['measureRowRender']),
- measureRowRender = _useContext.measureRowRender;
- var measureRow = /*#__PURE__*/React.createElement("tr", {
- "aria-hidden": "true",
- className: "".concat(prefixCls, "-measure-row"),
- style: {
- height: 0
- },
- ref: ref
- }, /*#__PURE__*/React.createElement(ResizeObserver.Collection, {
- onBatchResize: function onBatchResize(infoList) {
- if (isVisible(ref.current)) {
- infoList.forEach(function (_ref2) {
- var columnKey = _ref2.data,
- size = _ref2.size;
- onColumnResize(columnKey, size.offsetWidth);
- });
- }
- }
- }, columnsKey.map(function (columnKey) {
- var column = columns.find(function (col) {
- return col.key === columnKey;
- });
- return /*#__PURE__*/React.createElement(MeasureCell, {
- key: columnKey,
- columnKey: columnKey,
- onColumnResize: onColumnResize,
- column: column
- });
- })));
- return measureRowRender ? measureRowRender(measureRow) : measureRow;
- }
|