@vtx/components 3.1.56 → 3.1.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/vtx-combogrid/style/index.css +3 -0
- package/lib/vtx-combogrid/style/index.less +32 -29
- package/lib/vtx-datagrid/ColumnSetting.js +6 -2
- package/lib/vtx-datagrid/ColumnSetting.js.map +1 -1
- package/lib/vtx-datagrid/index.js +5 -2
- package/lib/vtx-datagrid/index.js.map +1 -1
- package/lib/vtx-datagrid/style/index.css +9 -0
- package/lib/vtx-datagrid/style/index.less +9 -0
- package/lib/vtx-form-layout/style/index.css +2 -2
- package/lib/vtx-form-layout/style/index.less +2 -2
- package/lib/vtx-modal/index.js +9 -0
- package/lib/vtx-modal/index.js.map +1 -1
- package/lib/vtx-search/index.js +4 -2
- package/lib/vtx-search/index.js.map +1 -1
- package/lib/vtx-search/style/index.css +8 -0
- package/lib/vtx-search/style/index.less +92 -83
- package/lib/vtx-ztree-select/index.js +11 -2
- package/lib/vtx-ztree-select/index.js.map +1 -1
- package/lib/vtx-ztree-select/style/index.css +12 -0
- package/lib/vtx-ztree-select/style/index.less +8 -0
- package/package.json +1 -1
|
@@ -1,29 +1,32 @@
|
|
|
1
|
-
@prefix-cls: vtx-combogrid;
|
|
2
|
-
|
|
3
|
-
.@{prefix-cls} {
|
|
4
|
-
&-popover {
|
|
5
|
-
width: 550px;
|
|
6
|
-
.ant-form-item {
|
|
7
|
-
margin-bottom: 12px;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
&-btns {
|
|
11
|
-
line-height: 32px;
|
|
12
|
-
button + button {
|
|
13
|
-
margin-left: 4px;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
.ant-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
@prefix-cls: vtx-combogrid;
|
|
2
|
+
|
|
3
|
+
.@{prefix-cls} {
|
|
4
|
+
&-popover {
|
|
5
|
+
width: 550px;
|
|
6
|
+
.ant-form-item {
|
|
7
|
+
margin-bottom: 12px;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
&-btns {
|
|
11
|
+
line-height: 32px;
|
|
12
|
+
button + button {
|
|
13
|
+
margin-left: 4px;
|
|
14
|
+
}
|
|
15
|
+
.ant-btn-default {
|
|
16
|
+
color: rgba(0, 0, 0, 0.65);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
&-main {
|
|
20
|
+
height: 400px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&-dropdown {
|
|
24
|
+
padding-top: 0;
|
|
25
|
+
.ant-popover-arrow {
|
|
26
|
+
display: none;
|
|
27
|
+
}
|
|
28
|
+
.ant-pagination.mini .ant-pagination-item {
|
|
29
|
+
line-height: 24px;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -79,7 +79,9 @@ function ColumnSetting(props) {
|
|
|
79
79
|
_props$disabledColumn = props.disabledColumnKeys,
|
|
80
80
|
disabledColumnKeys = _props$disabledColumn === void 0 ? [] : _props$disabledColumn,
|
|
81
81
|
onColumnsSave = props.onColumnsSave,
|
|
82
|
-
uniqueKey = props.uniqueKey
|
|
82
|
+
uniqueKey = props.uniqueKey,
|
|
83
|
+
_props$columns = props.columns,
|
|
84
|
+
columns = _props$columns === void 0 ? [] : _props$columns;
|
|
83
85
|
(0, _react.useEffect)(function () {
|
|
84
86
|
var chkLen = checkedColumnKeys === null || checkedColumnKeys === void 0 ? void 0 : checkedColumnKeys.length;
|
|
85
87
|
var optionLen = columnSettingOptions === null || columnSettingOptions === void 0 ? void 0 : columnSettingOptions.length;
|
|
@@ -179,7 +181,9 @@ function ColumnSetting(props) {
|
|
|
179
181
|
});
|
|
180
182
|
};
|
|
181
183
|
|
|
182
|
-
var isReady = columnSettingOptions.length > 0
|
|
184
|
+
var isReady = columnSettingOptions.length > 0 && columns.filter(function (item) {
|
|
185
|
+
return item.key !== 'action';
|
|
186
|
+
}).length > 0;
|
|
183
187
|
(0, _react.useEffect)(function () {
|
|
184
188
|
if (isReady && uniqueKey) {
|
|
185
189
|
getUmsColumns();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnSetting.js","names":["ColumnSetting","props","getUrlParam","token","userId","tenantId","useSet","indeterminate","checkAll","columnSettingId","state","setState","prefixCls","checkedColumnKeys","columnSettingOptions","onChange","onReset","disabledColumnKeys","onColumnsSave","uniqueKey","useEffect","chkLen","length","optionLen","onCheckChange","e","key","newCheckedColumnKeys","target","checked","filter","item","onCheckAllChange","map","onSaveChange","getUmsColumns","axios","method","url","headers","Authorization","params","tableCode","then","data","result","total","record","rows","id","timer","setTimeout","showColumns","split","clearTimeout","saveColumns","message","warn","JSON","stringify","join","name","success","isReady","opt","dataIndex","includes","title","margin","children","propTypes","PropTypes","string","array","node","func"],"sources":["vtx-datagrid/ColumnSetting.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport Popover from 'antd/lib/popover';\nimport Divider from 'antd/lib/divider';\nimport Button from 'antd/lib/button';\nimport Checkbox from 'antd/lib/checkbox';\nimport message from 'antd/lib/message';\nimport PropTypes from 'prop-types';\nimport useSet from '../_util/useSet';\nimport axios from 'axios';\nimport getUrlParam from '../_util/getUrlParam';\n\nexport default function ColumnSetting(props) {\n const { token='', userId='', tenantId='' } = getUrlParam();\n const [state, setState] = useSet({\n indeterminate: false,\n checkAll: false,\n columnSettingId: '',\n });\n const {\n prefixCls,\n checkedColumnKeys,\n columnSettingOptions,\n onChange,\n onReset,\n disabledColumnKeys = [],\n onColumnsSave,\n uniqueKey\n } = props;\n\n useEffect(() => {\n const chkLen = checkedColumnKeys?.length;\n const optionLen = columnSettingOptions?.length;\n setState({\n checkAll: chkLen == optionLen,\n indeterminate: chkLen && chkLen < optionLen,\n });\n }, [checkedColumnKeys]);\n\n const { indeterminate, checkAll } = state;\n\n // 单选\n const onCheckChange = (e, key) => {\n if (onChange) {\n const newCheckedColumnKeys = e.target.checked\n ? [...checkedColumnKeys, key]\n : checkedColumnKeys?.filter(item => item != key);\n onChange(newCheckedColumnKeys);\n }\n };\n\n // 全选\n const onCheckAllChange = e => {\n if (onChange) {\n const newCheckedColumnKeys = e.target.checked\n ? columnSettingOptions?.map(item => item.key)\n : [];\n onChange(newCheckedColumnKeys);\n }\n };\n // 保存按钮\n const onSaveChange = () => {\n if (onChange) {\n onColumnsSave(checkedColumnKeys);\n }\n };\n function getUmsColumns (){\n if(!onColumnsSave && !!uniqueKey){\n axios({\n method: 'GET',\n url: '/cloud/management/api/v101/user/config/table/page',\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n },\n params: {\n tableCode: uniqueKey,\n }\n }).then(({data})=>{\n if(data?.result == 0 && data?.data.total>0){\n let record = data.data.rows[0];\n record?.id && setState({columnSettingId: record.id});\n let timer = setTimeout(()=>{\n record?.showColumns && onChange(record.showColumns.split(\",\"));\n clearTimeout(timer)\n },500)\n }\n })\n }\n }\n // \n const saveColumns = ()=>{\n if((checkedColumnKeys||[]).length == 0){\n message.warn('至少勾选一列保存');\n return false;\n }\n axios({\n method: 'POST',\n url: '/cloud/management/api/v101/user/config/table/save',\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n 'Content-Type': 'application/json',\n },\n data: JSON.stringify({\n showColumns: (checkedColumnKeys||[]).join(','),\n tableCode: uniqueKey,\n name: uniqueKey,\n userId,\n tenantId,\n id: state.columnSettingId\n })\n }).then(({data})=>{\n if(data?.result == 0){\n message.success('操作成功');\n getUmsColumns();\n }\n })\n }\n const isReady = columnSettingOptions.length>0;\n\n useEffect(()=>{\n if(isReady && uniqueKey){\n getUmsColumns();\n }\n },[isReady, uniqueKey])\n return (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n arrowPointAtCenter\n title={\n <div className={`${prefixCls}-column-setting-title`} slot=\"title\">\n <Checkbox\n className={`${prefixCls}-column-setting-checkbox-wrapper`}\n indeterminate={indeterminate}\n checked={checkAll}\n onChange={onCheckAllChange}\n >\n 列展示\n </Checkbox>\n <a onClick={onReset}>重置</a>\n </div>\n }\n content={\n <div className={`${prefixCls}-column-setting-list`}>\n {columnSettingOptions?.map(opt => {\n const key = opt.key || opt.dataIndex;\n return (\n <div key={key}>\n <Checkbox\n checked={checkedColumnKeys?.includes(key)}\n onChange={e => onCheckChange(e, key)}\n disabled={disabledColumnKeys.includes(key)}\n >\n {opt.title}\n </Checkbox>\n </div>\n );\n })}\n {typeof onColumnsSave === 'function' ? (\n <>\n <Divider style={{ margin: '5px 0 10px 0' }} />\n <Button block={true} onClick={() => onSaveChange()}>\n 保存\n </Button>\n </>\n ) : null}\n {!onColumnsSave && uniqueKey ? (\n <>\n <Divider style={{ margin: '5px 0 10px 0' }} />\n <Button block={true} onClick={() => saveColumns()}>\n 保存\n </Button>\n </>\n ) : null}\n </div>\n }\n >\n {props.children}\n </Popover>\n );\n}\n\nColumnSetting.propTypes = {\n prefixCls: PropTypes.string,\n checkedColumnKeys: PropTypes.array,\n columnSettingOptions: PropTypes.array,\n children: PropTypes.node,\n onChange: PropTypes.func,\n onReset: PropTypes.func,\n disabledColumnKeys: PropTypes.array,\n onColumnsSave: PropTypes.func,\n uniqueKey: PropTypes.string,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnSetting.js","names":["ColumnSetting","props","getUrlParam","token","userId","tenantId","useSet","indeterminate","checkAll","columnSettingId","state","setState","prefixCls","checkedColumnKeys","columnSettingOptions","onChange","onReset","disabledColumnKeys","onColumnsSave","uniqueKey","columns","useEffect","chkLen","length","optionLen","onCheckChange","e","key","newCheckedColumnKeys","target","checked","filter","item","onCheckAllChange","map","onSaveChange","getUmsColumns","axios","method","url","headers","Authorization","params","tableCode","then","data","result","total","record","rows","id","timer","setTimeout","showColumns","split","clearTimeout","saveColumns","message","warn","JSON","stringify","join","name","success","isReady","opt","dataIndex","includes","title","margin","children","propTypes","PropTypes","string","array","node","func"],"sources":["vtx-datagrid/ColumnSetting.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport Popover from 'antd/lib/popover';\nimport Divider from 'antd/lib/divider';\nimport Button from 'antd/lib/button';\nimport Checkbox from 'antd/lib/checkbox';\nimport message from 'antd/lib/message';\nimport PropTypes from 'prop-types';\nimport useSet from '../_util/useSet';\nimport axios from 'axios';\nimport getUrlParam from '../_util/getUrlParam';\n\nexport default function ColumnSetting(props) {\n const { token='', userId='', tenantId='' } = getUrlParam();\n const [state, setState] = useSet({\n indeterminate: false,\n checkAll: false,\n columnSettingId: '',\n });\n const {\n prefixCls,\n checkedColumnKeys,\n columnSettingOptions,\n onChange,\n onReset,\n disabledColumnKeys = [],\n onColumnsSave,\n uniqueKey,\n columns=[]\n } = props;\n\n useEffect(() => {\n const chkLen = checkedColumnKeys?.length;\n const optionLen = columnSettingOptions?.length;\n setState({\n checkAll: chkLen == optionLen,\n indeterminate: chkLen && chkLen < optionLen,\n });\n }, [checkedColumnKeys]);\n\n const { indeterminate, checkAll } = state;\n\n // 单选\n const onCheckChange = (e, key) => {\n if (onChange) {\n const newCheckedColumnKeys = e.target.checked\n ? [...checkedColumnKeys, key]\n : checkedColumnKeys?.filter(item => item != key);\n onChange(newCheckedColumnKeys);\n }\n };\n\n // 全选\n const onCheckAllChange = e => {\n if (onChange) {\n const newCheckedColumnKeys = e.target.checked\n ? columnSettingOptions?.map(item => item.key)\n : [];\n onChange(newCheckedColumnKeys);\n }\n };\n // 保存按钮\n const onSaveChange = () => {\n if (onChange) {\n onColumnsSave(checkedColumnKeys);\n }\n };\n function getUmsColumns (){\n if(!onColumnsSave && !!uniqueKey){\n axios({\n method: 'GET',\n url: '/cloud/management/api/v101/user/config/table/page',\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n },\n params: {\n tableCode: uniqueKey,\n }\n }).then(({data})=>{\n if(data?.result == 0 && data?.data.total>0){\n let record = data.data.rows[0];\n record?.id && setState({columnSettingId: record.id});\n let timer = setTimeout(()=>{\n record?.showColumns && onChange(record.showColumns.split(\",\"));\n clearTimeout(timer)\n },500)\n }\n })\n }\n }\n // \n const saveColumns = ()=>{\n if((checkedColumnKeys||[]).length == 0){\n message.warn('至少勾选一列保存');\n return false;\n }\n axios({\n method: 'POST',\n url: '/cloud/management/api/v101/user/config/table/save',\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n 'Content-Type': 'application/json',\n },\n data: JSON.stringify({\n showColumns: (checkedColumnKeys||[]).join(','),\n tableCode: uniqueKey,\n name: uniqueKey,\n userId,\n tenantId,\n id: state.columnSettingId\n })\n }).then(({data})=>{\n if(data?.result == 0){\n message.success('操作成功');\n getUmsColumns();\n }\n })\n }\n \n const isReady = columnSettingOptions.length>0 && columns.filter(item=>item.key!=='action').length>0;\n\n useEffect(()=>{\n if(isReady && uniqueKey){\n getUmsColumns();\n }\n },[isReady, uniqueKey])\n return (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n arrowPointAtCenter\n title={\n <div className={`${prefixCls}-column-setting-title`} slot=\"title\">\n <Checkbox\n className={`${prefixCls}-column-setting-checkbox-wrapper`}\n indeterminate={indeterminate}\n checked={checkAll}\n onChange={onCheckAllChange}\n >\n 列展示\n </Checkbox>\n <a onClick={onReset}>重置</a>\n </div>\n }\n content={\n <div className={`${prefixCls}-column-setting-list`}>\n {columnSettingOptions?.map(opt => {\n const key = opt.key || opt.dataIndex;\n return (\n <div key={key}>\n <Checkbox\n checked={checkedColumnKeys?.includes(key)}\n onChange={e => onCheckChange(e, key)}\n disabled={disabledColumnKeys.includes(key)}\n >\n {opt.title}\n </Checkbox>\n </div>\n );\n })}\n {typeof onColumnsSave === 'function' ? (\n <>\n <Divider style={{ margin: '5px 0 10px 0' }} />\n <Button block={true} onClick={() => onSaveChange()}>\n 保存\n </Button>\n </>\n ) : null}\n {!onColumnsSave && uniqueKey ? (\n <>\n <Divider style={{ margin: '5px 0 10px 0' }} />\n <Button block={true} onClick={() => saveColumns()}>\n 保存\n </Button>\n </>\n ) : null}\n </div>\n }\n >\n {props.children}\n </Popover>\n );\n}\n\nColumnSetting.propTypes = {\n prefixCls: PropTypes.string,\n checkedColumnKeys: PropTypes.array,\n columnSettingOptions: PropTypes.array,\n children: PropTypes.node,\n onChange: PropTypes.func,\n onReset: PropTypes.func,\n disabledColumnKeys: PropTypes.array,\n onColumnsSave: PropTypes.func,\n uniqueKey: PropTypes.string,\n};\n"],"mappings":"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"}
|
|
@@ -308,7 +308,9 @@ function VtxDatagrid(props) {
|
|
|
308
308
|
className: "".concat(prefixCls, "-toolbar-right")
|
|
309
309
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
310
310
|
className: (0, _classnames2["default"])("".concat(prefixCls, "-space-item"), "".concat(prefixCls, "-toolbar-actions"))
|
|
311
|
-
}, buttonGroup), /*#__PURE__*/_react["default"].createElement("div", {
|
|
311
|
+
}, buttonGroup), buttonGroup && /*#__PURE__*/_react["default"].createElement("div", {
|
|
312
|
+
className: "".concat(prefixCls, "-toolbar-line")
|
|
313
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
312
314
|
className: (0, _classnames2["default"])("".concat(prefixCls, "-space-item"), "".concat(prefixCls, "-toolbar-setting"))
|
|
313
315
|
}, refreshIconVisible && /*#__PURE__*/_react["default"].createElement("div", {
|
|
314
316
|
className: "".concat(prefixCls, "-toolbar-setting-item"),
|
|
@@ -350,7 +352,8 @@ function VtxDatagrid(props) {
|
|
|
350
352
|
},
|
|
351
353
|
disabledColumnKeys: disabledColumnKeys,
|
|
352
354
|
onColumnsSave: onColumnsSave,
|
|
353
|
-
uniqueKey: uniqueKey || state.projectKey
|
|
355
|
+
uniqueKey: uniqueKey || state.projectKey,
|
|
356
|
+
columns: rest.columns
|
|
354
357
|
}, /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
355
358
|
title: (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.columnSettingText) || "列设置"
|
|
356
359
|
}, /*#__PURE__*/_react["default"].createElement(_SettingOutlined["default"], null)))))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["isMac","navigator","userAgent","indexOf","VtxDatagrid","props","useSet","visibleColumns","checkedColumnKeys","columnSettingOptions","datagridId","Date","getTime","scrollY","size","projectKey","state","setState","datagridRef","useRef","alertHeight","toolbarHeight","prefixCls","toolbar","toolbarClassName","toolbarTilte","buttonGroup","refreshIconVisible","hideColumnSetting","hideColumnHeight","visibleColumnKeys","defaultVisibleColumnKeys","onVisibleColumnsChange","onRefresh","indexColumn","indexFixed","bordered","indexTitle","startIndex","autoFit","headFootHeight","columnResizable","components","className","style","emptyText","onRowSelectionClear","searchCollapseEvent$","disabledColumnKeys","onColumnsSave","uniqueKey","customEnumText","rest","getUniqueKey","route","location","href","match","axios","method","url","pathname","then","res","status","data","key","useEffect","window","addEventListener","calculateHeight","removeEventListener","useLayoutEffect","dataSource","length","rowSelection","selectedRowKeys","join","useSubscription","timer","setTimeout","clearTimeout","parseColumns","columns","map","col","dataIndex","type","columnKeys","filter","item","includes","hasAlert","current","bodyHeight","clientHeight","divs","getElementsByTagName","bodyDiv","Array","prototype","call","dom","minHeight","handleChangeColumns","keys","console","log","toolbarRender","classnames","refreshText","densityDefaultText","densityMiddleText","densitySmallText","columnDensityText","columnSettingText","getPagination","pagination","pageSizeOptions","showSizeChanger","showQuickJumper","showTotal","total","column","newColumn","renderButtons","renderButtonsVisibleNum","render","isFunction","text","record","index","renderColumnButtons","undefined","onHeaderCell","width","onResize","handleResize","e","nextColumns","title","fixed","i","_serialNum","scroll","y","height","locale","header","cell","ResizeableTitle","propTypes","PropTypes","string","bool","array","func","oneOfType","node","number","object"],"sources":["vtx-datagrid/index.jsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport Table from 'antd/lib/table';\r\nimport Tooltip from 'antd/lib/tooltip';\r\nimport Dropdown from 'antd/lib/dropdown';\r\nimport Menu from 'antd/lib/menu';\r\nimport Empty from 'antd/lib/empty';\r\nimport RedoOutlined from '@ant-design/icons/RedoOutlined';\r\nimport ColumnHeightOutlined from '@ant-design/icons/ColumnHeightOutlined';\r\nimport SettingOutlined from '@ant-design/icons/SettingOutlined';\r\nimport Alert from './Alert';\r\nimport ColumnSetting from './ColumnSetting';\r\nimport ResizeableTitle from './ResizeableTitle';\r\nimport renderColumnButtons from './renderColumnButtons';\r\nimport useSet from '../_util/useSet';\r\nimport isFunction from '../_util/isFunction';\r\nimport axios from 'axios';\r\n\r\nconst isMac = navigator.userAgent.indexOf('Mac OS') !== -1;\r\n\r\n\r\nexport default function VtxDatagrid(props) {\r\n const [state, setState] = useSet({\r\n // 显示列\r\n visibleColumns: [],\r\n // 列设置选中的列\r\n checkedColumnKeys: [],\r\n // 列设置选项\r\n columnSettingOptions: [],\r\n datagridId: `vtx-datagrid-${new Date().getTime()}`,\r\n scrollY: 0,\r\n size: 'middle',\r\n projectKey: ''\r\n });\r\n const {\r\n visibleColumns,\r\n checkedColumnKeys,\r\n columnSettingOptions,\r\n datagridId,\r\n scrollY,\r\n size,\r\n } = state;\r\n const datagridRef = useRef(null);\r\n // 列设置提示高度\r\n const alertHeight = useRef(0);\r\n // 工具栏高度\r\n const toolbarHeight = useRef(0);\r\n\r\n const {\r\n prefixCls = 'vtx-datagrid',\r\n toolbar = true,\r\n toolbarClassName,\r\n toolbarTilte = '查询结果',\r\n buttonGroup,\r\n refreshIconVisible = true,\r\n hideColumnSetting,\r\n hideColumnHeight,\r\n visibleColumnKeys,\r\n defaultVisibleColumnKeys,\r\n onVisibleColumnsChange,\r\n onRefresh,\r\n indexColumn = true,\r\n indexFixed = false,\r\n bordered = true,\r\n indexTitle = '序号',\r\n startIndex = 1,\r\n autoFit = true,\r\n headFootHeight = 115,\r\n columnResizable,\r\n components,\r\n className,\r\n style,\r\n emptyText = '暂无数据',\r\n onRowSelectionClear,\r\n searchCollapseEvent$,\r\n disabledColumnKeys,\r\n onColumnsSave,\r\n uniqueKey,\r\n customEnumText = {},\r\n ...rest\r\n } = props;\r\n \r\n // 规则,菜单根目录_页面路由\r\n function getUniqueKey(){\r\n let route = location.href.match(/#\\/(\\S*)\\?/);\r\n if(route){\r\n axios({\r\n method: 'GET',\r\n url: `${location.pathname}resources/json/menu.json`\r\n }).then(res=>{\r\n if(res?.status == 200 && res.data?.key){\r\n setState({projectKey: `${res.data.key}_${route?route[1]:'test'}`})\r\n }\r\n })\r\n }\r\n }\r\n useEffect(() => {\r\n // 当没有传入唯一值而且没有自定义列保存的时候根据规则自动生成唯一值\r\n if(!uniqueKey && !onColumnsSave){\r\n getUniqueKey();\r\n }\r\n // componentDidMount\r\n if (autoFit) {\r\n window.addEventListener('resize', calculateHeight, false);\r\n }\r\n return () => {\r\n // componentWillUnmount\r\n if (autoFit) {\r\n window.removeEventListener('resize', calculateHeight, false);\r\n }\r\n };\r\n }, []);\r\n\r\n useLayoutEffect(() => {\r\n if (autoFit) {\r\n calculateHeight();\r\n }\r\n }, [rest.dataSource?.length, (rest.rowSelection?.selectedRowKeys || []).join(',')]);\r\n\r\n // 只有被TableLayout.Page包裹时才会存在searchCollapseEvent$这个参数\r\n if (searchCollapseEvent$) {\r\n // eslint-disable-next-line react/prop-types\r\n searchCollapseEvent$.useSubscription(() => {\r\n // 350ms 是为了等待css动画时间\r\n let timer = setTimeout(() => {\r\n calculateHeight();\r\n timer = '';\r\n clearTimeout(timer);\r\n }, 350);\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n parseColumns();\r\n setState({\r\n columnSettingOptions: rest.columns?.map(col => ({\r\n ...col,\r\n key: col.dataIndex || col.key,\r\n })),\r\n });\r\n }, [rest.columns]);\r\n\r\n const parseColumns = type => {\r\n // 显示工具栏的同时并显示列设置\r\n if (toolbar && !hideColumnSetting) {\r\n if (defaultVisibleColumnKeys || visibleColumnKeys) {\r\n const columnKeys =\r\n type === 'reset'\r\n ? defaultVisibleColumnKeys\r\n : visibleColumnKeys || defaultVisibleColumnKeys;\r\n setState({\r\n checkedColumnKeys: columnKeys,\r\n visibleColumns: rest.columns?.filter(item =>\r\n columnKeys.includes(item.dataIndex || item.key),\r\n ),\r\n });\r\n } else {\r\n setState({\r\n checkedColumnKeys: rest.columns?.map(item => item.dataIndex || item.key),\r\n visibleColumns: rest.columns,\r\n });\r\n }\r\n } else {\r\n setState({\r\n visibleColumns: rest.columns,\r\n });\r\n }\r\n };\r\n\r\n const hasAlert = (rest.rowSelection?.selectedRowKeys || []).length > 0;\r\n alertHeight.current = hasAlert ? 49 : 0;\r\n toolbarHeight.current = toolbar ? 56 : 0;\r\n // 高度计算\r\n const calculateHeight = () => {\r\n if (!datagridRef.current) {\r\n return null;\r\n }\r\n const bodyHeight =\r\n datagridRef.current?.clientHeight -\r\n headFootHeight -\r\n toolbarHeight.current -\r\n alertHeight.current;\r\n const divs = datagridRef.current.getElementsByTagName('div');\r\n const bodyDiv = Array.prototype.filter.call(\r\n divs,\r\n dom =>\r\n dom.className.includes('ant-table-body') ||\r\n dom.className.includes('ant-table-content'),\r\n )[0];\r\n bodyDiv.style.minHeight = `${bodyHeight}px`;\r\n setState({\r\n scrollY: bodyHeight,\r\n });\r\n };\r\n\r\n // 列设置回调\r\n const handleChangeColumns = keys => {\r\n console.log(keys, columnSettingOptions?.filter(item => keys.includes(item.key)));\r\n setState({\r\n checkedColumnKeys: keys,\r\n visibleColumns: columnSettingOptions?.filter(item => keys.includes(item.key)),\r\n });\r\n onVisibleColumnsChange && onVisibleColumnsChange(keys);\r\n };\r\n\r\n // 工具栏\r\n let toolbarRender;\r\n if (toolbar) {\r\n toolbarRender = (\r\n <div className={classnames(`${prefixCls}-toolbar`, toolbarClassName)}>\r\n <div className={`${prefixCls}-toolbar-left`}>{toolbarTilte}</div>\r\n <div className={`${prefixCls}-toolbar-right`}>\r\n <div\r\n className={classnames(\r\n `${prefixCls}-space-item`,\r\n `${prefixCls}-toolbar-actions`,\r\n )}\r\n >\r\n {buttonGroup}\r\n </div>\r\n <div\r\n className={classnames(\r\n `${prefixCls}-space-item`,\r\n `${prefixCls}-toolbar-setting`,\r\n )}\r\n >\r\n {refreshIconVisible && (\r\n <div\r\n className={`${prefixCls}-toolbar-setting-item`}\r\n onClick={() => {\r\n onRefresh && onRefresh();\r\n }}\r\n >\r\n <Tooltip title={customEnumText?.refreshText || \"刷新\"}>\r\n <RedoOutlined />\r\n </Tooltip>\r\n </div>\r\n )}\r\n {!hideColumnHeight && (\r\n <div className={`${prefixCls}-toolbar-setting-item`}>\r\n <Dropdown\r\n overlay={\r\n <Menu\r\n onClick={({ key }) => setState({ size: key })}\r\n selectedKeys={[size]}\r\n >\r\n <Menu.Item key=\"default\">{customEnumText?.densityDefaultText ||\"默认\"}</Menu.Item>\r\n <Menu.Item key=\"middle\">{customEnumText?.densityMiddleText || \"中等\"}</Menu.Item>\r\n <Menu.Item key=\"small\">{customEnumText?.densitySmallText ||\"紧凑\"}</Menu.Item>\r\n </Menu>\r\n }\r\n trigger={['click']}\r\n >\r\n <Tooltip title={customEnumText?.columnDensityText || \"列密度\"}>\r\n <ColumnHeightOutlined />\r\n </Tooltip>\r\n </Dropdown>\r\n </div>\r\n )}\r\n {!hideColumnSetting && (\r\n <div className={`${prefixCls}-toolbar-setting-item`}>\r\n <ColumnSetting\r\n prefixCls={prefixCls}\r\n checkedColumnKeys={checkedColumnKeys}\r\n columnSettingOptions={columnSettingOptions}\r\n onChange={handleChangeColumns}\r\n onReset={() => parseColumns('reset')}\r\n disabledColumnKeys={disabledColumnKeys}\r\n onColumnsSave={onColumnsSave}\r\n uniqueKey={uniqueKey || state.projectKey}\r\n >\r\n <Tooltip title={customEnumText?.columnSettingText || \"列设置\"}>\r\n <SettingOutlined />\r\n </Tooltip>\r\n </ColumnSetting>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n // 分页\r\n const getPagination = pagination => {\r\n if (typeof pagination === 'boolean' && !pagination) {\r\n return pagination;\r\n }\r\n return {\r\n pageSizeOptions: ['10', '20', '30', '40', '50'],\r\n showSizeChanger: true,\r\n showQuickJumper: true,\r\n showTotal(total) {\r\n return `共 ${total} 条`;\r\n },\r\n ...pagination,\r\n };\r\n };\r\n\r\n // 处理操作按钮\r\n let columns = (visibleColumns || []).map(column => {\r\n const newColumn = { ...column };\r\n if (newColumn.renderButtons) {\r\n delete newColumn.renderButtons;\r\n }\r\n if (newColumn.renderButtonsVisibleNum) {\r\n delete newColumn.renderButtonsVisibleNum;\r\n }\r\n return {\r\n ...newColumn,\r\n render: isFunction(column.renderButtons)\r\n ? function(text, record, index) {\r\n return renderColumnButtons(\r\n column.renderButtons,\r\n column.renderButtonsVisibleNum,\r\n text,\r\n record,\r\n index,\r\n customEnumText\r\n );\r\n }\r\n : 'render' in column\r\n ? column.render\r\n : function(text) {\r\n return ['', null, undefined].includes(text) ? '-' : text;\r\n },\r\n };\r\n });\r\n // 配置了列可伸缩\r\n if (columnResizable) {\r\n columns = columns.map((col, index) => ({\r\n ...col,\r\n onHeaderCell: column => ({\r\n width: column.width,\r\n onResize: handleResize(index),\r\n }),\r\n }));\r\n const handleResize = index => (e, { size }) => {\r\n setState(({ visibleColumns }) => {\r\n const nextColumns = [...visibleColumns];\r\n nextColumns[index] = {\r\n ...nextColumns[index],\r\n width: size.width,\r\n };\r\n return { visibleColumns: nextColumns };\r\n });\r\n };\r\n }\r\n\r\n // 序号添加\r\n let dataSource = rest.dataSource;\r\n if (indexColumn) {\r\n columns = [\r\n {\r\n title: indexTitle,\r\n dataIndex: '_serialNum',\r\n key: '_serialNum',\r\n width: 70,\r\n fixed: indexFixed,\r\n },\r\n ...columns,\r\n ];\r\n dataSource = dataSource?.map((item, i) => {\r\n return {\r\n ...item,\r\n _serialNum: i + startIndex,\r\n };\r\n });\r\n }\r\n\r\n let scroll;\r\n if (autoFit) {\r\n scroll = {\r\n ...(rest.scroll || {}),\r\n y: scrollY,\r\n };\r\n }\r\n\r\n return (\r\n <div\r\n id={datagridId}\r\n className={classnames(prefixCls, className, {\r\n [`${prefixCls}-fit`]: autoFit,\r\n [`${prefixCls}-noFit`]: !autoFit,\r\n [`${prefixCls}-nodata`]: !dataSource?.length,\r\n [`${prefixCls}-userAgent-mac`]: isMac,\r\n })}\r\n style={style}\r\n ref={datagridRef}\r\n >\r\n {toolbarRender}\r\n {hasAlert && (\r\n <div className={`${prefixCls}-alert`}>\r\n <Alert\r\n prefixCls={prefixCls}\r\n selectedRowKeys={rest.rowSelection?.selectedRowKeys}\r\n onRowSelectionClear={onRowSelectionClear}\r\n />\r\n </div>\r\n )}\r\n <Table\r\n size={size}\r\n bordered={dataSource?.length > 0 ? bordered : false}\r\n {...rest}\r\n columns={columns}\r\n dataSource={dataSource}\r\n scroll={scroll}\r\n pagination={getPagination(rest.pagination)}\r\n style={{\r\n height: `calc(100% - ${toolbarHeight.current + alertHeight.current}px)`,\r\n }}\r\n locale={{\r\n emptyText: <Empty description={emptyText} />,\r\n ...rest.locale,\r\n }}\r\n components={\r\n columnResizable\r\n ? {\r\n ...(components || {}),\r\n header: {\r\n cell: ResizeableTitle,\r\n },\r\n }\r\n : components\r\n }\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nVtxDatagrid.propTypes = {\r\n prefixCls: PropTypes.string,\r\n refreshIconVisible: PropTypes.bool,\r\n hideColumnSetting: PropTypes.bool,\r\n hideColumnHeight: PropTypes.bool,\r\n bordered: PropTypes.bool,\r\n visibleColumnKeys: PropTypes.array,\r\n defaultVisibleColumnKeys: PropTypes.array,\r\n onVisibleColumnsChange: PropTypes.func,\r\n toolbarClassName: PropTypes.string,\r\n toolbar: PropTypes.bool,\r\n toolbarTilte: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\r\n onRefresh: PropTypes.func,\r\n indexColumn: PropTypes.bool,\r\n indexFixed: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\r\n indexTitle: PropTypes.string,\r\n startIndex: PropTypes.number,\r\n buttonGroup: PropTypes.node,\r\n autoFit: PropTypes.bool,\r\n headFootHeight: PropTypes.number,\r\n columnResizable: PropTypes.bool,\r\n emptyText: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\r\n onRowSelectionClear: PropTypes.func,\r\n searchCollapseEvent$: PropTypes.object,\r\n className: PropTypes.string,\r\n style: PropTypes.object,\r\n disabledColumnKeys: PropTypes.array,\r\n onColumnsSave: PropTypes.func,\r\n components: PropTypes.object,\r\n customEnumText: PropTypes.object,\r\n uniqueKey: PropTypes.string,\r\n};\r\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,KAAK,GAAGC,SAAS,CAACC,SAAV,CAAoBC,OAApB,CAA4B,QAA5B,MAA0C,CAAC,CAAzD;;AAGe,SAASC,WAAT,CAAqBC,KAArB,EAA4B;EAAA;;EACvC,cAA0B,IAAAC,mBAAA,EAAO;IAC7B;IACAC,cAAc,EAAE,EAFa;IAG7B;IACAC,iBAAiB,EAAE,EAJU;IAK7B;IACAC,oBAAoB,EAAE,EANO;IAO7BC,UAAU,yBAAkB,IAAIC,IAAJ,GAAWC,OAAX,EAAlB,CAPmB;IAQ7BC,OAAO,EAAE,CARoB;IAS7BC,IAAI,EAAE,QATuB;IAU7BC,UAAU,EAAE;EAViB,CAAP,CAA1B;EAAA;EAAA,IAAOC,KAAP;EAAA,IAAcC,QAAd;;EAYA,IACIV,cADJ,GAOIS,KAPJ,CACIT,cADJ;EAAA,IAEIC,iBAFJ,GAOIQ,KAPJ,CAEIR,iBAFJ;EAAA,IAGIC,oBAHJ,GAOIO,KAPJ,CAGIP,oBAHJ;EAAA,IAIIC,UAJJ,GAOIM,KAPJ,CAIIN,UAJJ;EAAA,IAKIG,OALJ,GAOIG,KAPJ,CAKIH,OALJ;EAAA,IAMIC,IANJ,GAOIE,KAPJ,CAMIF,IANJ;EAQA,IAAMI,WAAW,GAAG,IAAAC,aAAA,EAAO,IAAP,CAApB,CArBuC,CAsBvC;;EACA,IAAMC,WAAW,GAAG,IAAAD,aAAA,EAAO,CAAP,CAApB,CAvBuC,CAwBvC;;EACA,IAAME,aAAa,GAAG,IAAAF,aAAA,EAAO,CAAP,CAAtB;;EAEA,uBAgCId,KAhCJ,CACIiB,SADJ;EAAA,IACIA,SADJ,iCACgB,cADhB;EAAA,qBAgCIjB,KAhCJ,CAEIkB,OAFJ;EAAA,IAEIA,OAFJ,+BAEc,IAFd;EAAA,IAGIC,gBAHJ,GAgCInB,KAhCJ,CAGImB,gBAHJ;EAAA,0BAgCInB,KAhCJ,CAIIoB,YAJJ;EAAA,IAIIA,YAJJ,oCAImB,MAJnB;EAAA,IAKIC,WALJ,GAgCIrB,KAhCJ,CAKIqB,WALJ;EAAA,4BAgCIrB,KAhCJ,CAMIsB,kBANJ;EAAA,IAMIA,kBANJ,sCAMyB,IANzB;EAAA,IAOIC,iBAPJ,GAgCIvB,KAhCJ,CAOIuB,iBAPJ;EAAA,IAQIC,gBARJ,GAgCIxB,KAhCJ,CAQIwB,gBARJ;EAAA,IASIC,iBATJ,GAgCIzB,KAhCJ,CASIyB,iBATJ;EAAA,IAUIC,wBAVJ,GAgCI1B,KAhCJ,CAUI0B,wBAVJ;EAAA,IAWIC,sBAXJ,GAgCI3B,KAhCJ,CAWI2B,sBAXJ;EAAA,IAYIC,SAZJ,GAgCI5B,KAhCJ,CAYI4B,SAZJ;EAAA,yBAgCI5B,KAhCJ,CAaI6B,WAbJ;EAAA,IAaIA,WAbJ,mCAakB,IAblB;EAAA,wBAgCI7B,KAhCJ,CAcI8B,UAdJ;EAAA,IAcIA,UAdJ,kCAciB,KAdjB;EAAA,sBAgCI9B,KAhCJ,CAeI+B,QAfJ;EAAA,IAeIA,QAfJ,gCAee,IAff;EAAA,wBAgCI/B,KAhCJ,CAgBIgC,UAhBJ;EAAA,IAgBIA,UAhBJ,kCAgBiB,IAhBjB;EAAA,wBAgCIhC,KAhCJ,CAiBIiC,UAjBJ;EAAA,IAiBIA,UAjBJ,kCAiBiB,CAjBjB;EAAA,qBAgCIjC,KAhCJ,CAkBIkC,OAlBJ;EAAA,IAkBIA,OAlBJ,+BAkBc,IAlBd;EAAA,4BAgCIlC,KAhCJ,CAmBImC,cAnBJ;EAAA,IAmBIA,cAnBJ,sCAmBqB,GAnBrB;EAAA,IAoBIC,eApBJ,GAgCIpC,KAhCJ,CAoBIoC,eApBJ;EAAA,IAqBIC,UArBJ,GAgCIrC,KAhCJ,CAqBIqC,UArBJ;EAAA,IAsBIC,SAtBJ,GAgCItC,KAhCJ,CAsBIsC,SAtBJ;EAAA,IAuBIC,KAvBJ,GAgCIvC,KAhCJ,CAuBIuC,KAvBJ;EAAA,uBAgCIvC,KAhCJ,CAwBIwC,SAxBJ;EAAA,IAwBIA,SAxBJ,iCAwBgB,MAxBhB;EAAA,IAyBIC,mBAzBJ,GAgCIzC,KAhCJ,CAyBIyC,mBAzBJ;EAAA,IA0BIC,oBA1BJ,GAgCI1C,KAhCJ,CA0BI0C,oBA1BJ;EAAA,IA2BIC,kBA3BJ,GAgCI3C,KAhCJ,CA2BI2C,kBA3BJ;EAAA,IA4BIC,aA5BJ,GAgCI5C,KAhCJ,CA4BI4C,aA5BJ;EAAA,IA6BIC,SA7BJ,GAgCI7C,KAhCJ,CA6BI6C,SA7BJ;EAAA,4BAgCI7C,KAhCJ,CA8BI8C,cA9BJ;EAAA,IA8BIA,cA9BJ,sCA8BqB,EA9BrB;EAAA,IA+BOC,IA/BP,4BAgCI/C,KAhCJ,aA3BuC,CA6DvC;;;EACA,SAASgD,YAAT,GAAuB;IACnB,IAAIC,KAAK,GAAGC,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoB,YAApB,CAAZ;;IACA,IAAGH,KAAH,EAAS;MACL,IAAAI,iBAAA,EAAM;QACFC,MAAM,EAAE,KADN;QAEFC,GAAG,YAAKL,QAAQ,CAACM,QAAd;MAFD,CAAN,EAGGC,IAHH,CAGQ,UAAAC,GAAG,EAAE;QAAA;;QACT,IAAG,CAAAA,GAAG,SAAH,IAAAA,GAAG,WAAH,YAAAA,GAAG,CAAEC,MAAL,KAAe,GAAf,iBAAsBD,GAAG,CAACE,IAA1B,sCAAsB,UAAUC,GAAnC,EAAuC;UACnCjD,QAAQ,CAAC;YAACF,UAAU,YAAKgD,GAAG,CAACE,IAAJ,CAASC,GAAd,cAAqBZ,KAAK,GAACA,KAAK,CAAC,CAAD,CAAN,GAAU,MAApC;UAAX,CAAD,CAAR;QACH;MACJ,CAPD;IAQH;EACJ;;EACD,IAAAa,gBAAA,EAAU,YAAM;IACZ;IACA,IAAG,CAACjB,SAAD,IAAc,CAACD,aAAlB,EAAgC;MAC5BI,YAAY;IACf,CAJW,CAKZ;;;IACA,IAAId,OAAJ,EAAa;MACT6B,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCC,eAAlC,EAAmD,KAAnD;IACH;;IACD,OAAO,YAAM;MACT;MACA,IAAI/B,OAAJ,EAAa;QACT6B,MAAM,CAACG,mBAAP,CAA2B,QAA3B,EAAqCD,eAArC,EAAsD,KAAtD;MACH;IACJ,CALD;EAMH,CAfD,EAeG,EAfH;EAiBA,IAAAE,sBAAA,EAAgB,YAAM;IAClB,IAAIjC,OAAJ,EAAa;MACT+B,eAAe;IAClB;EACJ,CAJD,EAIG,qBAAClB,IAAI,CAACqB,UAAN,qDAAC,iBAAiBC,MAAlB,EAA0B,CAAC,uBAAAtB,IAAI,CAACuB,YAAL,0EAAmBC,eAAnB,KAAsC,EAAvC,EAA2CC,IAA3C,CAAgD,GAAhD,CAA1B,CAJH,EA5FuC,CAkGvC;;EACA,IAAI9B,oBAAJ,EAA0B;IACtB;IACAA,oBAAoB,CAAC+B,eAArB,CAAqC,YAAM;MACvC;MACA,IAAIC,KAAK,GAAGC,UAAU,CAAC,YAAM;QACzBV,eAAe;QACfS,KAAK,GAAG,EAAR;QACAE,YAAY,CAACF,KAAD,CAAZ;MACH,CAJqB,EAInB,GAJmB,CAAtB;IAKH,CAPD;EAQH;;EAED,IAAAZ,gBAAA,EAAU,YAAM;IAAA;;IACZe,YAAY;IACZjE,QAAQ,CAAC;MACLR,oBAAoB,mBAAE2C,IAAI,CAAC+B,OAAP,kDAAE,cAAcC,GAAd,CAAkB,UAAAC,GAAG;QAAA,uCACpCA,GADoC;UAEvCnB,GAAG,EAAEmB,GAAG,CAACC,SAAJ,IAAiBD,GAAG,CAACnB;QAFa;MAAA,CAArB;IADjB,CAAD,CAAR;EAMH,CARD,EAQG,CAACd,IAAI,CAAC+B,OAAN,CARH;;EAUA,IAAMD,YAAY,GAAG,SAAfA,YAAe,CAAAK,IAAI,EAAI;IACzB;IACA,IAAIhE,OAAO,IAAI,CAACK,iBAAhB,EAAmC;MAC/B,IAAIG,wBAAwB,IAAID,iBAAhC,EAAmD;QAAA;;QAC/C,IAAM0D,UAAU,GACZD,IAAI,KAAK,OAAT,GACMxD,wBADN,GAEMD,iBAAiB,IAAIC,wBAH/B;QAIAd,QAAQ,CAAC;UACLT,iBAAiB,EAAEgF,UADd;UAELjF,cAAc,oBAAE6C,IAAI,CAAC+B,OAAP,mDAAE,eAAcM,MAAd,CAAqB,UAAAC,IAAI;YAAA,OACrCF,UAAU,CAACG,QAAX,CAAoBD,IAAI,CAACJ,SAAL,IAAkBI,IAAI,CAACxB,GAA3C,CADqC;UAAA,CAAzB;QAFX,CAAD,CAAR;MAMH,CAXD,MAWO;QAAA;;QACHjD,QAAQ,CAAC;UACLT,iBAAiB,oBAAE4C,IAAI,CAAC+B,OAAP,mDAAE,eAAcC,GAAd,CAAkB,UAAAM,IAAI;YAAA,OAAIA,IAAI,CAACJ,SAAL,IAAkBI,IAAI,CAACxB,GAA3B;UAAA,CAAtB,CADd;UAEL3D,cAAc,EAAE6C,IAAI,CAAC+B;QAFhB,CAAD,CAAR;MAIH;IACJ,CAlBD,MAkBO;MACHlE,QAAQ,CAAC;QACLV,cAAc,EAAE6C,IAAI,CAAC+B;MADhB,CAAD,CAAR;IAGH;EACJ,CAzBD;;EA2BA,IAAMS,QAAQ,GAAG,CAAC,wBAAAxC,IAAI,CAACuB,YAAL,4EAAmBC,eAAnB,KAAsC,EAAvC,EAA2CF,MAA3C,GAAoD,CAArE;EACAtD,WAAW,CAACyE,OAAZ,GAAsBD,QAAQ,GAAG,EAAH,GAAQ,CAAtC;EACAvE,aAAa,CAACwE,OAAd,GAAwBtE,OAAO,GAAG,EAAH,GAAQ,CAAvC,CAtJuC,CAuJvC;;EACA,IAAM+C,eAAe,GAAG,SAAlBA,eAAkB,GAAM;IAAA;;IAC1B,IAAI,CAACpD,WAAW,CAAC2E,OAAjB,EAA0B;MACtB,OAAO,IAAP;IACH;;IACD,IAAMC,UAAU,GACZ,yBAAA5E,WAAW,CAAC2E,OAAZ,8EAAqBE,YAArB,IACAvD,cADA,GAEAnB,aAAa,CAACwE,OAFd,GAGAzE,WAAW,CAACyE,OAJhB;IAKA,IAAMG,IAAI,GAAG9E,WAAW,CAAC2E,OAAZ,CAAoBI,oBAApB,CAAyC,KAAzC,CAAb;IACA,IAAMC,OAAO,GAAGC,KAAK,CAACC,SAAN,CAAgBX,MAAhB,CAAuBY,IAAvB,CACZL,IADY,EAEZ,UAAAM,GAAG;MAAA,OACCA,GAAG,CAAC3D,SAAJ,CAAcgD,QAAd,CAAuB,gBAAvB,KACAW,GAAG,CAAC3D,SAAJ,CAAcgD,QAAd,CAAuB,mBAAvB,CAFD;IAAA,CAFS,EAKd,CALc,CAAhB;IAMAO,OAAO,CAACtD,KAAR,CAAc2D,SAAd,aAA6BT,UAA7B;IACA7E,QAAQ,CAAC;MACLJ,OAAO,EAAEiF;IADJ,CAAD,CAAR;EAGH,CApBD,CAxJuC,CA8KvC;;;EACA,IAAMU,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,IAAI,EAAI;IAChCC,OAAO,CAACC,GAAR,CAAYF,IAAZ,EAAkBhG,oBAAlB,aAAkBA,oBAAlB,uBAAkBA,oBAAoB,CAAEgF,MAAtB,CAA6B,UAAAC,IAAI;MAAA,OAAIe,IAAI,CAACd,QAAL,CAAcD,IAAI,CAACxB,GAAnB,CAAJ;IAAA,CAAjC,CAAlB;IACAjD,QAAQ,CAAC;MACLT,iBAAiB,EAAEiG,IADd;MAELlG,cAAc,EAAEE,oBAAF,aAAEA,oBAAF,uBAAEA,oBAAoB,CAAEgF,MAAtB,CAA6B,UAAAC,IAAI;QAAA,OAAIe,IAAI,CAACd,QAAL,CAAcD,IAAI,CAACxB,GAAnB,CAAJ;MAAA,CAAjC;IAFX,CAAD,CAAR;IAIAlC,sBAAsB,IAAIA,sBAAsB,CAACyE,IAAD,CAAhD;EACH,CAPD,CA/KuC,CAwLvC;;;EACA,IAAIG,aAAJ;;EACA,IAAIrF,OAAJ,EAAa;IACTqF,aAAa,gBACT;MAAK,SAAS,EAAE,IAAAC,uBAAA,YAAcvF,SAAd,eAAmCE,gBAAnC;IAAhB,gBACI;MAAK,SAAS,YAAKF,SAAL;IAAd,GAA8CG,YAA9C,CADJ,eAEI;MAAK,SAAS,YAAKH,SAAL;IAAd,gBACI;MACI,SAAS,EAAE,IAAAuF,uBAAA,YACJvF,SADI,4BAEJA,SAFI;IADf,GAMKI,WANL,CADJ,eASI;MACI,SAAS,EAAE,IAAAmF,uBAAA,YACJvF,SADI,4BAEJA,SAFI;IADf,GAMKK,kBAAkB,iBACf;MACI,SAAS,YAAKL,SAAL,0BADb;MAEI,OAAO,EAAE,mBAAM;QACXW,SAAS,IAAIA,SAAS,EAAtB;MACH;IAJL,gBAMI,gCAAC,mBAAD;MAAS,KAAK,EAAE,CAAAkB,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAE2D,WAAhB,KAA+B;IAA/C,gBACI,gCAAC,wBAAD,OADJ,CANJ,CAPR,EAkBK,CAACjF,gBAAD,iBACG;MAAK,SAAS,YAAKP,SAAL;IAAd,gBACI,gCAAC,oBAAD;MACI,OAAO,eACH,gCAAC,gBAAD;QACI,OAAO,EAAE;UAAA,IAAG4C,GAAH,QAAGA,GAAH;UAAA,OAAajD,QAAQ,CAAC;YAAEH,IAAI,EAAEoD;UAAR,CAAD,CAArB;QAAA,CADb;QAEI,YAAY,EAAE,CAACpD,IAAD;MAFlB,gBAII,gCAAC,gBAAD,CAAM,IAAN;QAAW,GAAG,EAAC;MAAf,GAA0B,CAAAqC,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAE4D,kBAAhB,KAAqC,IAA/D,CAJJ,eAKI,gCAAC,gBAAD,CAAM,IAAN;QAAW,GAAG,EAAC;MAAf,GAAyB,CAAA5D,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAE6D,iBAAhB,KAAqC,IAA9D,CALJ,eAMI,gCAAC,gBAAD,CAAM,IAAN;QAAW,GAAG,EAAC;MAAf,GAAwB,CAAA7D,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAE8D,gBAAhB,KAAmC,IAA3D,CANJ,CAFR;MAWI,OAAO,EAAE,CAAC,OAAD;IAXb,gBAaI,gCAAC,mBAAD;MAAS,KAAK,EAAE,CAAA9D,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAE+D,iBAAhB,KAAqC;IAArD,gBACI,gCAAC,gCAAD,OADJ,CAbJ,CADJ,CAnBR,EAuCK,CAACtF,iBAAD,iBACG;MAAK,SAAS,YAAKN,SAAL;IAAd,gBACI,gCAAC,yBAAD;MACI,SAAS,EAAEA,SADf;MAEI,iBAAiB,EAAEd,iBAFvB;MAGI,oBAAoB,EAAEC,oBAH1B;MAII,QAAQ,EAAE+F,mBAJd;MAKI,OAAO,EAAE;QAAA,OAAMtB,YAAY,CAAC,OAAD,CAAlB;MAAA,CALb;MAMI,kBAAkB,EAAElC,kBANxB;MAOI,aAAa,EAAEC,aAPnB;MAQI,SAAS,EAAEC,SAAS,IAAIlC,KAAK,CAACD;IARlC,gBAUI,gCAAC,mBAAD;MAAS,KAAK,EAAE,CAAAoC,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAEgE,iBAAhB,KAAqC;IAArD,gBACI,gCAAC,2BAAD,OADJ,CAVJ,CADJ,CAxCR,CATJ,CAFJ,CADJ;EAyEH,CApQsC,CAsQvC;;;EACA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAAAC,UAAU,EAAI;IAChC,IAAI,OAAOA,UAAP,KAAsB,SAAtB,IAAmC,CAACA,UAAxC,EAAoD;MAChD,OAAOA,UAAP;IACH;;IACD;MACIC,eAAe,EAAE,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,CADrB;MAEIC,eAAe,EAAE,IAFrB;MAGIC,eAAe,EAAE,IAHrB;MAIIC,SAJJ,qBAIcC,KAJd,EAIqB;QACb,wBAAYA,KAAZ;MACH;IANL,GAOOL,UAPP;EASH,CAbD,CAvQuC,CAsRvC;;;EACA,IAAIlC,OAAO,GAAG,CAAC5E,cAAc,IAAI,EAAnB,EAAuB6E,GAAvB,CAA2B,UAAAuC,MAAM,EAAI;IAC/C,IAAMC,SAAS,qBAAQD,MAAR,CAAf;;IACA,IAAIC,SAAS,CAACC,aAAd,EAA6B;MACzB,OAAOD,SAAS,CAACC,aAAjB;IACH;;IACD,IAAID,SAAS,CAACE,uBAAd,EAAuC;MACnC,OAAOF,SAAS,CAACE,uBAAjB;IACH;;IACD,uCACOF,SADP;MAEIG,MAAM,EAAE,IAAAC,sBAAA,EAAWL,MAAM,CAACE,aAAlB,IACF,UAASI,IAAT,EAAeC,MAAf,EAAuBC,KAAvB,EAA8B;QAC1B,OAAO,IAAAC,+BAAA,EACHT,MAAM,CAACE,aADJ,EAEHF,MAAM,CAACG,uBAFJ,EAGHG,IAHG,EAIHC,MAJG,EAKHC,KALG,EAMHhF,cANG,CAAP;MAQH,CAVC,GAWF,YAAYwE,MAAZ,GACAA,MAAM,CAACI,MADP,GAEA,UAASE,IAAT,EAAe;QACX,OAAO,CAAC,EAAD,EAAK,IAAL,EAAWI,SAAX,EAAsB1C,QAAtB,CAA+BsC,IAA/B,IAAuC,GAAvC,GAA6CA,IAApD;MACH;IAjBX;EAmBH,CA3Ba,CAAd,CAvRuC,CAmTvC;;EACA,IAAIxF,eAAJ,EAAqB;IACjB0C,OAAO,GAAGA,OAAO,CAACC,GAAR,CAAY,UAACC,GAAD,EAAM8C,KAAN;MAAA,uCACf9C,GADe;QAElBiD,YAAY,EAAE,sBAAAX,MAAM;UAAA,OAAK;YACrBY,KAAK,EAAEZ,MAAM,CAACY,KADO;YAErBC,QAAQ,EAAEC,YAAY,CAACN,KAAD;UAFD,CAAL;QAAA;MAFF;IAAA,CAAZ,CAAV;;IAOA,IAAMM,YAAY,GAAG,SAAfA,YAAe,CAAAN,KAAK;MAAA,OAAI,UAACO,CAAD,SAAiB;QAAA,IAAX5H,IAAW,SAAXA,IAAW;QAC3CG,QAAQ,CAAC,iBAAwB;UAAA,IAArBV,cAAqB,SAArBA,cAAqB;;UAC7B,IAAMoI,WAAW,sBAAOpI,cAAP,CAAjB;;UACAoI,WAAW,CAACR,KAAD,CAAX,mCACOQ,WAAW,CAACR,KAAD,CADlB;YAEII,KAAK,EAAEzH,IAAI,CAACyH;UAFhB;UAIA,OAAO;YAAEhI,cAAc,EAAEoI;UAAlB,CAAP;QACH,CAPO,CAAR;MAQH,CATyB;IAAA,CAA1B;EAUH,CAtUsC,CAwUvC;;;EACA,IAAIlE,UAAU,GAAGrB,IAAI,CAACqB,UAAtB;;EACA,IAAIvC,WAAJ,EAAiB;IAAA;;IACbiD,OAAO,IACH;MACIyD,KAAK,EAAEvG,UADX;MAEIiD,SAAS,EAAE,YAFf;MAGIpB,GAAG,EAAE,YAHT;MAIIqE,KAAK,EAAE,EAJX;MAKIM,KAAK,EAAE1G;IALX,CADG,4BAQAgD,OARA,EAAP;IAUAV,UAAU,kBAAGA,UAAH,gDAAG,YAAYW,GAAZ,CAAgB,UAACM,IAAD,EAAOoD,CAAP,EAAa;MACtC,uCACOpD,IADP;QAEIqD,UAAU,EAAED,CAAC,GAAGxG;MAFpB;IAIH,CALY,CAAb;EAMH;;EAED,IAAI0G,MAAJ;;EACA,IAAIzG,OAAJ,EAAa;IACTyG,MAAM,mCACE5F,IAAI,CAAC4F,MAAL,IAAe,EADjB;MAEFC,CAAC,EAAEpI;IAFD,EAAN;EAIH;;EAED,oBACI;IACI,EAAE,EAAEH,UADR;IAEI,SAAS,EAAE,IAAAmG,uBAAA,EAAWvF,SAAX,EAAsBqB,SAAtB,4DACHrB,SADG,WACeiB,OADf,0CAEHjB,SAFG,aAEiB,CAACiB,OAFlB,0CAGHjB,SAHG,cAGkB,kBAACmD,UAAD,yCAAC,aAAYC,MAAb,CAHlB,0CAIHpD,SAJG,qBAIyBtB,KAJzB,gBAFf;IAQI,KAAK,EAAE4C,KARX;IASI,GAAG,EAAE1B;EATT,GAWK0F,aAXL,EAYKhB,QAAQ,iBACL;IAAK,SAAS,YAAKtE,SAAL;EAAd,gBACI,gCAAC,iBAAD;IACI,SAAS,EAAEA,SADf;IAEI,eAAe,yBAAE8B,IAAI,CAACuB,YAAP,wDAAE,oBAAmBC,eAFxC;IAGI,mBAAmB,EAAE9B;EAHzB,EADJ,CAbR,eAqBI,gCAAC,iBAAD;IACI,IAAI,EAAEhC,IADV;IAEI,QAAQ,EAAE,iBAAA2D,UAAU,UAAV,oDAAYC,MAAZ,IAAqB,CAArB,GAAyBtC,QAAzB,GAAoC;EAFlD,GAGQgB,IAHR;IAII,OAAO,EAAE+B,OAJb;IAKI,UAAU,EAAEV,UALhB;IAMI,MAAM,EAAEuE,MANZ;IAOI,UAAU,EAAE5B,aAAa,CAAChE,IAAI,CAACiE,UAAN,CAP7B;IAQI,KAAK,EAAE;MACH6B,MAAM,wBAAiB7H,aAAa,CAACwE,OAAd,GAAwBzE,WAAW,CAACyE,OAArD;IADH,CARX;IAWI,MAAM;MACFhD,SAAS,eAAE,gCAAC,iBAAD;QAAO,WAAW,EAAEA;MAApB;IADT,GAECO,IAAI,CAAC+F,MAFN,CAXV;IAeI,UAAU,EACN1G,eAAe,mCAEDC,UAAU,IAAI,EAFb;MAGL0G,MAAM,EAAE;QACJC,IAAI,EAAEC;MADF;IAHH,KAOT5G;EAvBd,GArBJ,CADJ;AAkDH;;AAEDtC,WAAW,CAACmJ,SAAZ,GAAwB;EACpBjI,SAAS,EAAEkI,qBAAA,CAAUC,MADD;EAEpB9H,kBAAkB,EAAE6H,qBAAA,CAAUE,IAFV;EAGpB9H,iBAAiB,EAAE4H,qBAAA,CAAUE,IAHT;EAIpB7H,gBAAgB,EAAE2H,qBAAA,CAAUE,IAJR;EAKpBtH,QAAQ,EAAEoH,qBAAA,CAAUE,IALA;EAMpB5H,iBAAiB,EAAE0H,qBAAA,CAAUG,KANT;EAOpB5H,wBAAwB,EAAEyH,qBAAA,CAAUG,KAPhB;EAQpB3H,sBAAsB,EAAEwH,qBAAA,CAAUI,IARd;EASpBpI,gBAAgB,EAAEgI,qBAAA,CAAUC,MATR;EAUpBlI,OAAO,EAAEiI,qBAAA,CAAUE,IAVC;EAWpBjI,YAAY,EAAE+H,qBAAA,CAAUK,SAAV,CAAoB,CAACL,qBAAA,CAAUC,MAAX,EAAmBD,qBAAA,CAAUM,IAA7B,CAApB,CAXM;EAYpB7H,SAAS,EAAEuH,qBAAA,CAAUI,IAZD;EAapB1H,WAAW,EAAEsH,qBAAA,CAAUE,IAbH;EAcpBvH,UAAU,EAAEqH,qBAAA,CAAUK,SAAV,CAAoB,CAACL,qBAAA,CAAUC,MAAX,EAAmBD,qBAAA,CAAUE,IAA7B,CAApB,CAdQ;EAepBrH,UAAU,EAAEmH,qBAAA,CAAUC,MAfF;EAgBpBnH,UAAU,EAAEkH,qBAAA,CAAUO,MAhBF;EAiBpBrI,WAAW,EAAE8H,qBAAA,CAAUM,IAjBH;EAkBpBvH,OAAO,EAAEiH,qBAAA,CAAUE,IAlBC;EAmBpBlH,cAAc,EAAEgH,qBAAA,CAAUO,MAnBN;EAoBpBtH,eAAe,EAAE+G,qBAAA,CAAUE,IApBP;EAqBpB7G,SAAS,EAAE2G,qBAAA,CAAUK,SAAV,CAAoB,CAACL,qBAAA,CAAUC,MAAX,EAAmBD,qBAAA,CAAUM,IAA7B,CAApB,CArBS;EAsBpBhH,mBAAmB,EAAE0G,qBAAA,CAAUI,IAtBX;EAuBpB7G,oBAAoB,EAAEyG,qBAAA,CAAUQ,MAvBZ;EAwBpBrH,SAAS,EAAE6G,qBAAA,CAAUC,MAxBD;EAyBpB7G,KAAK,EAAE4G,qBAAA,CAAUQ,MAzBG;EA0BpBhH,kBAAkB,EAAEwG,qBAAA,CAAUG,KA1BV;EA2BpB1G,aAAa,EAAEuG,qBAAA,CAAUI,IA3BL;EA4BpBlH,UAAU,EAAE8G,qBAAA,CAAUQ,MA5BF;EA6BpB7G,cAAc,EAAEqG,qBAAA,CAAUQ,MA7BN;EA8BpB9G,SAAS,EAAEsG,qBAAA,CAAUC;AA9BD,CAAxB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["isMac","navigator","userAgent","indexOf","VtxDatagrid","props","useSet","visibleColumns","checkedColumnKeys","columnSettingOptions","datagridId","Date","getTime","scrollY","size","projectKey","state","setState","datagridRef","useRef","alertHeight","toolbarHeight","prefixCls","toolbar","toolbarClassName","toolbarTilte","buttonGroup","refreshIconVisible","hideColumnSetting","hideColumnHeight","visibleColumnKeys","defaultVisibleColumnKeys","onVisibleColumnsChange","onRefresh","indexColumn","indexFixed","bordered","indexTitle","startIndex","autoFit","headFootHeight","columnResizable","components","className","style","emptyText","onRowSelectionClear","searchCollapseEvent$","disabledColumnKeys","onColumnsSave","uniqueKey","customEnumText","rest","getUniqueKey","route","location","href","match","axios","method","url","pathname","then","res","status","data","key","useEffect","window","addEventListener","calculateHeight","removeEventListener","useLayoutEffect","dataSource","length","rowSelection","selectedRowKeys","join","useSubscription","timer","setTimeout","clearTimeout","parseColumns","columns","map","col","dataIndex","type","columnKeys","filter","item","includes","hasAlert","current","bodyHeight","clientHeight","divs","getElementsByTagName","bodyDiv","Array","prototype","call","dom","minHeight","handleChangeColumns","keys","console","log","toolbarRender","classnames","refreshText","densityDefaultText","densityMiddleText","densitySmallText","columnDensityText","columnSettingText","getPagination","pagination","pageSizeOptions","showSizeChanger","showQuickJumper","showTotal","total","column","newColumn","renderButtons","renderButtonsVisibleNum","render","isFunction","text","record","index","renderColumnButtons","undefined","onHeaderCell","width","onResize","handleResize","e","nextColumns","title","fixed","i","_serialNum","scroll","y","height","locale","header","cell","ResizeableTitle","propTypes","PropTypes","string","bool","array","func","oneOfType","node","number","object"],"sources":["vtx-datagrid/index.jsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport Table from 'antd/lib/table';\r\nimport Tooltip from 'antd/lib/tooltip';\r\nimport Dropdown from 'antd/lib/dropdown';\r\nimport Menu from 'antd/lib/menu';\r\nimport Empty from 'antd/lib/empty';\r\nimport RedoOutlined from '@ant-design/icons/RedoOutlined';\r\nimport ColumnHeightOutlined from '@ant-design/icons/ColumnHeightOutlined';\r\nimport SettingOutlined from '@ant-design/icons/SettingOutlined';\r\nimport Alert from './Alert';\r\nimport ColumnSetting from './ColumnSetting';\r\nimport ResizeableTitle from './ResizeableTitle';\r\nimport renderColumnButtons from './renderColumnButtons';\r\nimport useSet from '../_util/useSet';\r\nimport isFunction from '../_util/isFunction';\r\nimport axios from 'axios';\r\n\r\nconst isMac = navigator.userAgent.indexOf('Mac OS') !== -1;\r\n\r\n\r\nexport default function VtxDatagrid(props) {\r\n const [state, setState] = useSet({\r\n // 显示列\r\n visibleColumns: [],\r\n // 列设置选中的列\r\n checkedColumnKeys: [],\r\n // 列设置选项\r\n columnSettingOptions: [],\r\n datagridId: `vtx-datagrid-${new Date().getTime()}`,\r\n scrollY: 0,\r\n size: 'middle',\r\n projectKey: ''\r\n });\r\n const {\r\n visibleColumns,\r\n checkedColumnKeys,\r\n columnSettingOptions,\r\n datagridId,\r\n scrollY,\r\n size,\r\n } = state;\r\n const datagridRef = useRef(null);\r\n // 列设置提示高度\r\n const alertHeight = useRef(0);\r\n // 工具栏高度\r\n const toolbarHeight = useRef(0);\r\n\r\n const {\r\n prefixCls = 'vtx-datagrid',\r\n toolbar = true,\r\n toolbarClassName,\r\n toolbarTilte = '查询结果',\r\n buttonGroup,\r\n refreshIconVisible = true,\r\n hideColumnSetting,\r\n hideColumnHeight,\r\n visibleColumnKeys,\r\n defaultVisibleColumnKeys,\r\n onVisibleColumnsChange,\r\n onRefresh,\r\n indexColumn = true,\r\n indexFixed = false,\r\n bordered = true,\r\n indexTitle = '序号',\r\n startIndex = 1,\r\n autoFit = true,\r\n headFootHeight = 115,\r\n columnResizable,\r\n components,\r\n className,\r\n style,\r\n emptyText = '暂无数据',\r\n onRowSelectionClear,\r\n searchCollapseEvent$,\r\n disabledColumnKeys,\r\n onColumnsSave,\r\n uniqueKey,\r\n customEnumText = {},\r\n ...rest\r\n } = props;\r\n\r\n // 规则,菜单根目录_页面路由\r\n function getUniqueKey() {\r\n let route = location.href.match(/#\\/(\\S*)\\?/);\r\n if (route) {\r\n axios({\r\n method: 'GET',\r\n url: `${location.pathname}resources/json/menu.json`\r\n }).then(res => {\r\n if (res?.status == 200 && res.data?.key) {\r\n setState({ projectKey: `${res.data.key}_${route ? route[1] : 'test'}` })\r\n }\r\n })\r\n }\r\n }\r\n useEffect(() => {\r\n // 当没有传入唯一值而且没有自定义列保存的时候根据规则自动生成唯一值\r\n if (!uniqueKey && !onColumnsSave) {\r\n getUniqueKey();\r\n }\r\n // componentDidMount\r\n if (autoFit) {\r\n window.addEventListener('resize', calculateHeight, false);\r\n }\r\n return () => {\r\n // componentWillUnmount\r\n if (autoFit) {\r\n window.removeEventListener('resize', calculateHeight, false);\r\n }\r\n };\r\n }, []);\r\n\r\n useLayoutEffect(() => {\r\n if (autoFit) {\r\n calculateHeight();\r\n }\r\n }, [rest.dataSource?.length, (rest.rowSelection?.selectedRowKeys || []).join(',')]);\r\n\r\n // 只有被TableLayout.Page包裹时才会存在searchCollapseEvent$这个参数\r\n if (searchCollapseEvent$) {\r\n // eslint-disable-next-line react/prop-types\r\n searchCollapseEvent$.useSubscription(() => {\r\n // 350ms 是为了等待css动画时间\r\n let timer = setTimeout(() => {\r\n calculateHeight();\r\n timer = '';\r\n clearTimeout(timer);\r\n }, 350);\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n parseColumns();\r\n setState({\r\n columnSettingOptions: rest.columns?.map(col => ({\r\n ...col,\r\n key: col.dataIndex || col.key,\r\n })),\r\n });\r\n }, [rest.columns]);\r\n\r\n const parseColumns = type => {\r\n // 显示工具栏的同时并显示列设置\r\n if (toolbar && !hideColumnSetting) {\r\n if (defaultVisibleColumnKeys || visibleColumnKeys) {\r\n const columnKeys =\r\n type === 'reset'\r\n ? defaultVisibleColumnKeys\r\n : visibleColumnKeys || defaultVisibleColumnKeys;\r\n setState({\r\n checkedColumnKeys: columnKeys,\r\n visibleColumns: rest.columns?.filter(item =>\r\n columnKeys.includes(item.dataIndex || item.key),\r\n ),\r\n });\r\n } else {\r\n setState({\r\n checkedColumnKeys: rest.columns?.map(item => item.dataIndex || item.key),\r\n visibleColumns: rest.columns,\r\n });\r\n }\r\n } else {\r\n setState({\r\n visibleColumns: rest.columns,\r\n });\r\n }\r\n };\r\n\r\n const hasAlert = (rest.rowSelection?.selectedRowKeys || []).length > 0;\r\n alertHeight.current = hasAlert ? 49 : 0;\r\n toolbarHeight.current = toolbar ? 56 : 0;\r\n // 高度计算\r\n const calculateHeight = () => {\r\n if (!datagridRef.current) {\r\n return null;\r\n }\r\n const bodyHeight =\r\n datagridRef.current?.clientHeight -\r\n headFootHeight -\r\n toolbarHeight.current -\r\n alertHeight.current;\r\n const divs = datagridRef.current.getElementsByTagName('div');\r\n const bodyDiv = Array.prototype.filter.call(\r\n divs,\r\n dom =>\r\n dom.className.includes('ant-table-body') ||\r\n dom.className.includes('ant-table-content'),\r\n )[0];\r\n bodyDiv.style.minHeight = `${bodyHeight}px`;\r\n setState({\r\n scrollY: bodyHeight,\r\n });\r\n };\r\n\r\n // 列设置回调\r\n const handleChangeColumns = keys => {\r\n console.log(keys, columnSettingOptions?.filter(item => keys.includes(item.key)));\r\n setState({\r\n checkedColumnKeys: keys,\r\n visibleColumns: columnSettingOptions?.filter(item => keys.includes(item.key)),\r\n });\r\n onVisibleColumnsChange && onVisibleColumnsChange(keys);\r\n };\r\n\r\n // 工具栏\r\n let toolbarRender;\r\n if (toolbar) {\r\n toolbarRender = (\r\n <div className={classnames(`${prefixCls}-toolbar`, toolbarClassName)}>\r\n <div className={`${prefixCls}-toolbar-left`}>{toolbarTilte}</div>\r\n <div className={`${prefixCls}-toolbar-right`}>\r\n <div\r\n className={classnames(\r\n `${prefixCls}-space-item`,\r\n `${prefixCls}-toolbar-actions`,\r\n )}\r\n >\r\n {buttonGroup}\r\n </div>\r\n {buttonGroup &&\r\n <div className={`${prefixCls}-toolbar-line`} />\r\n }\r\n <div\r\n className={classnames(\r\n `${prefixCls}-space-item`,\r\n `${prefixCls}-toolbar-setting`,\r\n\r\n )}\r\n >\r\n {refreshIconVisible && (\r\n <div\r\n className={`${prefixCls}-toolbar-setting-item`}\r\n onClick={() => {\r\n onRefresh && onRefresh();\r\n }}\r\n >\r\n <Tooltip title={customEnumText?.refreshText || \"刷新\"}>\r\n <RedoOutlined />\r\n </Tooltip>\r\n </div>\r\n )}\r\n {!hideColumnHeight && (\r\n <div className={`${prefixCls}-toolbar-setting-item`}>\r\n <Dropdown\r\n overlay={\r\n <Menu\r\n onClick={({ key }) => setState({ size: key })}\r\n selectedKeys={[size]}\r\n >\r\n <Menu.Item key=\"default\">{customEnumText?.densityDefaultText || \"默认\"}</Menu.Item>\r\n <Menu.Item key=\"middle\">{customEnumText?.densityMiddleText || \"中等\"}</Menu.Item>\r\n <Menu.Item key=\"small\">{customEnumText?.densitySmallText || \"紧凑\"}</Menu.Item>\r\n </Menu>\r\n }\r\n trigger={['click']}\r\n >\r\n <Tooltip title={customEnumText?.columnDensityText || \"列密度\"}>\r\n <ColumnHeightOutlined />\r\n </Tooltip>\r\n </Dropdown>\r\n </div>\r\n )}\r\n {!hideColumnSetting && (\r\n <div className={`${prefixCls}-toolbar-setting-item`}>\r\n <ColumnSetting\r\n prefixCls={prefixCls}\r\n checkedColumnKeys={checkedColumnKeys}\r\n columnSettingOptions={columnSettingOptions}\r\n onChange={handleChangeColumns}\r\n onReset={() => parseColumns('reset')}\r\n disabledColumnKeys={disabledColumnKeys}\r\n onColumnsSave={onColumnsSave}\r\n uniqueKey={uniqueKey || state.projectKey}\r\n columns={rest.columns}\r\n >\r\n <Tooltip title={customEnumText?.columnSettingText || \"列设置\"}>\r\n <SettingOutlined />\r\n </Tooltip>\r\n </ColumnSetting>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n // 分页\r\n const getPagination = pagination => {\r\n if (typeof pagination === 'boolean' && !pagination) {\r\n return pagination;\r\n }\r\n return {\r\n pageSizeOptions: ['10', '20', '30', '40', '50'],\r\n showSizeChanger: true,\r\n showQuickJumper: true,\r\n showTotal(total) {\r\n return `共 ${total} 条`;\r\n },\r\n ...pagination,\r\n };\r\n };\r\n\r\n // 处理操作按钮\r\n let columns = (visibleColumns || []).map(column => {\r\n const newColumn = { ...column };\r\n if (newColumn.renderButtons) {\r\n delete newColumn.renderButtons;\r\n }\r\n if (newColumn.renderButtonsVisibleNum) {\r\n delete newColumn.renderButtonsVisibleNum;\r\n }\r\n return {\r\n ...newColumn,\r\n render: isFunction(column.renderButtons)\r\n ? function (text, record, index) {\r\n return renderColumnButtons(\r\n column.renderButtons,\r\n column.renderButtonsVisibleNum,\r\n text,\r\n record,\r\n index,\r\n customEnumText\r\n );\r\n }\r\n : 'render' in column\r\n ? column.render\r\n : function (text) {\r\n return ['', null, undefined].includes(text) ? '-' : text;\r\n },\r\n };\r\n });\r\n // 配置了列可伸缩\r\n if (columnResizable) {\r\n columns = columns.map((col, index) => ({\r\n ...col,\r\n onHeaderCell: column => ({\r\n width: column.width,\r\n onResize: handleResize(index),\r\n }),\r\n }));\r\n const handleResize = index => (e, { size }) => {\r\n setState(({ visibleColumns }) => {\r\n const nextColumns = [...visibleColumns];\r\n nextColumns[index] = {\r\n ...nextColumns[index],\r\n width: size.width,\r\n };\r\n return { visibleColumns: nextColumns };\r\n });\r\n };\r\n }\r\n\r\n // 序号添加\r\n let dataSource = rest.dataSource;\r\n if (indexColumn) {\r\n columns = [\r\n {\r\n title: indexTitle,\r\n dataIndex: '_serialNum',\r\n key: '_serialNum',\r\n width: 70,\r\n fixed: indexFixed,\r\n },\r\n ...columns,\r\n ];\r\n dataSource = dataSource?.map((item, i) => {\r\n return {\r\n ...item,\r\n _serialNum: i + startIndex,\r\n };\r\n });\r\n }\r\n\r\n let scroll;\r\n if (autoFit) {\r\n scroll = {\r\n ...(rest.scroll || {}),\r\n y: scrollY,\r\n };\r\n }\r\n\r\n return (\r\n <div\r\n id={datagridId}\r\n className={classnames(prefixCls, className, {\r\n [`${prefixCls}-fit`]: autoFit,\r\n [`${prefixCls}-noFit`]: !autoFit,\r\n [`${prefixCls}-nodata`]: !dataSource?.length,\r\n [`${prefixCls}-userAgent-mac`]: isMac,\r\n })}\r\n style={style}\r\n ref={datagridRef}\r\n >\r\n {toolbarRender}\r\n {hasAlert && (\r\n <div className={`${prefixCls}-alert`}>\r\n <Alert\r\n prefixCls={prefixCls}\r\n selectedRowKeys={rest.rowSelection?.selectedRowKeys}\r\n onRowSelectionClear={onRowSelectionClear}\r\n />\r\n </div>\r\n )}\r\n <Table\r\n size={size}\r\n bordered={dataSource?.length > 0 ? bordered : false}\r\n {...rest}\r\n columns={columns}\r\n dataSource={dataSource}\r\n scroll={scroll}\r\n pagination={getPagination(rest.pagination)}\r\n style={{\r\n height: `calc(100% - ${toolbarHeight.current + alertHeight.current}px)`,\r\n }}\r\n locale={{\r\n emptyText: <Empty description={emptyText} />,\r\n ...rest.locale,\r\n }}\r\n components={\r\n columnResizable\r\n ? {\r\n ...(components || {}),\r\n header: {\r\n cell: ResizeableTitle,\r\n },\r\n }\r\n : components\r\n }\r\n />\r\n </div>\r\n );\r\n}\r\n\r\nVtxDatagrid.propTypes = {\r\n prefixCls: PropTypes.string,\r\n refreshIconVisible: PropTypes.bool,\r\n hideColumnSetting: PropTypes.bool,\r\n hideColumnHeight: PropTypes.bool,\r\n bordered: PropTypes.bool,\r\n visibleColumnKeys: PropTypes.array,\r\n defaultVisibleColumnKeys: PropTypes.array,\r\n onVisibleColumnsChange: PropTypes.func,\r\n toolbarClassName: PropTypes.string,\r\n toolbar: PropTypes.bool,\r\n toolbarTilte: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\r\n onRefresh: PropTypes.func,\r\n indexColumn: PropTypes.bool,\r\n indexFixed: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\r\n indexTitle: PropTypes.string,\r\n startIndex: PropTypes.number,\r\n buttonGroup: PropTypes.node,\r\n autoFit: PropTypes.bool,\r\n headFootHeight: PropTypes.number,\r\n columnResizable: PropTypes.bool,\r\n emptyText: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\r\n onRowSelectionClear: PropTypes.func,\r\n searchCollapseEvent$: PropTypes.object,\r\n className: PropTypes.string,\r\n style: PropTypes.object,\r\n disabledColumnKeys: PropTypes.array,\r\n onColumnsSave: PropTypes.func,\r\n components: PropTypes.object,\r\n customEnumText: PropTypes.object,\r\n uniqueKey: PropTypes.string,\r\n};\r\n"],"mappings":"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"}
|
|
@@ -127,6 +127,14 @@
|
|
|
127
127
|
.vtx-datagrid-toolbar-right {
|
|
128
128
|
float: right;
|
|
129
129
|
}
|
|
130
|
+
.vtx-datagrid-toolbar-line {
|
|
131
|
+
width: 1px;
|
|
132
|
+
height: 14px;
|
|
133
|
+
display: inline-block;
|
|
134
|
+
vertical-align: middle;
|
|
135
|
+
background: #e8e8e8;
|
|
136
|
+
margin: 0 -2px 0 12px;
|
|
137
|
+
}
|
|
130
138
|
.vtx-datagrid-toolbar-setting-item {
|
|
131
139
|
display: inline-block;
|
|
132
140
|
margin-left: 16px;
|
|
@@ -134,6 +142,7 @@
|
|
|
134
142
|
font-size: 16px;
|
|
135
143
|
vertical-align: middle;
|
|
136
144
|
cursor: pointer;
|
|
145
|
+
color: #707070;
|
|
137
146
|
}
|
|
138
147
|
.vtx-datagrid-toolbar-setting-item:hover {
|
|
139
148
|
color: rgba(0, 0, 0, 0.75);
|
|
@@ -179,6 +179,14 @@
|
|
|
179
179
|
&-toolbar-right {
|
|
180
180
|
float: right;
|
|
181
181
|
}
|
|
182
|
+
&-toolbar-line {
|
|
183
|
+
width: 1px;
|
|
184
|
+
height: 14px;
|
|
185
|
+
display: inline-block;
|
|
186
|
+
vertical-align: middle;
|
|
187
|
+
background: #e8e8e8;
|
|
188
|
+
margin: 0 -2px 0 12px;
|
|
189
|
+
}
|
|
182
190
|
&-toolbar-setting-item {
|
|
183
191
|
display: inline-block;
|
|
184
192
|
margin-left: 16px;
|
|
@@ -186,6 +194,7 @@
|
|
|
186
194
|
font-size: 16px;
|
|
187
195
|
vertical-align: middle;
|
|
188
196
|
cursor: pointer;
|
|
197
|
+
color: #707070;
|
|
189
198
|
&:hover {
|
|
190
199
|
color: @icon-color-hover;
|
|
191
200
|
}
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
}
|
|
72
72
|
.vtx-form-layout .vtx-form-item--inline .ant-form-item-label > label {
|
|
73
73
|
height: auto;
|
|
74
|
-
color: rgba(0, 0, 0, 0.
|
|
74
|
+
color: rgba(0, 0, 0, 0.65);
|
|
75
75
|
}
|
|
76
76
|
.vtx-form-layout .vtx-form-item--inline .ant-form-item-label label::after {
|
|
77
77
|
content: ':';
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
}
|
|
83
83
|
.vtx-form-layout .vtx-form-item--view .ant-form-item-label > label {
|
|
84
84
|
height: auto;
|
|
85
|
-
color: rgba(0, 0, 0, 0.
|
|
85
|
+
color: rgba(0, 0, 0, 0.65);
|
|
86
86
|
}
|
|
87
87
|
.vtx-form-layout .vtx-form-item--view .ant-form-item-label label::after {
|
|
88
88
|
content: ':';
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
margin-bottom: 0;
|
|
55
55
|
& > label {
|
|
56
56
|
height: auto;
|
|
57
|
-
color: @text-color;
|
|
57
|
+
color: fade(@text-color, 65);
|
|
58
58
|
}
|
|
59
59
|
label::after {
|
|
60
60
|
content: ':';
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
.ant-form-item-label {
|
|
70
70
|
& > label {
|
|
71
71
|
height: auto;
|
|
72
|
-
color: @text-color;
|
|
72
|
+
color: fade(@text-color, 65);
|
|
73
73
|
}
|
|
74
74
|
label::after {
|
|
75
75
|
content: ':';
|
package/lib/vtx-modal/index.js
CHANGED
|
@@ -168,6 +168,15 @@ function VtxModal(props) {
|
|
|
168
168
|
|
|
169
169
|
|
|
170
170
|
title = function renderTitle() {
|
|
171
|
+
if (typeof title == 'string' && title.indexOf('>') > -1) {
|
|
172
|
+
var _titles = title.split(">");
|
|
173
|
+
|
|
174
|
+
title = /*#__PURE__*/_react["default"].createElement(_Title["default"], {
|
|
175
|
+
text: _titles[0].trim(),
|
|
176
|
+
subtitle: _titles[1].trim()
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
|
|
171
180
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
172
181
|
className: "vtx-modal-title",
|
|
173
182
|
style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["initDragArg","init_x","init_y","x_move","y_move","documentMouseMove","documentMouseUp","initFullScreen","isFull","className","VtxModal","props","useSetState","fullScreen","setFullScreen","dragArg","setDragArg","classId","useRef","Date","getTime","Math","random","wrapClassName","closable","title","maximize","onModalResize","moveable","useUpdateEffect","timer","setTimeout","el","document","getElementsByClassName","option","height","window","getComputedStyle","clearTimeout","useEffect","visible","modalHead","current","style","cursor","onmousedown","startDrag","e","preventDefault","onmouseup","onmousemove","clientX","clientY","prev","onCancel","renderTitle","paddingRight","fullScreenClass","bodyStyle","maxHeight","innerHeight","transformStyle","transform","newProps","maskClosable","destroyOnClose","width","classnames","children","info","Modal","success","error","warning","confirm","propTypes","PropTypes","bool","string","oneOfType","element","func","object","node","Title","size","xsmall","small","middle","large"],"sources":["vtx-modal/index.jsx"],"sourcesContent":["/*\n * @Author: chenxinyu\n * @Date: 2021-03-24 21:47:52\n * @LastEditors: your name\n * @LastEditTime: 2022-01-15 22:13:58\n * @Description: 对话框组件\n * @FilePath: \\react-components\\components\\vtx-modal\\index.jsx\n */\nimport React, { useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport useUpdateEffect from 'ahooks/es/useUpdateEffect';\nimport useSetState from 'ahooks/es/useSetState';\nimport CloseOutlined from '@ant-design/icons/CloseOutlined';\nimport FullscreenExitOutlined from '@ant-design/icons/FullscreenExitOutlined';\nimport FullscreenOutlined from '@ant-design/icons/FullscreenOutlined';\nimport classnames from 'classnames';\nimport Modal from 'antd/lib/modal';\nimport Title from './Title';\n\n// 对话框位置初始参数\nconst initDragArg = {\n init_x: 0,\n init_y: 0,\n x_move: 0,\n y_move: 0,\n documentMouseMove: null,\n documentMouseUp: null,\n};\n\n// 全屏参数\nconst initFullScreen = {\n isFull: false,\n className: '',\n};\n\nfunction VtxModal(props) {\n const [fullScreen, setFullScreen] = useSetState(initFullScreen); // 是否是全屏状态\n const [dragArg, setDragArg] = useSetState(initDragArg); // 拖动配置\n const classId = useRef(new Date().getTime() + Math.random());\n\n let {\n wrapClassName = '',\n closable = true, // 是否显示右上角关闭按钮\n title = '', // 对话框title\n maximize = false, // 是否显示对话框全屏按钮\n onModalResize, // 对话框全屏回调\n moveable = false, // 对话框是否允许拖动\n } = props;\n\n // 监听对话框大小变化回调(忽略首次执行)\n useUpdateEffect(() => {\n const timer = setTimeout(() => {\n if (onModalResize && typeof onModalResize === 'function') {\n const el = document.getElementsByClassName('ant-modal-body')[0];\n const option = {\n height: window.getComputedStyle(el).height,\n isFull: fullScreen.isFull,\n };\n onModalResize(option);\n }\n }, 100);\n return () => clearTimeout(timer);\n }, [fullScreen.isFull]);\n\n // 拖拽\n useEffect(() => {\n if (props.visible && moveable) {\n const timer = setTimeout(() => {\n const modalHead = document\n .getElementsByClassName(classId.current)?.[0]\n ?.getElementsByClassName('ant-modal-header')?.[0];\n if (modalHead) {\n modalHead.style.cursor = 'move';\n modalHead.onmousedown = startDrag;\n }\n }, 200);\n return () => clearTimeout(timer);\n }\n });\n\n const startDrag = e => {\n e.preventDefault();\n // 全屏模式下禁止拖拽\n if (!fullScreen.isFull) {\n setDragArg({\n documentMouseUp: document.onmouseup,\n documentMouseMove: document.onmousemove,\n init_x: e.clientX - dragArg.x_move,\n init_y: e.clientY - dragArg.y_move,\n });\n document.onmousemove = e => {\n setDragArg(prev => ({\n x_move: e.clientX - prev.init_x,\n y_move: e.clientY - prev.init_y,\n }));\n };\n document.onmouseup = () => {\n document.onmousemove = dragArg.documentMouseMove;\n document.onmouseup = dragArg.documentMouseUp;\n };\n }\n };\n\n // 关闭对话框,初始化位置\n const onCancel = () => {\n if (props.onCancel && typeof props.onCancel === 'function') {\n props.onCancel();\n // TODO 关闭弹框会闪一下,待解决\n setDragArg(initDragArg);\n setFullScreen(initFullScreen);\n }\n };\n\n /*\n *重写title,加入对话框全屏功能\n */\n title = (function renderTitle() {\n return (\n <div className=\"vtx-modal-title\" style={{ paddingRight: closable ? '32px' : '0px' }}>\n <div className=\"vtx-modal-title_name\">{title}</div>\n {maximize ? (\n <div className=\"vtx-modal-maximizeIcon\">\n <p\n onClick={() => {\n let fullScreenClass = '';\n if (!fullScreen.isFull) {\n fullScreenClass = 'vtx-modal-maxClass';\n }\n setFullScreen({\n isFull: !fullScreen.isFull,\n className: fullScreenClass,\n });\n }}\n >\n {fullScreen.isFull ? (\n <FullscreenExitOutlined />\n ) : (\n <FullscreenOutlined />\n )}\n </p>\n </div>\n ) : null}\n {closable ? (\n <div className=\"vtx-modal-close\">\n <p onClick={onCancel}>\n {/* <Icon type=\"close\" /> */}\n <CloseOutlined />\n </p>\n </div>\n ) : (\n ''\n )}\n </div>\n );\n })();\n\n let bodyStyle = {\n ...props.bodyStyle,\n };\n\n /* 限制最大高度 */\n if (!fullScreen.isFull) {\n bodyStyle = {\n maxHeight: `${window.innerHeight * 0.7}px`,\n ...bodyStyle,\n };\n }\n\n const transformStyle = {\n transform: `translate(${dragArg.x_move}px,${dragArg.y_move}px)`,\n };\n\n const newProps = {\n maskClosable: false,\n destroyOnClose: true,\n width: 700,\n ...props,\n closable: false,\n title,\n wrapClassName: classnames(\n 'vtx-modal',\n wrapClassName,\n fullScreen.className,\n classId.current,\n ),\n bodyStyle,\n onCancel,\n style: {\n ...props.style,\n ...(fullScreen.isFull ? {} : transformStyle),\n },\n };\n\n return <Modal {...newProps}>{props.children}</Modal>;\n}\n\nVtxModal.info = Modal.info;\nVtxModal.success = Modal.success;\nVtxModal.error = Modal.error;\nVtxModal.warning = Modal.warning;\nVtxModal.confirm = Modal.confirm;\n\nVtxModal.propTypes = {\n visible: PropTypes.bool,\n wrapClassName: PropTypes.string,\n closable: PropTypes.bool,\n title: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),\n maximize: PropTypes.bool,\n onModalResize: PropTypes.func,\n moveable: PropTypes.bool,\n onCancel: PropTypes.func,\n bodyStyle: PropTypes.object,\n style: PropTypes.object,\n children: PropTypes.node,\n};\n\nVtxModal.Title = Title;\n\nconst size = {\n xsmall: 392,\n small: 500,\n middle: 744,\n large: 1096,\n};\n\nVtxModal.size = size;\n\nexport default VtxModal;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["initDragArg","init_x","init_y","x_move","y_move","documentMouseMove","documentMouseUp","initFullScreen","isFull","className","VtxModal","props","useSetState","fullScreen","setFullScreen","dragArg","setDragArg","classId","useRef","Date","getTime","Math","random","wrapClassName","closable","title","maximize","onModalResize","moveable","useUpdateEffect","timer","setTimeout","el","document","getElementsByClassName","option","height","window","getComputedStyle","clearTimeout","useEffect","visible","modalHead","current","style","cursor","onmousedown","startDrag","e","preventDefault","onmouseup","onmousemove","clientX","clientY","prev","onCancel","renderTitle","indexOf","_titles","split","trim","paddingRight","fullScreenClass","bodyStyle","maxHeight","innerHeight","transformStyle","transform","newProps","maskClosable","destroyOnClose","width","classnames","children","info","Modal","success","error","warning","confirm","propTypes","PropTypes","bool","string","oneOfType","element","func","object","node","Title","size","xsmall","small","middle","large"],"sources":["vtx-modal/index.jsx"],"sourcesContent":["/*\n * @Author: chenxinyu\n * @Date: 2021-03-24 21:47:52\n * @LastEditors: your name\n * @LastEditTime: 2022-01-15 22:13:58\n * @Description: 对话框组件\n * @FilePath: \\react-components\\components\\vtx-modal\\index.jsx\n */\nimport React, { useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport useUpdateEffect from 'ahooks/es/useUpdateEffect';\nimport useSetState from 'ahooks/es/useSetState';\nimport CloseOutlined from '@ant-design/icons/CloseOutlined';\nimport FullscreenExitOutlined from '@ant-design/icons/FullscreenExitOutlined';\nimport FullscreenOutlined from '@ant-design/icons/FullscreenOutlined';\nimport classnames from 'classnames';\nimport Modal from 'antd/lib/modal';\nimport Title from './Title';\n\n// 对话框位置初始参数\nconst initDragArg = {\n init_x: 0,\n init_y: 0,\n x_move: 0,\n y_move: 0,\n documentMouseMove: null,\n documentMouseUp: null,\n};\n\n// 全屏参数\nconst initFullScreen = {\n isFull: false,\n className: '',\n};\n\nfunction VtxModal(props) {\n const [fullScreen, setFullScreen] = useSetState(initFullScreen); // 是否是全屏状态\n const [dragArg, setDragArg] = useSetState(initDragArg); // 拖动配置\n const classId = useRef(new Date().getTime() + Math.random());\n\n let {\n wrapClassName = '',\n closable = true, // 是否显示右上角关闭按钮\n title = '', // 对话框title\n maximize = false, // 是否显示对话框全屏按钮\n onModalResize, // 对话框全屏回调\n moveable = false, // 对话框是否允许拖动\n } = props;\n\n // 监听对话框大小变化回调(忽略首次执行)\n useUpdateEffect(() => {\n const timer = setTimeout(() => {\n if (onModalResize && typeof onModalResize === 'function') {\n const el = document.getElementsByClassName('ant-modal-body')[0];\n const option = {\n height: window.getComputedStyle(el).height,\n isFull: fullScreen.isFull,\n };\n onModalResize(option);\n }\n }, 100);\n return () => clearTimeout(timer);\n }, [fullScreen.isFull]);\n\n // 拖拽\n useEffect(() => {\n if (props.visible && moveable) {\n const timer = setTimeout(() => {\n const modalHead = document\n .getElementsByClassName(classId.current)?.[0]\n ?.getElementsByClassName('ant-modal-header')?.[0];\n if (modalHead) {\n modalHead.style.cursor = 'move';\n modalHead.onmousedown = startDrag;\n }\n }, 200);\n return () => clearTimeout(timer);\n }\n });\n\n const startDrag = e => {\n e.preventDefault();\n // 全屏模式下禁止拖拽\n if (!fullScreen.isFull) {\n setDragArg({\n documentMouseUp: document.onmouseup,\n documentMouseMove: document.onmousemove,\n init_x: e.clientX - dragArg.x_move,\n init_y: e.clientY - dragArg.y_move,\n });\n document.onmousemove = e => {\n setDragArg(prev => ({\n x_move: e.clientX - prev.init_x,\n y_move: e.clientY - prev.init_y,\n }));\n };\n document.onmouseup = () => {\n document.onmousemove = dragArg.documentMouseMove;\n document.onmouseup = dragArg.documentMouseUp;\n };\n }\n };\n\n // 关闭对话框,初始化位置\n const onCancel = () => {\n if (props.onCancel && typeof props.onCancel === 'function') {\n props.onCancel();\n // TODO 关闭弹框会闪一下,待解决\n setDragArg(initDragArg);\n setFullScreen(initFullScreen);\n }\n };\n\n /*\n *重写title,加入对话框全屏功能\n */\n title = (function renderTitle() {\n if(typeof(title) == 'string' && title.indexOf('>')>-1){\n let _titles = title.split(\">\");\n title = <Title text={_titles[0].trim()} subtitle={_titles[1].trim()}/>\n }\n return (\n <div className=\"vtx-modal-title\" style={{ paddingRight: closable ? '32px' : '0px' }}>\n <div className=\"vtx-modal-title_name\">{title}</div>\n {maximize ? (\n <div className=\"vtx-modal-maximizeIcon\">\n <p\n onClick={() => {\n let fullScreenClass = '';\n if (!fullScreen.isFull) {\n fullScreenClass = 'vtx-modal-maxClass';\n }\n setFullScreen({\n isFull: !fullScreen.isFull,\n className: fullScreenClass,\n });\n }}\n >\n {fullScreen.isFull ? (\n <FullscreenExitOutlined />\n ) : (\n <FullscreenOutlined />\n )}\n </p>\n </div>\n ) : null}\n {closable ? (\n <div className=\"vtx-modal-close\">\n <p onClick={onCancel}>\n {/* <Icon type=\"close\" /> */}\n <CloseOutlined />\n </p>\n </div>\n ) : (\n ''\n )}\n </div>\n );\n })();\n\n let bodyStyle = {\n ...props.bodyStyle,\n };\n\n /* 限制最大高度 */\n if (!fullScreen.isFull) {\n bodyStyle = {\n maxHeight: `${window.innerHeight * 0.7}px`,\n ...bodyStyle,\n };\n }\n\n const transformStyle = {\n transform: `translate(${dragArg.x_move}px,${dragArg.y_move}px)`,\n };\n\n const newProps = {\n maskClosable: false,\n destroyOnClose: true,\n width: 700,\n ...props,\n closable: false,\n title,\n wrapClassName: classnames(\n 'vtx-modal',\n wrapClassName,\n fullScreen.className,\n classId.current,\n ),\n bodyStyle,\n onCancel,\n style: {\n ...props.style,\n ...(fullScreen.isFull ? {} : transformStyle),\n },\n };\n\n return <Modal {...newProps}>{props.children}</Modal>;\n}\n\nVtxModal.info = Modal.info;\nVtxModal.success = Modal.success;\nVtxModal.error = Modal.error;\nVtxModal.warning = Modal.warning;\nVtxModal.confirm = Modal.confirm;\n\nVtxModal.propTypes = {\n visible: PropTypes.bool,\n wrapClassName: PropTypes.string,\n closable: PropTypes.bool,\n title: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),\n maximize: PropTypes.bool,\n onModalResize: PropTypes.func,\n moveable: PropTypes.bool,\n onCancel: PropTypes.func,\n bodyStyle: PropTypes.object,\n style: PropTypes.object,\n children: PropTypes.node,\n};\n\nVtxModal.Title = Title;\n\nconst size = {\n xsmall: 392,\n small: 500,\n middle: 744,\n large: 1096,\n};\n\nVtxModal.size = size;\n\nexport default VtxModal;\n"],"mappings":"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"}
|
package/lib/vtx-search/index.js
CHANGED
|
@@ -282,7 +282,8 @@ function VtxSearch(props) {
|
|
|
282
282
|
gutter: 8,
|
|
283
283
|
attr: "row"
|
|
284
284
|
}, isConfirmButton && /*#__PURE__*/_react["default"].createElement(_VtxCol["default"], {
|
|
285
|
-
span: 9
|
|
285
|
+
span: 9,
|
|
286
|
+
offset: !(weightiness > realColumn && isMoreButton) ? 6 : 0
|
|
286
287
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
287
288
|
"data-type": 'bt'
|
|
288
289
|
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
@@ -294,7 +295,8 @@ function VtxSearch(props) {
|
|
|
294
295
|
}, confirmText))), isClearButton && /*#__PURE__*/_react["default"].createElement(_VtxCol["default"], {
|
|
295
296
|
span: 9
|
|
296
297
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
297
|
-
"data-type": 'bt'
|
|
298
|
+
"data-type": 'bt',
|
|
299
|
+
className: "vtx-search-buttons-default"
|
|
298
300
|
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
299
301
|
style: {
|
|
300
302
|
width: '100%'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VtxSearch","props","layout","column","lg","md","sm","gridWeight","titles","labelWidth","wrapClassName","isConfirmButton","isClearButton","isMoreButton","confirmText","clearText","onConfirm","onClear","renderButtons","showAll","onToggleShow","customEnumText","vtxSearchRef","useRef","size","useColSize","realColumn","useContext","StoreCtx","onCollapse","initStyle","height","useState","weightiness","setWeightiness","useSetState","style","setStyle","boxStyle","ref","newGridWeight","filter","item","newTitles","newChildren","Array","isArray","children","rowHeight","useLayoutEffect","map","padding","current","clientHeight","isShowMore","analyzeChildren","data","cData","length","render","chData","forEach","ite","push","index","layout_h","d","i","textAlign","width","layout_v","gwt","classnames","paddingTop","collapseText","expandText","propTypes","PropTypes","oneOf","objectOf","number","array","string","node","bool","func","object"],"sources":["vtx-search/index.jsx"],"sourcesContent":["/*\n * @Author: chenxinyu\n * @Date: 2021-03-24 21:47:52\n * @LastEditors: your name\n * @LastEditTime: 2022-03-22 16:19:00\n * @Description: 查询布局组件\n * @FilePath: \\react-components\\components\\vtx-search\\index.jsx\n */\nimport React, { useState, useLayoutEffect, useRef, useContext } from 'react';\nimport useSetState from 'ahooks/es/useSetState';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Button from 'antd/lib/button';\nimport Tooltip from 'antd/lib/tooltip';\nimport UpOutlined from '@ant-design/icons/UpOutlined';\nimport DownOutlined from '@ant-design/icons/DownOutlined';\nimport VtxRow from './VtxRow';\nimport VtxCol from './VtxCol';\nimport { StoreCtx } from '../vtx-page-layout/TableLayout';\nimport useColSize from '../_util/useColSize';\n\nfunction VtxSearch(props) {\n //参数列表\n const {\n layout = 'horizontal',\n column = { lg: 4, md: 3, sm: 2 },\n gridWeight = [],\n titles = [],\n labelWidth = 84, //搜索条件名宽度\n wrapClassName,\n isConfirmButton = true, //是否显示确认按钮\n isClearButton = true, //是否显示清空按钮\n isMoreButton = true, //是否显示更多按钮\n confirmText = '查询', //确认按钮文本\n clearText = '重置', //情况按钮文本\n onConfirm, //确认按钮回调\n onClear, //清空按钮回调\n renderButtons, //自定义按钮块\n showAll = false, //是否展示所有查询条件\n onToggleShow,\n customEnumText = {}\n } = props;\n\n const vtxSearchRef = useRef();\n const size = useColSize(vtxSearchRef);\n const realColumn = column[size];\n\n const { onCollapse } = useContext(StoreCtx);\n\n const initStyle = {\n height: layout === 'horizontal' ? 48 : 68,\n };\n //初始化\n const [weightiness, setWeightiness] = useState(0);\n const [style, setStyle] = useSetState(initStyle);\n const { height, boxStyle } = style;\n const ref = useRef();\n\n const newGridWeight = gridWeight.filter(item => !!item);\n const newTitles = titles.filter(item => !!item);\n const newChildren = Array.isArray(props?.children)\n ? props?.children.filter(item => !!item)\n : props?.children;\n\n const rowHeight = layout === 'horizontal' ? 48 : 68;\n\n useLayoutEffect(() => {\n let weightiness = 0;\n newGridWeight.map(item => {\n weightiness += item;\n });\n const padding = 16;\n setWeightiness(weightiness);\n\n if (showAll) {\n setStyle(\n weightiness > realColumn\n ? {\n height: ref.current.clientHeight,\n }\n : initStyle,\n );\n onCollapse && onCollapse(ref.current.clientHeight + padding);\n }\n }, [gridWeight, realColumn]);\n\n const isShowMore = () => {\n const padding = 16;\n if (height > rowHeight) {\n setStyle(initStyle);\n if (onToggleShow && typeof onToggleShow === 'function') {\n onToggleShow(rowHeight + padding);\n }\n onCollapse && onCollapse(rowHeight + padding);\n } else {\n setStyle({\n height: ref.current.clientHeight,\n });\n if (onToggleShow && typeof onToggleShow === 'function') {\n onToggleShow(ref.current.clientHeight + padding);\n }\n onCollapse && onCollapse(ref.current.clientHeight + padding);\n }\n };\n\n const analyzeChildren = data => {\n let cData = data;\n if (!cData) return null;\n if (typeof data == 'function') {\n cData = data();\n }\n if (!cData.length) {\n return render(cData, 0);\n } else {\n let chData = [];\n cData.forEach(item => {\n if (typeof item == 'function') {\n let ite = item();\n if (Array.isArray(ite)) {\n chData.push(...ite);\n }\n chData.push(ite);\n return;\n }\n if (Array.isArray(item)) {\n chData.push(...item);\n return;\n }\n chData.push(item);\n });\n return chData.map((item, index) => {\n return render(item, index);\n });\n }\n };\n\n const layout_h = (d, i) => (\n <VtxRow gutter={2} attr=\"row\">\n <div className=\"vtx-search-label_h\" style={{ textAlign: 'right', width: labelWidth }}>\n <Tooltip title={newTitles[i]} placement=\"topRight\">\n {newTitles[i]}\n </Tooltip>\n </div>\n <div className=\"vtx-search-lists_h\" style={{ width: `calc(100% - ${labelWidth}px)` }}>\n <span className=\"vtx-search-list\">{d}</span>\n </div>\n </VtxRow>\n );\n\n const layout_v = (d, i) => (\n <VtxRow gutter={2} attr=\"row\" className=\"vtx-search-item__v\">\n <div className=\"vtx-search-label_v\">\n <Tooltip title={newTitles[i]} placement=\"topLeft\">\n {newTitles[i]}\n </Tooltip>\n </div>\n <div className=\"vtx-search-lists_v\">\n <span className=\"vtx-search-list\">{d}</span>\n </div>\n </VtxRow>\n );\n\n let render = (d, i) => {\n let gwt = newGridWeight[i];\n return (\n <VtxCol key={i} span={(24 / realColumn) * gwt} className=\"a\">\n {layout === 'horizontal' && layout_h(d, i)}\n {layout === 'vertical' && layout_v(d, i)}\n </VtxCol>\n );\n };\n\n return (\n <div\n className={classnames('vtx-search', wrapClassName)}\n style={{ height: `${height + 16}px`, ...boxStyle }}\n ref={vtxSearchRef}\n >\n <div className=\"vtx-search-element\" ref={ref}>\n <VtxRow gutter={24} attr=\"row\">\n {analyzeChildren(newChildren)}\n </VtxRow>\n </div>\n\n <div\n className=\"vtx-search-buttons\"\n style={{ paddingTop: layout === 'vertical' ? 28 : 0 }}\n >\n {renderButtons ? (\n <VtxRow gutter={8} attr=\"row\">\n {renderButtons}\n </VtxRow>\n ) : (\n <VtxRow gutter={8} attr=\"row\">\n {isConfirmButton && (\n <VtxCol span={9}>\n <span data-type={'bt'}>\n <Button\n style={{ width: '100%' }}\n type=\"primary\"\n onClick={onConfirm}\n >\n {confirmText}\n </Button>\n </span>\n </VtxCol>\n )}\n {isClearButton && (\n <VtxCol span={9}>\n <span data-type={'bt'}>\n <Button style={{ width: '100%' }} onClick={onClear}>\n {clearText}\n </Button>\n </span>\n </VtxCol>\n )}\n {weightiness > realColumn && isMoreButton && (\n <VtxCol span={6}>\n <div\n data-type={'bt'}\n onClick={() => isShowMore()}\n className=\"vtx-search-more\"\n >\n {height > rowHeight ? (\n <>\n {customEnumText?.collapseText || \"收起\"}\n <UpOutlined />\n </>\n ) : (\n <>\n {customEnumText?.expandText || \"展开\"}\n <DownOutlined />\n </>\n )}\n </div>\n </VtxCol>\n )}\n </VtxRow>\n )}\n </div>\n </div>\n );\n}\n\nVtxSearch.propTypes = {\n layout: PropTypes.oneOf(['vertical', 'horizontal']),\n column: PropTypes.objectOf(PropTypes.number),\n gridWeight: PropTypes.array,\n titles: PropTypes.array,\n labelWidth: PropTypes.number,\n wrapClassName: PropTypes.string,\n children: PropTypes.node,\n isConfirmButton: PropTypes.bool,\n isClearButton: PropTypes.bool,\n isMoreButton: PropTypes.bool,\n onConfirm: PropTypes.func,\n confirmText: PropTypes.string,\n onClear: PropTypes.func,\n clearText: PropTypes.string,\n renderButtons: PropTypes.node,\n showAll: PropTypes.bool,\n onToggleShow: PropTypes.func,\n customEnumText: PropTypes.object\n};\nexport default VtxSearch;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["VtxSearch","props","layout","column","lg","md","sm","gridWeight","titles","labelWidth","wrapClassName","isConfirmButton","isClearButton","isMoreButton","confirmText","clearText","onConfirm","onClear","renderButtons","showAll","onToggleShow","customEnumText","vtxSearchRef","useRef","size","useColSize","realColumn","useContext","StoreCtx","onCollapse","initStyle","height","useState","weightiness","setWeightiness","useSetState","style","setStyle","boxStyle","ref","newGridWeight","filter","item","newTitles","newChildren","Array","isArray","children","rowHeight","useLayoutEffect","map","padding","current","clientHeight","isShowMore","analyzeChildren","data","cData","length","render","chData","forEach","ite","push","index","layout_h","d","i","textAlign","width","layout_v","gwt","classnames","paddingTop","collapseText","expandText","propTypes","PropTypes","oneOf","objectOf","number","array","string","node","bool","func","object"],"sources":["vtx-search/index.jsx"],"sourcesContent":["/*\r\n * @Author: chenxinyu\r\n * @Date: 2021-03-24 21:47:52\r\n * @LastEditors: your name\r\n * @LastEditTime: 2022-03-22 16:19:00\r\n * @Description: 查询布局组件\r\n * @FilePath: \\react-components\\components\\vtx-search\\index.jsx\r\n */\r\nimport React, { useState, useLayoutEffect, useRef, useContext } from 'react';\r\nimport useSetState from 'ahooks/es/useSetState';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport Button from 'antd/lib/button';\r\nimport Tooltip from 'antd/lib/tooltip';\r\nimport UpOutlined from '@ant-design/icons/UpOutlined';\r\nimport DownOutlined from '@ant-design/icons/DownOutlined';\r\nimport VtxRow from './VtxRow';\r\nimport VtxCol from './VtxCol';\r\nimport { StoreCtx } from '../vtx-page-layout/TableLayout';\r\nimport useColSize from '../_util/useColSize';\r\n\r\nfunction VtxSearch(props) {\r\n //参数列表\r\n const {\r\n layout = 'horizontal',\r\n column = { lg: 4, md: 3, sm: 2 },\r\n gridWeight = [],\r\n titles = [],\r\n labelWidth = 84, //搜索条件名宽度\r\n wrapClassName,\r\n isConfirmButton = true, //是否显示确认按钮\r\n isClearButton = true, //是否显示清空按钮\r\n isMoreButton = true, //是否显示更多按钮\r\n confirmText = '查询', //确认按钮文本\r\n clearText = '重置', //情况按钮文本\r\n onConfirm, //确认按钮回调\r\n onClear, //清空按钮回调\r\n renderButtons, //自定义按钮块\r\n showAll = false, //是否展示所有查询条件\r\n onToggleShow,\r\n customEnumText = {}\r\n } = props;\r\n\r\n const vtxSearchRef = useRef();\r\n const size = useColSize(vtxSearchRef);\r\n const realColumn = column[size];\r\n\r\n const { onCollapse } = useContext(StoreCtx);\r\n\r\n const initStyle = {\r\n height: layout === 'horizontal' ? 48 : 68,\r\n };\r\n //初始化\r\n const [weightiness, setWeightiness] = useState(0);\r\n const [style, setStyle] = useSetState(initStyle);\r\n const { height, boxStyle } = style;\r\n const ref = useRef();\r\n\r\n const newGridWeight = gridWeight.filter(item => !!item);\r\n const newTitles = titles.filter(item => !!item);\r\n const newChildren = Array.isArray(props?.children)\r\n ? props?.children.filter(item => !!item)\r\n : props?.children;\r\n\r\n const rowHeight = layout === 'horizontal' ? 48 : 68;\r\n\r\n useLayoutEffect(() => {\r\n let weightiness = 0;\r\n newGridWeight.map(item => {\r\n weightiness += item;\r\n });\r\n const padding = 16;\r\n setWeightiness(weightiness);\r\n\r\n if (showAll) {\r\n setStyle(\r\n weightiness > realColumn\r\n ? {\r\n height: ref.current.clientHeight,\r\n }\r\n : initStyle,\r\n );\r\n onCollapse && onCollapse(ref.current.clientHeight + padding);\r\n }\r\n }, [gridWeight, realColumn]);\r\n\r\n const isShowMore = () => {\r\n const padding = 16;\r\n if (height > rowHeight) {\r\n setStyle(initStyle);\r\n if (onToggleShow && typeof onToggleShow === 'function') {\r\n onToggleShow(rowHeight + padding);\r\n }\r\n onCollapse && onCollapse(rowHeight + padding);\r\n } else {\r\n setStyle({\r\n height: ref.current.clientHeight,\r\n });\r\n if (onToggleShow && typeof onToggleShow === 'function') {\r\n onToggleShow(ref.current.clientHeight + padding);\r\n }\r\n onCollapse && onCollapse(ref.current.clientHeight + padding);\r\n }\r\n };\r\n\r\n const analyzeChildren = data => {\r\n let cData = data;\r\n if (!cData) return null;\r\n if (typeof data == 'function') {\r\n cData = data();\r\n }\r\n if (!cData.length) {\r\n return render(cData, 0);\r\n } else {\r\n let chData = [];\r\n cData.forEach(item => {\r\n if (typeof item == 'function') {\r\n let ite = item();\r\n if (Array.isArray(ite)) {\r\n chData.push(...ite);\r\n }\r\n chData.push(ite);\r\n return;\r\n }\r\n if (Array.isArray(item)) {\r\n chData.push(...item);\r\n return;\r\n }\r\n chData.push(item);\r\n });\r\n return chData.map((item, index) => {\r\n return render(item, index);\r\n });\r\n }\r\n };\r\n\r\n const layout_h = (d, i) => (\r\n <VtxRow gutter={2} attr=\"row\">\r\n <div className=\"vtx-search-label_h\" style={{ textAlign: 'right', width: labelWidth }}>\r\n <Tooltip title={newTitles[i]} placement=\"topRight\">\r\n {newTitles[i]}\r\n </Tooltip>\r\n </div>\r\n <div className=\"vtx-search-lists_h\" style={{ width: `calc(100% - ${labelWidth}px)` }}>\r\n <span className=\"vtx-search-list\">{d}</span>\r\n </div>\r\n </VtxRow>\r\n );\r\n\r\n const layout_v = (d, i) => (\r\n <VtxRow gutter={2} attr=\"row\" className=\"vtx-search-item__v\">\r\n <div className=\"vtx-search-label_v\">\r\n <Tooltip title={newTitles[i]} placement=\"topLeft\">\r\n {newTitles[i]}\r\n </Tooltip>\r\n </div>\r\n <div className=\"vtx-search-lists_v\">\r\n <span className=\"vtx-search-list\">{d}</span>\r\n </div>\r\n </VtxRow>\r\n );\r\n\r\n let render = (d, i) => {\r\n let gwt = newGridWeight[i];\r\n return (\r\n <VtxCol key={i} span={(24 / realColumn) * gwt} className=\"a\">\r\n {layout === 'horizontal' && layout_h(d, i)}\r\n {layout === 'vertical' && layout_v(d, i)}\r\n </VtxCol>\r\n );\r\n };\r\n\r\n return (\r\n <div\r\n className={classnames('vtx-search', wrapClassName)}\r\n style={{ height: `${height + 16}px`, ...boxStyle }}\r\n ref={vtxSearchRef}\r\n >\r\n <div className=\"vtx-search-element\" ref={ref}>\r\n <VtxRow gutter={24} attr=\"row\">\r\n {analyzeChildren(newChildren)}\r\n </VtxRow>\r\n </div>\r\n\r\n <div\r\n className=\"vtx-search-buttons\"\r\n style={{ paddingTop: layout === 'vertical' ? 28 : 0 }}\r\n >\r\n {renderButtons ? (\r\n <VtxRow gutter={8} attr=\"row\">\r\n {renderButtons}\r\n </VtxRow>\r\n ) : (\r\n <VtxRow gutter={8} attr=\"row\">\r\n {isConfirmButton && (\r\n <VtxCol span={9} offset={!(weightiness > realColumn && isMoreButton) ? 6 : 0}>\r\n <span data-type={'bt'}>\r\n <Button\r\n style={{ width: '100%' }}\r\n type=\"primary\"\r\n onClick={onConfirm}\r\n >\r\n {confirmText}\r\n </Button>\r\n </span>\r\n </VtxCol>\r\n )}\r\n {isClearButton && (\r\n <VtxCol span={9}>\r\n <span data-type={'bt'} className=\"vtx-search-buttons-default\">\r\n <Button style={{ width: '100%' }} onClick={onClear}>\r\n {clearText}\r\n </Button>\r\n </span>\r\n </VtxCol>\r\n )}\r\n {weightiness > realColumn && isMoreButton && (\r\n <VtxCol span={6}>\r\n <div\r\n data-type={'bt'}\r\n onClick={() => isShowMore()}\r\n className=\"vtx-search-more\"\r\n >\r\n {height > rowHeight ? (\r\n <>\r\n {customEnumText?.collapseText || \"收起\"}\r\n <UpOutlined />\r\n </>\r\n ) : (\r\n <>\r\n {customEnumText?.expandText || \"展开\"}\r\n <DownOutlined />\r\n </>\r\n )}\r\n </div>\r\n </VtxCol>\r\n )}\r\n </VtxRow>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nVtxSearch.propTypes = {\r\n layout: PropTypes.oneOf(['vertical', 'horizontal']),\r\n column: PropTypes.objectOf(PropTypes.number),\r\n gridWeight: PropTypes.array,\r\n titles: PropTypes.array,\r\n labelWidth: PropTypes.number,\r\n wrapClassName: PropTypes.string,\r\n children: PropTypes.node,\r\n isConfirmButton: PropTypes.bool,\r\n isClearButton: PropTypes.bool,\r\n isMoreButton: PropTypes.bool,\r\n onConfirm: PropTypes.func,\r\n confirmText: PropTypes.string,\r\n onClear: PropTypes.func,\r\n clearText: PropTypes.string,\r\n renderButtons: PropTypes.node,\r\n showAll: PropTypes.bool,\r\n onToggleShow: PropTypes.func,\r\n customEnumText: PropTypes.object\r\n};\r\nexport default VtxSearch;\r\n"],"mappings":"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"}
|
|
@@ -73,6 +73,14 @@
|
|
|
73
73
|
height: 100%;
|
|
74
74
|
vertical-align: top;
|
|
75
75
|
}
|
|
76
|
+
.vtx-search-buttons-default .ant-btn-default {
|
|
77
|
+
color: rgba(0, 0, 0, 0.65);
|
|
78
|
+
}
|
|
79
|
+
.vtx-search-buttons .ant-row {
|
|
80
|
+
-webkit-box-pack: end !important;
|
|
81
|
+
-ms-flex-pack: end !important;
|
|
82
|
+
justify-content: end !important;
|
|
83
|
+
}
|
|
76
84
|
.vtx-search .vtx-search-more {
|
|
77
85
|
height: 32px;
|
|
78
86
|
color: #1890ff;
|
|
@@ -1,83 +1,92 @@
|
|
|
1
|
-
@import (reference) '~antd/lib/style/themes/index.less';
|
|
2
|
-
|
|
3
|
-
@prefix-cls: vtx-search;
|
|
4
|
-
@toggleSpeed: 0.3s; // 展开速度
|
|
5
|
-
@buttons-width: 200px;
|
|
6
|
-
|
|
7
|
-
.@{prefix-cls} {
|
|
8
|
-
position: relative;
|
|
9
|
-
z-index: 9;
|
|
10
|
-
padding-top: 8px;
|
|
11
|
-
padding-right: 24px;
|
|
12
|
-
padding-bottom: 8px;
|
|
13
|
-
padding-left: 24px;
|
|
14
|
-
overflow: hidden;
|
|
15
|
-
background: @component-background;
|
|
16
|
-
transition-duration: @toggleSpeed;
|
|
17
|
-
transition-property: height;
|
|
18
|
-
&-label_h {
|
|
19
|
-
display: inline-block;
|
|
20
|
-
overflow: hidden;
|
|
21
|
-
line-height: 48px;
|
|
22
|
-
white-space: nowrap;
|
|
23
|
-
text-overflow: ellipsis;
|
|
24
|
-
vertical-align: top;
|
|
25
|
-
}
|
|
26
|
-
&-lists_h {
|
|
27
|
-
position: relative;
|
|
28
|
-
display: inline-block;
|
|
29
|
-
box-sizing: border-box;
|
|
30
|
-
height: 48px;
|
|
31
|
-
padding-top: 8px;
|
|
32
|
-
padding-bottom: 8px;
|
|
33
|
-
padding-left: 12px;
|
|
34
|
-
line-height: @line-height-base;
|
|
35
|
-
vertical-align: top;
|
|
36
|
-
}
|
|
37
|
-
.vtx-search-item__v {
|
|
38
|
-
flex-direction: column;
|
|
39
|
-
padding: 8px 0;
|
|
40
|
-
}
|
|
41
|
-
&-label_v {
|
|
42
|
-
overflow: hidden;
|
|
43
|
-
line-height: 21px;
|
|
44
|
-
white-space: nowrap;
|
|
45
|
-
text-overflow: ellipsis;
|
|
46
|
-
vertical-align: top;
|
|
47
|
-
}
|
|
48
|
-
&-lists_v {
|
|
49
|
-
position: relative;
|
|
50
|
-
box-sizing: border-box;
|
|
51
|
-
height: 42px;
|
|
52
|
-
padding-top: 8px;
|
|
53
|
-
padding-bottom: 8px;
|
|
54
|
-
line-height: 32px;
|
|
55
|
-
vertical-align: top;
|
|
56
|
-
}
|
|
57
|
-
&-list {
|
|
58
|
-
width: 100%;
|
|
59
|
-
}
|
|
60
|
-
&-element {
|
|
61
|
-
display: inline-block;
|
|
62
|
-
/* stylelint-disable */
|
|
63
|
-
width: calc(100% - @buttons-width - 24px);
|
|
64
|
-
margin-right: 24px;
|
|
65
|
-
}
|
|
66
|
-
&-buttons {
|
|
67
|
-
display: inline-block;
|
|
68
|
-
box-sizing: border-box;
|
|
69
|
-
width: @buttons-width;
|
|
70
|
-
height: 100%;
|
|
71
|
-
vertical-align: top;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
1
|
+
@import (reference) '~antd/lib/style/themes/index.less';
|
|
2
|
+
|
|
3
|
+
@prefix-cls: vtx-search;
|
|
4
|
+
@toggleSpeed: 0.3s; // 展开速度
|
|
5
|
+
@buttons-width: 200px;
|
|
6
|
+
|
|
7
|
+
.@{prefix-cls} {
|
|
8
|
+
position: relative;
|
|
9
|
+
z-index: 9;
|
|
10
|
+
padding-top: 8px;
|
|
11
|
+
padding-right: 24px;
|
|
12
|
+
padding-bottom: 8px;
|
|
13
|
+
padding-left: 24px;
|
|
14
|
+
overflow: hidden;
|
|
15
|
+
background: @component-background;
|
|
16
|
+
transition-duration: @toggleSpeed;
|
|
17
|
+
transition-property: height;
|
|
18
|
+
&-label_h {
|
|
19
|
+
display: inline-block;
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
line-height: 48px;
|
|
22
|
+
white-space: nowrap;
|
|
23
|
+
text-overflow: ellipsis;
|
|
24
|
+
vertical-align: top;
|
|
25
|
+
}
|
|
26
|
+
&-lists_h {
|
|
27
|
+
position: relative;
|
|
28
|
+
display: inline-block;
|
|
29
|
+
box-sizing: border-box;
|
|
30
|
+
height: 48px;
|
|
31
|
+
padding-top: 8px;
|
|
32
|
+
padding-bottom: 8px;
|
|
33
|
+
padding-left: 12px;
|
|
34
|
+
line-height: @line-height-base;
|
|
35
|
+
vertical-align: top;
|
|
36
|
+
}
|
|
37
|
+
.vtx-search-item__v {
|
|
38
|
+
flex-direction: column;
|
|
39
|
+
padding: 8px 0;
|
|
40
|
+
}
|
|
41
|
+
&-label_v {
|
|
42
|
+
overflow: hidden;
|
|
43
|
+
line-height: 21px;
|
|
44
|
+
white-space: nowrap;
|
|
45
|
+
text-overflow: ellipsis;
|
|
46
|
+
vertical-align: top;
|
|
47
|
+
}
|
|
48
|
+
&-lists_v {
|
|
49
|
+
position: relative;
|
|
50
|
+
box-sizing: border-box;
|
|
51
|
+
height: 42px;
|
|
52
|
+
padding-top: 8px;
|
|
53
|
+
padding-bottom: 8px;
|
|
54
|
+
line-height: 32px;
|
|
55
|
+
vertical-align: top;
|
|
56
|
+
}
|
|
57
|
+
&-list {
|
|
58
|
+
width: 100%;
|
|
59
|
+
}
|
|
60
|
+
&-element {
|
|
61
|
+
display: inline-block;
|
|
62
|
+
/* stylelint-disable */
|
|
63
|
+
width: calc(100% - @buttons-width - 24px);
|
|
64
|
+
margin-right: 24px;
|
|
65
|
+
}
|
|
66
|
+
&-buttons {
|
|
67
|
+
display: inline-block;
|
|
68
|
+
box-sizing: border-box;
|
|
69
|
+
width: @buttons-width;
|
|
70
|
+
height: 100%;
|
|
71
|
+
vertical-align: top;
|
|
72
|
+
|
|
73
|
+
&-default {
|
|
74
|
+
.ant-btn-default {
|
|
75
|
+
color: rgba(0, 0, 0, 0.65);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
.ant-row {
|
|
79
|
+
justify-content: end !important;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
.vtx-search-more {
|
|
83
|
+
height: 32px;
|
|
84
|
+
color: @primary-color;
|
|
85
|
+
line-height: 32px;
|
|
86
|
+
cursor: pointer;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.vtx-row {
|
|
91
|
+
overflow: hidden;
|
|
92
|
+
}
|
|
@@ -17,6 +17,8 @@ var _tag = _interopRequireDefault(require("antd/lib/tag"));
|
|
|
17
17
|
|
|
18
18
|
var _CloseCircleFilled = _interopRequireDefault(require("@ant-design/icons/CloseCircleFilled"));
|
|
19
19
|
|
|
20
|
+
var _DownOutlined = _interopRequireDefault(require("@ant-design/icons/DownOutlined"));
|
|
21
|
+
|
|
20
22
|
var _lodash = _interopRequireDefault(require("lodash.isequal"));
|
|
21
23
|
|
|
22
24
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -447,10 +449,17 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
447
449
|
,
|
|
448
450
|
disabled: disabled,
|
|
449
451
|
placeholder: t.props.placeholder,
|
|
450
|
-
suffix: disabled || selectedNodes.length == 0 || !allowClear ? /*#__PURE__*/_react["default"].createElement(
|
|
452
|
+
suffix: disabled || selectedNodes.length == 0 || !allowClear ? /*#__PURE__*/_react["default"].createElement(_DownOutlined["default"], {
|
|
453
|
+
className: "".concat(prefixCls, "-arrow-icon")
|
|
454
|
+
}) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_DownOutlined["default"], {
|
|
455
|
+
className: "".concat(prefixCls, "-arrow2-icon"),
|
|
456
|
+
style: {
|
|
457
|
+
marginRight: '0px'
|
|
458
|
+
}
|
|
459
|
+
}), /*#__PURE__*/_react["default"].createElement(_CloseCircleFilled["default"], {
|
|
451
460
|
className: "".concat(prefixCls, "-close-icon"),
|
|
452
461
|
onClick: t.clear.bind(t)
|
|
453
|
-
}),
|
|
462
|
+
})),
|
|
454
463
|
onFocus: function onFocus() {
|
|
455
464
|
t.setState({
|
|
456
465
|
focusSingle: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","popWidth","searchValue","inputRef","keyNodesMapping","getKeyNodesMapping","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","setState","fuzzySearch","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","popoverProps","allowClear","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","ref","clientWidth","height","e","stopPropagation","clearKey","slice","clear","focusMultiple","placeholder","target","trim","width","border","padding","outline","boxShadow","marginBottom","Empty","PRESENTED_IMAGE_SIMPLE","SingleSelect","focusSingle","join","bind","v","focus","cursor","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func","object"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\nimport Popover from 'antd/lib/popover';\nimport Input from 'antd/lib/input';\nimport Tag from 'antd/lib/tag';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport isEqual from 'lodash.isequal';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Ztree from '../vtx-ztree';\nimport { MoreOutlined } from '@ant-design/icons';\nimport Button from 'antd/lib/button';\nimport Empty from 'antd/lib/empty';\n\nexport default class VtxZtreeSelect extends React.Component {\n constructor(props) {\n super(props);\n this.tree = null;\n this.treeRefreshFlag = 1;\n this.state = {\n popoverVisible: false,\n popWidth: 0,\n searchValue: '',\n inputRef: null,\n };\n this.keyNodesMapping = {};\n this.getKeyNodesMapping();\n }\n\n // UNSAFE_componentWillReceiveProps(nextProps) {\n // if (!isEqual(this.props.data, nextProps.data)) {\n // this.getKeyNodesMapping(nextProps.data);\n // }\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\n // this.treeRefreshFlag++;\n // }\n // }\n\n // 替换componentWillReceiveProps\n componentDidUpdate(prevProps) {\n if (!isEqual(this.props.data, prevProps.data)) {\n this.getKeyNodesMapping(this.props.data);\n }\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\n this.treeRefreshFlag++;\n }\n }\n\n getKeyNodesMapping(nodes) {\n const t = this;\n t.keyNodesMapping = {};\n (function genNodes(nodes) {\n nodes.map(item => {\n const { children, ...rest } = item;\n t.keyNodesMapping[item.key] = rest;\n if (Array.isArray(children) && children.length > 0) {\n genNodes(children);\n }\n });\n })(nodes || this.props.data || []);\n }\n\n clear() {\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes(\n this.tree.getCheckedNodes().map(item => item.key),\n false,\n );\n } else {\n this.tree.cancelSelectedNodes(this.props.value);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes: [],\n keys: [],\n leafKeys: [],\n names: [],\n });\n\n if(this.tree){\n this.setState({searchValue: ''});\n this.tree?.fuzzySearch('');\n }\n }\n\n clearKey(key) {\n const keyIndex = this.props.value.indexOf(key);\n if (keyIndex != -1) {\n const keyList = [...this.props.value];\n keyList.splice(keyIndex, 1);\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes([key], false);\n } else {\n this.tree.cancelSelectedNodes([key]);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes,\n keys: keyList,\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\n names: nodes.map(item => item.name),\n });\n }\n }\n\n clearSearch() {\n this.tree && this.tree.clearSearch();\n }\n\n render() {\n const t = this;\n // 必填参数\n const { data, value } = t.props;\n // 可配参数\n const {\n prefixCls = 'vtx-ztree-select',\n treeCheckable = false,\n treeDefaultExpandAll = false,\n multiple = false,\n showSearch = true,\n searchPlaceholder,\n dropdownStyle = {},\n style = {},\n disabled = false,\n refreshFlag = null,\n expandedKeys,\n customCfg,\n checkStrictly,\n popoverProps={},\n allowClear = true\n } = t.props;\n // eslint-disable-next-line camelcase\n const value_arr = (function(val) {\n if (Array.isArray(val)) {\n return val;\n } else if (val) {\n return [val];\n } else {\n return [];\n }\n })(value);\n const selectedNodes = value_arr\n .filter(k => k in t.keyNodesMapping)\n .map(item => ({\n id: item,\n name: t.keyNodesMapping[item].name,\n }));\n // ztree配置\n const treeProps = {\n data, // 树的数据\n // showSearch: showSearch,\n showSearch: false,\n searchPlaceholder: searchPlaceholder,\n multiple,\n checkable: treeCheckable,\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys,\n refreshFlag: refreshFlag || t.treeRefreshFlag,\n customCfg,\n checkStrictly,\n ref(instance) {\n if (instance) t.tree = instance;\n },\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\n // console.log(selectedNodes,selectedKeys,selectedNames)\n if (!treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: selectedNodes,\n keys: selectedKeys,\n leafKeys: selectedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: selectedNames,\n });\n if (!multiple) {\n t.setState({\n popoverVisible: false,\n searchValue: ''\n });\n t.tree?.fuzzySearch('');\n }\n }\n },\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\n if (treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: checkedNodes,\n keys: checkedKeys,\n leafKeys: checkedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: checkedNames,\n });\n }\n },\n beforeCheck(treeNode) {\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\n },\n };\n\n // 多选组件\n const MultiSelect = (\n <div \n className={classnames(`${prefixCls}-multiple-box`)} \n style={style}\n ref={ref=>{\n if(!t.state.popWidth && ref?.clientWidth){\n t.setState({popWidth: ref?.clientWidth})\n }\n }}\n >\n <div\n className={classnames('ant-input', `${prefixCls}-multiple`, {\n [`${prefixCls}-multiple-disabled`]: disabled,\n })}\n style={{ height: '32px', ...style }}\n >\n <div className={classnames(`${prefixCls}-multiple-content`)}>\n {selectedNodes.length > 0 && (\n [\n selectedNodes.map(item => (\n <Tag\n key={item.id}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )),\n (disabled||!allowClear) ? null : (\n <CloseCircleFilled\n key={'icon'}\n className={`${prefixCls}-multiple-close-icon`}\n onClick={e => {\n e.stopPropagation();\n t.clear();\n }}\n />\n ),\n ]\n )}\n\n {\n selectedNodes.length == 0 && !t.state.focusMultiple && !t.state.searchValue &&\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\n }\n \n <Input\n ref={ref=>{\n if(ref && !t.state.inputRef) {\n t.setState({inputRef: ref})\n }\n }}\n value={t.state.searchValue}\n onChange={e=>{\n if(t.tree){\n t.setState({searchValue: e.target.value});\n t.tree?.fuzzySearch(e.target.value.trim());\n }\n }}\n onBlur={()=>{\n t.setState({focusMultiple: false});\n }}\n style={{width: 'fit-content',border: 'none',padding: 0, outline: 'none', boxShadow: 'none'}}\n />\n </div>\n </div>\n <Popover\n content={\n <>\n <div className={classnames('vtx-tree-count-head')}>\n <span>已选择:{selectedNodes.length}</span>\n <span \n className={classnames((selectedNodes.length>0&&!disabled)?'clear-count':'disabled-count')} \n onClick={e=>{\n if(!disabled){\n e.stopPropagation();\n t.clear();\n }\n }}\n >清空已选项</span>\n </div>\n {\n selectedNodes.length>0?\n selectedNodes.map(item => (\n <Tag\n key={`tab-${item.id}`}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n style={{marginBottom: '5px'}}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )):\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n }\n </>\n }\n placement=\"bottomRight\"\n trigger=\"click\"\n overlayStyle={{ width: t.state.popWidth }}\n >\n <Button \n className=\"vtx-tree-count\" \n icon={<MoreOutlined />} \n size='default' \n onClick={e=>{\n e.stopPropagation();\n }}\n />\n </Popover>\n </div>\n );\n\n // 单选组件\n const SingleSelect = (\n <Input\n value={\n t.state.focusSingle?t.state.searchValue:\n (t.state.searchValue||selectedNodes.map(item => item.name).join(', '))\n }\n style={style}\n // readOnly\n disabled={disabled}\n placeholder={t.props.placeholder}\n suffix={\n (disabled || selectedNodes.length == 0||!allowClear) ? (\n <span />\n ) : (\n <CloseCircleFilled\n className={`${prefixCls}-close-icon`}\n onClick={t.clear.bind(t)}\n />\n )\n }\n onFocus={()=>{\n t.setState({focusSingle: true});\n }}\n onBlur={()=>{\n t.setState({focusSingle: false});\n }}\n onChange={e=>{\n if(t.tree){\n t.setState({searchValue: e.target.value});\n t.tree?.fuzzySearch(e.target.value.trim());\n }\n }}\n />\n );\n\n return (\n <div className={prefixCls}>\n {disabled ? (\n multiple || treeCheckable ? (\n MultiSelect\n ) : (\n SingleSelect\n )\n ) : (\n <Popover\n placement=\"bottomLeft\"\n {...popoverProps}\n content={\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\n <Ztree {...treeProps} />\n </div>\n }\n trigger=\"click\"\n onVisibleChange={v => {\n if(v && (multiple || treeCheckable) && t.state.inputRef){\n t.state.inputRef.focus({\n cursor: 'end',\n });\n }\n t.setState({ popoverVisible: v, focusMultiple: v });\n if(!v){\n t.setState({\n searchValue: ''\n });\n t.tree?.fuzzySearch('');\n }\n }}\n visible={t.state.popoverVisible}\n >\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\n </Popover>\n )}\n </div>\n );\n }\n}\n\nVtxZtreeSelect.propTypes = {\n data: PropTypes.array,\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\n treeCheckable: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n popoverProps: PropTypes.object,\n allowClear: PropTypes.bool,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","popWidth","searchValue","inputRef","keyNodesMapping","getKeyNodesMapping","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","setState","fuzzySearch","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","popoverProps","allowClear","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","ref","clientWidth","height","e","stopPropagation","clearKey","slice","clear","focusMultiple","placeholder","target","trim","width","border","padding","outline","boxShadow","marginBottom","Empty","PRESENTED_IMAGE_SIMPLE","SingleSelect","focusSingle","join","marginRight","bind","v","focus","cursor","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func","object"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\nimport Popover from 'antd/lib/popover';\nimport Input from 'antd/lib/input';\nimport Tag from 'antd/lib/tag';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport DownOutlined from '@ant-design/icons/DownOutlined';\nimport isEqual from 'lodash.isequal';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Ztree from '../vtx-ztree';\nimport { MoreOutlined } from '@ant-design/icons';\nimport Button from 'antd/lib/button';\nimport Empty from 'antd/lib/empty';\n\nexport default class VtxZtreeSelect extends React.Component {\n constructor(props) {\n super(props);\n this.tree = null;\n this.treeRefreshFlag = 1;\n this.state = {\n popoverVisible: false,\n popWidth: 0,\n searchValue: '',\n inputRef: null,\n };\n this.keyNodesMapping = {};\n this.getKeyNodesMapping();\n }\n\n // UNSAFE_componentWillReceiveProps(nextProps) {\n // if (!isEqual(this.props.data, nextProps.data)) {\n // this.getKeyNodesMapping(nextProps.data);\n // }\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\n // this.treeRefreshFlag++;\n // }\n // }\n\n // 替换componentWillReceiveProps\n componentDidUpdate(prevProps) {\n if (!isEqual(this.props.data, prevProps.data)) {\n this.getKeyNodesMapping(this.props.data);\n }\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\n this.treeRefreshFlag++;\n }\n }\n\n getKeyNodesMapping(nodes) {\n const t = this;\n t.keyNodesMapping = {};\n (function genNodes(nodes) {\n nodes.map(item => {\n const { children, ...rest } = item;\n t.keyNodesMapping[item.key] = rest;\n if (Array.isArray(children) && children.length > 0) {\n genNodes(children);\n }\n });\n })(nodes || this.props.data || []);\n }\n\n clear() {\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes(\n this.tree.getCheckedNodes().map(item => item.key),\n false,\n );\n } else {\n this.tree.cancelSelectedNodes(this.props.value);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes: [],\n keys: [],\n leafKeys: [],\n names: [],\n });\n\n if(this.tree){\n this.setState({searchValue: ''});\n this.tree?.fuzzySearch('');\n }\n }\n\n clearKey(key) {\n const keyIndex = this.props.value.indexOf(key);\n if (keyIndex != -1) {\n const keyList = [...this.props.value];\n keyList.splice(keyIndex, 1);\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes([key], false);\n } else {\n this.tree.cancelSelectedNodes([key]);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes,\n keys: keyList,\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\n names: nodes.map(item => item.name),\n });\n }\n }\n\n clearSearch() {\n this.tree && this.tree.clearSearch();\n }\n\n render() {\n const t = this;\n // 必填参数\n const { data, value } = t.props;\n // 可配参数\n const {\n prefixCls = 'vtx-ztree-select',\n treeCheckable = false,\n treeDefaultExpandAll = false,\n multiple = false,\n showSearch = true,\n searchPlaceholder,\n dropdownStyle = {},\n style = {},\n disabled = false,\n refreshFlag = null,\n expandedKeys,\n customCfg,\n checkStrictly,\n popoverProps={},\n allowClear = true\n } = t.props;\n // eslint-disable-next-line camelcase\n const value_arr = (function(val) {\n if (Array.isArray(val)) {\n return val;\n } else if (val) {\n return [val];\n } else {\n return [];\n }\n })(value);\n const selectedNodes = value_arr\n .filter(k => k in t.keyNodesMapping)\n .map(item => ({\n id: item,\n name: t.keyNodesMapping[item].name,\n }));\n // ztree配置\n const treeProps = {\n data, // 树的数据\n // showSearch: showSearch,\n showSearch: false,\n searchPlaceholder: searchPlaceholder,\n multiple,\n checkable: treeCheckable,\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys,\n refreshFlag: refreshFlag || t.treeRefreshFlag,\n customCfg,\n checkStrictly,\n ref(instance) {\n if (instance) t.tree = instance;\n },\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\n // console.log(selectedNodes,selectedKeys,selectedNames)\n if (!treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: selectedNodes,\n keys: selectedKeys,\n leafKeys: selectedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: selectedNames,\n });\n if (!multiple) {\n t.setState({\n popoverVisible: false,\n searchValue: ''\n });\n t.tree?.fuzzySearch('');\n }\n }\n },\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\n if (treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: checkedNodes,\n keys: checkedKeys,\n leafKeys: checkedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: checkedNames,\n });\n }\n },\n beforeCheck(treeNode) {\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\n },\n };\n\n // 多选组件\n const MultiSelect = (\n <div \n className={classnames(`${prefixCls}-multiple-box`)} \n style={style}\n ref={ref=>{\n if(!t.state.popWidth && ref?.clientWidth){\n t.setState({popWidth: ref?.clientWidth})\n }\n }}\n >\n <div\n className={classnames('ant-input', `${prefixCls}-multiple`, {\n [`${prefixCls}-multiple-disabled`]: disabled,\n })}\n style={{ height: '32px', ...style }}\n >\n <div className={classnames(`${prefixCls}-multiple-content`)}>\n {selectedNodes.length > 0 && (\n [\n selectedNodes.map(item => (\n <Tag\n key={item.id}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )),\n (disabled||!allowClear) ? null : (\n <CloseCircleFilled\n key={'icon'}\n className={`${prefixCls}-multiple-close-icon`}\n onClick={e => {\n e.stopPropagation();\n t.clear();\n }}\n />\n ),\n ]\n )}\n\n {\n selectedNodes.length == 0 && !t.state.focusMultiple && !t.state.searchValue &&\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\n }\n \n <Input\n ref={ref=>{\n if(ref && !t.state.inputRef) {\n t.setState({inputRef: ref})\n }\n }}\n value={t.state.searchValue}\n onChange={e=>{\n if(t.tree){\n t.setState({searchValue: e.target.value});\n t.tree?.fuzzySearch(e.target.value.trim());\n }\n }}\n onBlur={()=>{\n t.setState({focusMultiple: false});\n }}\n style={{width: 'fit-content',border: 'none',padding: 0, outline: 'none', boxShadow: 'none'}}\n />\n </div>\n </div>\n <Popover\n content={\n <>\n <div className={classnames('vtx-tree-count-head')}>\n <span>已选择:{selectedNodes.length}</span>\n <span \n className={classnames((selectedNodes.length>0&&!disabled)?'clear-count':'disabled-count')} \n onClick={e=>{\n if(!disabled){\n e.stopPropagation();\n t.clear();\n }\n }}\n >清空已选项</span>\n </div>\n {\n selectedNodes.length>0?\n selectedNodes.map(item => (\n <Tag\n key={`tab-${item.id}`}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n style={{marginBottom: '5px'}}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )):\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n }\n </>\n }\n placement=\"bottomRight\"\n trigger=\"click\"\n overlayStyle={{ width: t.state.popWidth }}\n >\n <Button \n className=\"vtx-tree-count\" \n icon={<MoreOutlined />} \n size='default' \n onClick={e=>{\n e.stopPropagation();\n }}\n />\n </Popover>\n </div>\n );\n\n // 单选组件\n const SingleSelect = (\n <Input\n value={\n t.state.focusSingle?t.state.searchValue:\n (t.state.searchValue||selectedNodes.map(item => item.name).join(', '))\n }\n style={style}\n // readOnly\n disabled={disabled}\n placeholder={t.props.placeholder}\n suffix={\n (disabled || selectedNodes.length == 0||!allowClear) ? (\n <DownOutlined className={`${prefixCls}-arrow-icon`}/>\n ) : (\n <>\n <DownOutlined className={`${prefixCls}-arrow2-icon`} style={{marginRight: '0px'}}/>\n <CloseCircleFilled\n className={`${prefixCls}-close-icon`}\n onClick={t.clear.bind(t)}\n />\n </>\n )\n }\n onFocus={()=>{\n t.setState({focusSingle: true});\n }}\n onBlur={()=>{\n t.setState({focusSingle: false});\n }}\n onChange={e=>{\n if(t.tree){\n t.setState({searchValue: e.target.value});\n t.tree?.fuzzySearch(e.target.value.trim());\n }\n }}\n />\n );\n\n return (\n <div className={prefixCls}>\n {disabled ? (\n multiple || treeCheckable ? (\n MultiSelect\n ) : (\n SingleSelect\n )\n ) : (\n <Popover\n placement=\"bottomLeft\"\n {...popoverProps}\n content={\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\n <Ztree {...treeProps} />\n </div>\n }\n trigger=\"click\"\n onVisibleChange={v => {\n if(v && (multiple || treeCheckable) && t.state.inputRef){\n t.state.inputRef.focus({\n cursor: 'end',\n });\n }\n t.setState({ popoverVisible: v, focusMultiple: v });\n if(!v){\n t.setState({\n searchValue: ''\n });\n t.tree?.fuzzySearch('');\n }\n }}\n visible={t.state.popoverVisible}\n >\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\n </Popover>\n )}\n </div>\n );\n }\n}\n\nVtxZtreeSelect.propTypes = {\n data: PropTypes.array,\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\n treeCheckable: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n popoverProps: PropTypes.object,\n allowClear: PropTypes.bool,\n};\n"],"mappings":"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"}
|
|
@@ -11,9 +11,21 @@
|
|
|
11
11
|
.vtx-ztree-select-close-icon:hover {
|
|
12
12
|
color: rgba(0, 0, 0, 0.45);
|
|
13
13
|
}
|
|
14
|
+
.vtx-ztree-select-arrow-icon,
|
|
15
|
+
.vtx-ztree-select-arrow2-icon {
|
|
16
|
+
color: rgba(0, 0, 0, 0.25);
|
|
17
|
+
-webkit-user-select: none;
|
|
18
|
+
-moz-user-select: none;
|
|
19
|
+
-ms-user-select: none;
|
|
20
|
+
user-select: none;
|
|
21
|
+
font-size: 12px;
|
|
22
|
+
}
|
|
14
23
|
.vtx-ztree-select:hover .vtx-ztree-select-close-icon {
|
|
15
24
|
display: block;
|
|
16
25
|
}
|
|
26
|
+
.vtx-ztree-select:hover .vtx-ztree-select-arrow2-icon {
|
|
27
|
+
display: none;
|
|
28
|
+
}
|
|
17
29
|
.vtx-ztree-select input {
|
|
18
30
|
overflow: hidden;
|
|
19
31
|
text-overflow: ellipsis;
|
|
@@ -13,10 +13,18 @@
|
|
|
13
13
|
color: @text-color-secondary;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
+
&-arrow-icon, &-arrow2-icon {
|
|
17
|
+
color: @disabled-color;
|
|
18
|
+
user-select: none;
|
|
19
|
+
font-size: 12px;
|
|
20
|
+
}
|
|
16
21
|
&:hover {
|
|
17
22
|
.vtx-ztree-select-close-icon {
|
|
18
23
|
display: block;
|
|
19
24
|
}
|
|
25
|
+
.vtx-ztree-select-arrow2-icon {
|
|
26
|
+
display: none;
|
|
27
|
+
}
|
|
20
28
|
}
|
|
21
29
|
input {
|
|
22
30
|
overflow: hidden;
|