epn-ui
Version:
Дизайн система кабинета ВМ
32 lines (29 loc) • 1.46 kB
JavaScript
import React, { useEffect, useMemo } from 'react';
import Table from 'antd/lib/table';
import useI18n from '../../../i18n/index.js';
import { formatNumber } from '../utils/number.js';
var ExternalSummary = function (_a) {
var columns = _a.columns, summary = _a.summary, locale = _a.locale;
var _b = useI18n(), t = _b.t, changeLanguage = _b.changeLanguage;
useEffect(function () {
changeLanguage(locale);
}, [locale]);
var totalColumns = useMemo(function () {
return columns.filter(function (item) { return !item.hideForTotal && !item.hidden; });
}, [columns]);
return (React.createElement(Table.Summary, { fixed: true },
React.createElement(Table.Summary.Row, null,
React.createElement(Table.Summary.Cell, { index: 0 }, t('Total')),
totalColumns.map(function (item, index) {
if (!item.dataIndex)
return null;
if (typeof item.dataIndex !== 'string')
return null;
return (React.createElement(Table.Summary.Cell, { index: index + 1, key: item.key },
React.createElement(React.Fragment, null,
item.render &&
item.render(summary[item.dataIndex], item, index + 1),
!item.render && formatNumber(+summary[item.dataIndex]))));
}))));
};
export { ExternalSummary as default };