UNPKG

@ant-design/pro-utils

Version:
66 lines (63 loc) 2.06 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.genCopyable = void 0; var _antd = require("antd"); var _react = _interopRequireDefault(require("react")); var _jsxRuntime = require("react/jsx-runtime"); var isNeedTranText = function isNeedTranText(item) { var _item$valueType; if (item !== null && item !== void 0 && (_item$valueType = item.valueType) !== null && _item$valueType !== void 0 && _item$valueType.toString().startsWith('date')) { return true; } if ((item === null || item === void 0 ? void 0 : item.valueType) === 'select' || item !== null && item !== void 0 && item.valueEnum) { return true; } return false; }; var getEllipsis = function getEllipsis(item) { var _item$ellipsis; if (((_item$ellipsis = item.ellipsis) === null || _item$ellipsis === void 0 ? void 0 : _item$ellipsis.showTitle) === false) { return false; } return item.ellipsis; }; /** * 生成 Copyable 或 Ellipsis 的 dom * * @param dom * @param item * @param text */ var genCopyable = exports.genCopyable = function genCopyable(dom, item, text) { if (item.copyable || item.ellipsis) { var copyable = item.copyable && text ? { text: text, tooltips: ['', ''] } : undefined; /** 有些 valueType 需要设置copy的为string */ var needTranText = isNeedTranText(item); var ellipsis = getEllipsis(item) && text ? { tooltip: // 支持一下 tooltip 的关闭 (item === null || item === void 0 ? void 0 : item.tooltip) !== false && needTranText ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: "pro-table-tooltip-text", children: dom }) : text } : false; return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Text, { style: { width: '100%', margin: 0, padding: 0 }, title: "", copyable: copyable, ellipsis: ellipsis, children: dom }); } return dom; };