@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.
@@ -10,6 +10,9 @@
10
10
  .vtx-combogrid-btns button + button {
11
11
  margin-left: 4px;
12
12
  }
13
+ .vtx-combogrid-btns .ant-btn-default {
14
+ color: rgba(0, 0, 0, 0.65);
15
+ }
13
16
  .vtx-combogrid-main {
14
17
  height: 400px;
15
18
  }
@@ -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
- &-main {
17
- height: 400px;
18
- }
19
-
20
- &-dropdown {
21
- padding-top: 0;
22
- .ant-popover-arrow {
23
- display: none;
24
- }
25
- .ant-pagination.mini .ant-pagination-item {
26
- line-height: 24px;
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":"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"}
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.85);
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);
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: ':';
@@ -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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"}
@@ -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":";;;;;;;;;AAQA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASA,SAAT,CAAmBC,KAAnB,EAA0B;EACtB;EACA,oBAkBIA,KAlBJ,CACIC,MADJ;EAAA,IACIA,MADJ,8BACa,YADb;EAAA,oBAkBID,KAlBJ,CAEIE,MAFJ;EAAA,IAEIA,MAFJ,8BAEa;IAAEC,EAAE,EAAE,CAAN;IAASC,EAAE,EAAE,CAAb;IAAgBC,EAAE,EAAE;EAApB,CAFb;EAAA,wBAkBIL,KAlBJ,CAGIM,UAHJ;EAAA,IAGIA,UAHJ,kCAGiB,EAHjB;EAAA,oBAkBIN,KAlBJ,CAIIO,MAJJ;EAAA,IAIIA,MAJJ,8BAIa,EAJb;EAAA,wBAkBIP,KAlBJ,CAKIQ,UALJ;EAAA,IAKIA,UALJ,kCAKiB,EALjB;EAAA,IAMIC,aANJ,GAkBIT,KAlBJ,CAMIS,aANJ;EAAA,4BAkBIT,KAlBJ,CAOIU,eAPJ;EAAA,IAOIA,eAPJ,sCAOsB,IAPtB;EAAA,2BAkBIV,KAlBJ,CAQIW,aARJ;EAAA,IAQIA,aARJ,qCAQoB,IARpB;EAAA,0BAkBIX,KAlBJ,CASIY,YATJ;EAAA,IASIA,YATJ,oCASmB,IATnB;EAAA,yBAkBIZ,KAlBJ,CAUIa,WAVJ;EAAA,IAUIA,WAVJ,mCAUkB,IAVlB;EAAA,uBAkBIb,KAlBJ,CAWIc,SAXJ;EAAA,IAWIA,SAXJ,iCAWgB,IAXhB;EAAA,IAYIC,SAZJ,GAkBIf,KAlBJ,CAYIe,SAZJ;EAAA,IAaIC,OAbJ,GAkBIhB,KAlBJ,CAaIgB,OAbJ;EAAA,IAcIC,aAdJ,GAkBIjB,KAlBJ,CAcIiB,aAdJ;EAAA,qBAkBIjB,KAlBJ,CAeIkB,OAfJ;EAAA,IAeIA,OAfJ,+BAec,KAfd;EAAA,IAgBIC,YAhBJ,GAkBInB,KAlBJ,CAgBImB,YAhBJ;EAAA,4BAkBInB,KAlBJ,CAiBIoB,cAjBJ;EAAA,IAiBIA,cAjBJ,sCAiBqB,EAjBrB;EAoBA,IAAMC,YAAY,GAAG,IAAAC,aAAA,GAArB;EACA,IAAMC,IAAI,GAAG,IAAAC,sBAAA,EAAWH,YAAX,CAAb;EACA,IAAMI,UAAU,GAAGvB,MAAM,CAACqB,IAAD,CAAzB;;EAEA,kBAAuB,IAAAG,iBAAA,EAAWC,qBAAX,CAAvB;EAAA,IAAQC,UAAR,eAAQA,UAAR;;EAEA,IAAMC,SAAS,GAAG;IACdC,MAAM,EAAE7B,MAAM,KAAK,YAAX,GAA0B,EAA1B,GAA+B;EADzB,CAAlB,CA5BsB,CA+BtB;;EACA,gBAAsC,IAAA8B,eAAA,EAAS,CAAT,CAAtC;EAAA;EAAA,IAAOC,WAAP;EAAA,IAAoBC,cAApB;;EACA,mBAA0B,IAAAC,wBAAA,EAAYL,SAAZ,CAA1B;EAAA;EAAA,IAAOM,KAAP;EAAA,IAAcC,QAAd;;EACA,IAAQN,MAAR,GAA6BK,KAA7B,CAAQL,MAAR;EAAA,IAAgBO,QAAhB,GAA6BF,KAA7B,CAAgBE,QAAhB;EACA,IAAMC,GAAG,GAAG,IAAAhB,aAAA,GAAZ;EAEA,IAAMiB,aAAa,GAAGjC,UAAU,CAACkC,MAAX,CAAkB,UAAAC,IAAI;IAAA,OAAI,CAAC,CAACA,IAAN;EAAA,CAAtB,CAAtB;EACA,IAAMC,SAAS,GAAGnC,MAAM,CAACiC,MAAP,CAAc,UAAAC,IAAI;IAAA,OAAI,CAAC,CAACA,IAAN;EAAA,CAAlB,CAAlB;EACA,IAAME,WAAW,GAAGC,KAAK,CAACC,OAAN,CAAc7C,KAAd,aAAcA,KAAd,uBAAcA,KAAK,CAAE8C,QAArB,IACd9C,KADc,aACdA,KADc,uBACdA,KAAK,CAAE8C,QAAP,CAAgBN,MAAhB,CAAuB,UAAAC,IAAI;IAAA,OAAI,CAAC,CAACA,IAAN;EAAA,CAA3B,CADc,GAEdzC,KAFc,aAEdA,KAFc,uBAEdA,KAAK,CAAE8C,QAFb;EAIA,IAAMC,SAAS,GAAG9C,MAAM,KAAK,YAAX,GAA0B,EAA1B,GAA+B,EAAjD;EAEA,IAAA+C,sBAAA,EAAgB,YAAM;IAClB,IAAIhB,WAAW,GAAG,CAAlB;IACAO,aAAa,CAACU,GAAd,CAAkB,UAAAR,IAAI,EAAI;MACtBT,WAAW,IAAIS,IAAf;IACH,CAFD;IAGA,IAAMS,OAAO,GAAG,EAAhB;IACAjB,cAAc,CAACD,WAAD,CAAd;;IAEA,IAAId,OAAJ,EAAa;MACTkB,QAAQ,CACJJ,WAAW,GAAGP,UAAd,GACM;QACEK,MAAM,EAAEQ,GAAG,CAACa,OAAJ,CAAYC;MADtB,CADN,GAIMvB,SALF,CAAR;MAOAD,UAAU,IAAIA,UAAU,CAACU,GAAG,CAACa,OAAJ,CAAYC,YAAZ,GAA2BF,OAA5B,CAAxB;IACH;EACJ,CAlBD,EAkBG,CAAC5C,UAAD,EAAamB,UAAb,CAlBH;;EAoBA,IAAM4B,UAAU,GAAG,SAAbA,UAAa,GAAM;IACrB,IAAMH,OAAO,GAAG,EAAhB;;IACA,IAAIpB,MAAM,GAAGiB,SAAb,EAAwB;MACpBX,QAAQ,CAACP,SAAD,CAAR;;MACA,IAAIV,YAAY,IAAI,OAAOA,YAAP,KAAwB,UAA5C,EAAwD;QACpDA,YAAY,CAAC4B,SAAS,GAAGG,OAAb,CAAZ;MACH;;MACDtB,UAAU,IAAIA,UAAU,CAACmB,SAAS,GAAGG,OAAb,CAAxB;IACH,CAND,MAMO;MACHd,QAAQ,CAAC;QACLN,MAAM,EAAEQ,GAAG,CAACa,OAAJ,CAAYC;MADf,CAAD,CAAR;;MAGA,IAAIjC,YAAY,IAAI,OAAOA,YAAP,KAAwB,UAA5C,EAAwD;QACpDA,YAAY,CAACmB,GAAG,CAACa,OAAJ,CAAYC,YAAZ,GAA2BF,OAA5B,CAAZ;MACH;;MACDtB,UAAU,IAAIA,UAAU,CAACU,GAAG,CAACa,OAAJ,CAAYC,YAAZ,GAA2BF,OAA5B,CAAxB;IACH;EACJ,CAjBD;;EAmBA,IAAMI,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,IAAI,EAAI;IAC5B,IAAIC,KAAK,GAAGD,IAAZ;IACA,IAAI,CAACC,KAAL,EAAY,OAAO,IAAP;;IACZ,IAAI,OAAOD,IAAP,IAAe,UAAnB,EAA+B;MAC3BC,KAAK,GAAGD,IAAI,EAAZ;IACH;;IACD,IAAI,CAACC,KAAK,CAACC,MAAX,EAAmB;MACf,OAAOC,MAAM,CAACF,KAAD,EAAQ,CAAR,CAAb;IACH,CAFD,MAEO;MACH,IAAIG,MAAM,GAAG,EAAb;MACAH,KAAK,CAACI,OAAN,CAAc,UAAAnB,IAAI,EAAI;QAClB,IAAI,OAAOA,IAAP,IAAe,UAAnB,EAA+B;UAC3B,IAAIoB,GAAG,GAAGpB,IAAI,EAAd;;UACA,IAAIG,KAAK,CAACC,OAAN,CAAcgB,GAAd,CAAJ,EAAwB;YACpBF,MAAM,CAACG,IAAP,OAAAH,MAAM,qBAASE,GAAT,EAAN;UACH;;UACDF,MAAM,CAACG,IAAP,CAAYD,GAAZ;UACA;QACH;;QACD,IAAIjB,KAAK,CAACC,OAAN,CAAcJ,IAAd,CAAJ,EAAyB;UACrBkB,MAAM,CAACG,IAAP,OAAAH,MAAM,qBAASlB,IAAT,EAAN;UACA;QACH;;QACDkB,MAAM,CAACG,IAAP,CAAYrB,IAAZ;MACH,CAdD;MAeA,OAAOkB,MAAM,CAACV,GAAP,CAAW,UAACR,IAAD,EAAOsB,KAAP,EAAiB;QAC/B,OAAOL,MAAM,CAACjB,IAAD,EAAOsB,KAAP,CAAb;MACH,CAFM,CAAP;IAGH;EACJ,CA7BD;;EA+BA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,CAAD,EAAIC,CAAJ;IAAA,oBACb,gCAAC,kBAAD;MAAQ,MAAM,EAAE,CAAhB;MAAmB,IAAI,EAAC;IAAxB,gBACI;MAAK,SAAS,EAAC,oBAAf;MAAoC,KAAK,EAAE;QAAEC,SAAS,EAAE,OAAb;QAAsBC,KAAK,EAAE5D;MAA7B;IAA3C,gBACI,gCAAC,mBAAD;MAAS,KAAK,EAAEkC,SAAS,CAACwB,CAAD,CAAzB;MAA8B,SAAS,EAAC;IAAxC,GACKxB,SAAS,CAACwB,CAAD,CADd,CADJ,CADJ,eAMI;MAAK,SAAS,EAAC,oBAAf;MAAoC,KAAK,EAAE;QAAEE,KAAK,wBAAiB5D,UAAjB;MAAP;IAA3C,gBACI;MAAM,SAAS,EAAC;IAAhB,GAAmCyD,CAAnC,CADJ,CANJ,CADa;EAAA,CAAjB;;EAaA,IAAMI,QAAQ,GAAG,SAAXA,QAAW,CAACJ,CAAD,EAAIC,CAAJ;IAAA,oBACb,gCAAC,kBAAD;MAAQ,MAAM,EAAE,CAAhB;MAAmB,IAAI,EAAC,KAAxB;MAA8B,SAAS,EAAC;IAAxC,gBACI;MAAK,SAAS,EAAC;IAAf,gBACI,gCAAC,mBAAD;MAAS,KAAK,EAAExB,SAAS,CAACwB,CAAD,CAAzB;MAA8B,SAAS,EAAC;IAAxC,GACKxB,SAAS,CAACwB,CAAD,CADd,CADJ,CADJ,eAMI;MAAK,SAAS,EAAC;IAAf,gBACI;MAAM,SAAS,EAAC;IAAhB,GAAmCD,CAAnC,CADJ,CANJ,CADa;EAAA,CAAjB;;EAaA,IAAIP,MAAM,GAAG,SAATA,MAAS,CAACO,CAAD,EAAIC,CAAJ,EAAU;IACnB,IAAII,GAAG,GAAG/B,aAAa,CAAC2B,CAAD,CAAvB;IACA,oBACI,gCAAC,kBAAD;MAAQ,GAAG,EAAEA,CAAb;MAAgB,IAAI,EAAG,KAAKzC,UAAN,GAAoB6C,GAA1C;MAA+C,SAAS,EAAC;IAAzD,GACKrE,MAAM,KAAK,YAAX,IAA2B+D,QAAQ,CAACC,CAAD,EAAIC,CAAJ,CADxC,EAEKjE,MAAM,KAAK,UAAX,IAAyBoE,QAAQ,CAACJ,CAAD,EAAIC,CAAJ,CAFtC,CADJ;EAMH,CARD;;EAUA,oBACI;IACI,SAAS,EAAE,IAAAK,sBAAA,EAAW,YAAX,EAAyB9D,aAAzB,CADf;IAEI,KAAK;MAAIqB,MAAM,YAAKA,MAAM,GAAG,EAAd;IAAV,GAAmCO,QAAnC,CAFT;IAGI,GAAG,EAAEhB;EAHT,gBAKI;IAAK,SAAS,EAAC,oBAAf;IAAoC,GAAG,EAAEiB;EAAzC,gBACI,gCAAC,kBAAD;IAAQ,MAAM,EAAE,EAAhB;IAAoB,IAAI,EAAC;EAAzB,GACKgB,eAAe,CAACX,WAAD,CADpB,CADJ,CALJ,eAWI;IACI,SAAS,EAAC,oBADd;IAEI,KAAK,EAAE;MAAE6B,UAAU,EAAEvE,MAAM,KAAK,UAAX,GAAwB,EAAxB,GAA6B;IAA3C;EAFX,GAIKgB,aAAa,gBACV,gCAAC,kBAAD;IAAQ,MAAM,EAAE,CAAhB;IAAmB,IAAI,EAAC;EAAxB,GACKA,aADL,CADU,gBAKV,gCAAC,kBAAD;IAAQ,MAAM,EAAE,CAAhB;IAAmB,IAAI,EAAC;EAAxB,GACKP,eAAe,iBACZ,gCAAC,kBAAD;IAAQ,IAAI,EAAE,CAAd;IAAiB,MAAM,EAAE,EAAEsB,WAAW,GAAGP,UAAd,IAA4Bb,YAA9B,IAA8C,CAA9C,GAAkD;EAA3E,gBACI;IAAM,aAAW;EAAjB,gBACI,gCAAC,kBAAD;IACI,KAAK,EAAE;MAAEwD,KAAK,EAAE;IAAT,CADX;IAEI,IAAI,EAAC,SAFT;IAGI,OAAO,EAAErD;EAHb,GAKKF,WALL,CADJ,CADJ,CAFR,EAcKF,aAAa,iBACV,gCAAC,kBAAD;IAAQ,IAAI,EAAE;EAAd,gBACI;IAAM,aAAW,IAAjB;IAAuB,SAAS,EAAC;EAAjC,gBACI,gCAAC,kBAAD;IAAQ,KAAK,EAAE;MAAEyD,KAAK,EAAE;IAAT,CAAf;IAAkC,OAAO,EAAEpD;EAA3C,GACKF,SADL,CADJ,CADJ,CAfR,EAuBKkB,WAAW,GAAGP,UAAd,IAA4Bb,YAA5B,iBACG,gCAAC,kBAAD;IAAQ,IAAI,EAAE;EAAd,gBACI;IACI,aAAW,IADf;IAEI,OAAO,EAAE;MAAA,OAAMyC,UAAU,EAAhB;IAAA,CAFb;IAGI,SAAS,EAAC;EAHd,GAKKvB,MAAM,GAAGiB,SAAT,gBACG,kEACK,CAAA3B,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAEqD,YAAhB,KAAgC,IADrC,eAEI,gCAAC,sBAAD,OAFJ,CADH,gBAMG,kEACK,CAAArD,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAEsD,UAAhB,KAA8B,IADnC,eAEI,gCAAC,wBAAD,OAFJ,CAXR,CADJ,CAxBR,CATR,CAXJ,CADJ;AAsEH;;AAED3E,SAAS,CAAC4E,SAAV,GAAsB;EAClB1E,MAAM,EAAE2E,qBAAA,CAAUC,KAAV,CAAgB,CAAC,UAAD,EAAa,YAAb,CAAhB,CADU;EAElB3E,MAAM,EAAE0E,qBAAA,CAAUE,QAAV,CAAmBF,qBAAA,CAAUG,MAA7B,CAFU;EAGlBzE,UAAU,EAAEsE,qBAAA,CAAUI,KAHJ;EAIlBzE,MAAM,EAAEqE,qBAAA,CAAUI,KAJA;EAKlBxE,UAAU,EAAEoE,qBAAA,CAAUG,MALJ;EAMlBtE,aAAa,EAAEmE,qBAAA,CAAUK,MANP;EAOlBnC,QAAQ,EAAE8B,qBAAA,CAAUM,IAPF;EAQlBxE,eAAe,EAAEkE,qBAAA,CAAUO,IART;EASlBxE,aAAa,EAAEiE,qBAAA,CAAUO,IATP;EAUlBvE,YAAY,EAAEgE,qBAAA,CAAUO,IAVN;EAWlBpE,SAAS,EAAE6D,qBAAA,CAAUQ,IAXH;EAYlBvE,WAAW,EAAE+D,qBAAA,CAAUK,MAZL;EAalBjE,OAAO,EAAE4D,qBAAA,CAAUQ,IAbD;EAclBtE,SAAS,EAAE8D,qBAAA,CAAUK,MAdH;EAelBhE,aAAa,EAAE2D,qBAAA,CAAUM,IAfP;EAgBlBhE,OAAO,EAAE0D,qBAAA,CAAUO,IAhBD;EAiBlBhE,YAAY,EAAEyD,qBAAA,CAAUQ,IAjBN;EAkBlBhE,cAAc,EAAEwD,qBAAA,CAAUS;AAlBR,CAAtB;eAoBetF,S"}
@@ -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
- .vtx-search-more {
74
- height: 32px;
75
- color: @primary-color;
76
- line-height: 32px;
77
- cursor: pointer;
78
- }
79
- }
80
-
81
- .vtx-row {
82
- overflow: hidden;
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("span", null) : /*#__PURE__*/_react["default"].createElement(_CloseCircleFilled["default"], {
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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/components",
3
- "version": "3.1.56",
3
+ "version": "3.1.58",
4
4
  "description": "React components for Vortex",
5
5
  "keywords": [
6
6
  "react",