Files
copilot-toolbox-template-123/node_modules/@ant-design/pro-table/es/components/ToolBar/DensityIcon.js
2026-01-09 14:52:46 +00:00

43 lines
1.6 KiB
JavaScript

import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import { ColumnHeightOutlined } from '@ant-design/icons';
import { useIntl } from '@ant-design/pro-provider';
import { menuOverlayCompatible } from '@ant-design/pro-utils';
import { Dropdown, Tooltip } from 'antd';
import React, { useContext } from 'react';
import { TableContext } from "../../Store/Provide";
import { jsx as _jsx } from "react/jsx-runtime";
var DensityIcon = function DensityIcon(props) {
var _props$icon = props.icon,
icon = _props$icon === void 0 ? /*#__PURE__*/_jsx(ColumnHeightOutlined, {}) : _props$icon;
var counter = useContext(TableContext);
var intl = useIntl();
var dropdownProps = menuOverlayCompatible({
selectedKeys: [counter.tableSize],
onClick: function onClick(_ref) {
var _counter$setTableSize;
var key = _ref.key;
(_counter$setTableSize = counter.setTableSize) === null || _counter$setTableSize === void 0 || _counter$setTableSize.call(counter, key);
},
style: {
width: 80
},
items: [{
key: 'large',
label: intl.getMessage('tableToolBar.densityLarger', '宽松')
}, {
key: 'middle',
label: intl.getMessage('tableToolBar.densityMiddle', '中等')
}, {
key: 'small',
label: intl.getMessage('tableToolBar.densitySmall', '紧凑')
}]
});
return /*#__PURE__*/_jsx(Dropdown, _objectSpread(_objectSpread({}, dropdownProps), {}, {
trigger: ['click'],
children: /*#__PURE__*/_jsx(Tooltip, {
title: intl.getMessage('tableToolBar.density', '表格密度'),
children: icon
})
}));
};
export default /*#__PURE__*/React.memo(DensityIcon);