@vtx/components 3.1.49 → 3.1.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +8 -0
- package/lib/index.js.map +1 -1
- package/lib/vtx-datagrid/index.js +12 -9
- package/lib/vtx-datagrid/index.js.map +1 -1
- package/lib/vtx-datagrid/renderColumnButtons.js +2 -1
- package/lib/vtx-datagrid/renderColumnButtons.js.map +1 -1
- package/lib/vtx-export/index.js +8 -5
- package/lib/vtx-export/index.js.map +1 -1
- package/lib/vtx-export-async/History.js +232 -0
- package/lib/vtx-export-async/History.js.map +1 -0
- package/lib/vtx-export-async/index.js +362 -0
- package/lib/vtx-export-async/index.js.map +1 -0
- package/lib/vtx-export-async/style/css.js +4 -0
- package/lib/vtx-export-async/style/css.js.map +1 -0
- package/lib/vtx-export-async/style/index.css +6 -0
- package/lib/vtx-export-async/style/index.js +4 -0
- package/lib/vtx-export-async/style/index.js.map +1 -0
- package/lib/vtx-export-async/style/index.less +4 -0
- package/lib/vtx-export-async/util.js +63 -0
- package/lib/vtx-export-async/util.js.map +1 -0
- package/lib/vtx-import2/Content.js +4 -3
- package/lib/vtx-import2/Content.js.map +1 -1
- package/lib/vtx-import2/ImportResult.js +6 -5
- package/lib/vtx-import2/ImportResult.js.map +1 -1
- package/lib/vtx-import2/index.js +38 -9
- package/lib/vtx-import2/index.js.map +1 -1
- package/lib/vtx-search/index.js +6 -3
- package/lib/vtx-search/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -45,6 +45,12 @@ Object.defineProperty(exports, "VtxExport", {
|
|
|
45
45
|
return _vtxExport["default"];
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
|
+
Object.defineProperty(exports, "VtxExportAsync", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function get() {
|
|
51
|
+
return _vtxExportAsync["default"];
|
|
52
|
+
}
|
|
53
|
+
});
|
|
48
54
|
Object.defineProperty(exports, "VtxFormLayout", {
|
|
49
55
|
enumerable: true,
|
|
50
56
|
get: function get() {
|
|
@@ -172,6 +178,8 @@ var _vtxWangEditor = _interopRequireDefault(require("./vtx-wang-editor"));
|
|
|
172
178
|
|
|
173
179
|
var _vtxExport = _interopRequireDefault(require("./vtx-export"));
|
|
174
180
|
|
|
181
|
+
var _vtxExportAsync = _interopRequireDefault(require("./vtx-export-async"));
|
|
182
|
+
|
|
175
183
|
var _vtxImport = _interopRequireDefault(require("./vtx-import"));
|
|
176
184
|
|
|
177
185
|
var _vtxImport2 = _interopRequireDefault(require("./vtx-import2"));
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["index.js"],"sourcesContent":["// layout\r\nexport { default as VtxFormLayout } from './vtx-form-layout';\r\nexport { default as VtxPageLayout } from './vtx-page-layout';\r\nexport { default as VtxSearch } from './vtx-search';\r\n\r\n// data entry\r\nexport { default as VtxColorPicker } from './vtx-color-picker';\r\nexport { default as VtxCombogrid } from './vtx-combogrid';\r\nexport { default as VtxDatePicker } from './vtx-date-picker';\r\nexport { default as VtxEditor } from './vtx-editor';\r\nexport { default as VtxWangEditor } from './vtx-wang-editor';\r\n\r\nexport { default as VtxExport } from './vtx-export';\r\nexport { default as VtxImport } from './vtx-import';\r\nexport { default as VtxImport2 } from './vtx-import2';\r\nexport { default as VtxSearchMapInput } from './vtx-search-map-input';\r\nexport { default as VtxSelect } from './vtx-select';\r\nexport { default as VtxInput } from './vtx-input';\r\nexport { default as VtxTimePicker } from './vtx-time-picker';\r\nexport { default as VtxUpload } from './vtx-upload';\r\nexport { default as VtxZtreeSelect } from './vtx-ztree-select';\r\n\r\n// data display\r\nexport { default as VtxDatagrid } from './vtx-datagrid';\r\nexport { default as VtxEllipsisText } from './vtx-ellipsis-text';\r\nexport { default as VtxImage } from './vtx-image';\r\nexport { default as VtxRpsFrame } from './vtx-rps-frame';\r\nexport { default as VtxStatisticsColumn } from './vtx-statistics-column';\r\nexport { default as VtxZtree } from './vtx-ztree';\r\nexport { default as VtxSplitPane } from './vtx-split-pane';\r\n\r\n// feedback\r\nexport { default as VtxModal } from './vtx-modal';\r\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["index.js"],"sourcesContent":["// layout\r\nexport { default as VtxFormLayout } from './vtx-form-layout';\r\nexport { default as VtxPageLayout } from './vtx-page-layout';\r\nexport { default as VtxSearch } from './vtx-search';\r\n\r\n// data entry\r\nexport { default as VtxColorPicker } from './vtx-color-picker';\r\nexport { default as VtxCombogrid } from './vtx-combogrid';\r\nexport { default as VtxDatePicker } from './vtx-date-picker';\r\nexport { default as VtxEditor } from './vtx-editor';\r\nexport { default as VtxWangEditor } from './vtx-wang-editor';\r\n\r\nexport { default as VtxExport } from './vtx-export';\r\nexport { default as VtxExportAsync } from './vtx-export-async';\r\nexport { default as VtxImport } from './vtx-import';\r\nexport { default as VtxImport2 } from './vtx-import2';\r\nexport { default as VtxSearchMapInput } from './vtx-search-map-input';\r\nexport { default as VtxSelect } from './vtx-select';\r\nexport { default as VtxInput } from './vtx-input';\r\nexport { default as VtxTimePicker } from './vtx-time-picker';\r\nexport { default as VtxUpload } from './vtx-upload';\r\nexport { default as VtxZtreeSelect } from './vtx-ztree-select';\r\n\r\n// data display\r\nexport { default as VtxDatagrid } from './vtx-datagrid';\r\nexport { default as VtxEllipsisText } from './vtx-ellipsis-text';\r\nexport { default as VtxImage } from './vtx-image';\r\nexport { default as VtxRpsFrame } from './vtx-rps-frame';\r\nexport { default as VtxStatisticsColumn } from './vtx-statistics-column';\r\nexport { default as VtxZtree } from './vtx-ztree';\r\nexport { default as VtxSplitPane } from './vtx-split-pane';\r\n\r\n// feedback\r\nexport { default as VtxModal } from './vtx-modal';\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA"}
|
|
@@ -41,7 +41,7 @@ var _useSet3 = _interopRequireDefault(require("../_util/useSet"));
|
|
|
41
41
|
|
|
42
42
|
var _isFunction = _interopRequireDefault(require("../_util/isFunction"));
|
|
43
43
|
|
|
44
|
-
var _excluded = ["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"];
|
|
44
|
+
var _excluded = ["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", "customEnumText"];
|
|
45
45
|
|
|
46
46
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
47
47
|
|
|
@@ -153,6 +153,8 @@ function VtxDatagrid(props) {
|
|
|
153
153
|
searchCollapseEvent$ = props.searchCollapseEvent$,
|
|
154
154
|
disabledColumnKeys = props.disabledColumnKeys,
|
|
155
155
|
onColumnsSave = props.onColumnsSave,
|
|
156
|
+
_props$customEnumText = props.customEnumText,
|
|
157
|
+
customEnumText = _props$customEnumText === void 0 ? {} : _props$customEnumText,
|
|
156
158
|
rest = _objectWithoutProperties(props, _excluded);
|
|
157
159
|
|
|
158
160
|
(0, _react.useEffect)(function () {
|
|
@@ -282,7 +284,7 @@ function VtxDatagrid(props) {
|
|
|
282
284
|
onRefresh && onRefresh();
|
|
283
285
|
}
|
|
284
286
|
}, /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
285
|
-
title: "
|
|
287
|
+
title: (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.refreshText) || "刷新"
|
|
286
288
|
}, /*#__PURE__*/_react["default"].createElement(_RedoOutlined["default"], null))), !hideColumnHeight && /*#__PURE__*/_react["default"].createElement("div", {
|
|
287
289
|
className: "".concat(prefixCls, "-toolbar-setting-item")
|
|
288
290
|
}, /*#__PURE__*/_react["default"].createElement(_dropdown["default"], {
|
|
@@ -296,14 +298,14 @@ function VtxDatagrid(props) {
|
|
|
296
298
|
selectedKeys: [size]
|
|
297
299
|
}, /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
298
300
|
key: "default"
|
|
299
|
-
}, "
|
|
301
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.densityDefaultText) || "默认"), /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
300
302
|
key: "middle"
|
|
301
|
-
}, "
|
|
303
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.densityMiddleText) || "中等"), /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
302
304
|
key: "small"
|
|
303
|
-
}, "
|
|
305
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.densitySmallText) || "紧凑")),
|
|
304
306
|
trigger: ['click']
|
|
305
307
|
}, /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
306
|
-
title: "
|
|
308
|
+
title: (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.columnDensityText) || "列密度"
|
|
307
309
|
}, /*#__PURE__*/_react["default"].createElement(_ColumnHeightOutlined["default"], null)))), !hideColumnSetting && /*#__PURE__*/_react["default"].createElement("div", {
|
|
308
310
|
className: "".concat(prefixCls, "-toolbar-setting-item")
|
|
309
311
|
}, /*#__PURE__*/_react["default"].createElement(_ColumnSetting["default"], {
|
|
@@ -317,7 +319,7 @@ function VtxDatagrid(props) {
|
|
|
317
319
|
disabledColumnKeys: disabledColumnKeys,
|
|
318
320
|
onColumnsSave: onColumnsSave
|
|
319
321
|
}, /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
320
|
-
title: "
|
|
322
|
+
title: (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.columnSettingText) || "列设置"
|
|
321
323
|
}, /*#__PURE__*/_react["default"].createElement(_SettingOutlined["default"], null)))))));
|
|
322
324
|
} // 分页
|
|
323
325
|
|
|
@@ -351,7 +353,7 @@ function VtxDatagrid(props) {
|
|
|
351
353
|
|
|
352
354
|
return _objectSpread(_objectSpread({}, newColumn), {}, {
|
|
353
355
|
render: (0, _isFunction["default"])(column.renderButtons) ? function (text, record, index) {
|
|
354
|
-
return (0, _renderColumnButtons["default"])(column.renderButtons, column.renderButtonsVisibleNum, text, record, index);
|
|
356
|
+
return (0, _renderColumnButtons["default"])(column.renderButtons, column.renderButtonsVisibleNum, text, record, index, customEnumText);
|
|
355
357
|
} : 'render' in column ? column.render : function (text) {
|
|
356
358
|
return ['', null, undefined].includes(text) ? '-' : text;
|
|
357
359
|
}
|
|
@@ -480,6 +482,7 @@ VtxDatagrid.propTypes = {
|
|
|
480
482
|
style: _propTypes["default"].object,
|
|
481
483
|
disabledColumnKeys: _propTypes["default"].array,
|
|
482
484
|
onColumnsSave: _propTypes["default"].func,
|
|
483
|
-
components: _propTypes["default"].object
|
|
485
|
+
components: _propTypes["default"].object,
|
|
486
|
+
customEnumText: _propTypes["default"].object
|
|
484
487
|
};
|
|
485
488
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["isMac","navigator","userAgent","indexOf","VtxDatagrid","props","useSet","visibleColumns","checkedColumnKeys","columnSettingOptions","datagridId","Date","getTime","scrollY","size","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","rest","useEffect","window","addEventListener","calculateHeight","removeEventListener","useLayoutEffect","dataSource","length","rowSelection","selectedRowKeys","join","useSubscription","timer","setTimeout","clearTimeout","parseColumns","columns","map","col","key","dataIndex","type","columnKeys","filter","item","includes","hasAlert","current","bodyHeight","clientHeight","divs","getElementsByTagName","bodyDiv","Array","prototype","call","dom","minHeight","handleChangeColumns","keys","toolbarRender","classnames","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\n\r\nconst isMac = navigator.userAgent.indexOf('Mac OS') !== -1;\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 });\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 ...rest\r\n } = props;\r\n\r\n useEffect(() => {\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 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=\"刷新\">\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\">默认</Menu.Item>\r\n <Menu.Item key=\"middle\">中等</Menu.Item>\r\n <Menu.Item key=\"small\">紧凑</Menu.Item>\r\n </Menu>\r\n }\r\n trigger={['click']}\r\n >\r\n <Tooltip title=\"列密度\">\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 >\r\n <Tooltip title=\"列设置\">\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 );\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};\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","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","customEnumText","rest","useEffect","window","addEventListener","calculateHeight","removeEventListener","useLayoutEffect","dataSource","length","rowSelection","selectedRowKeys","join","useSubscription","timer","setTimeout","clearTimeout","parseColumns","columns","map","col","key","dataIndex","type","columnKeys","filter","item","includes","hasAlert","current","bodyHeight","clientHeight","divs","getElementsByTagName","bodyDiv","Array","prototype","call","dom","minHeight","handleChangeColumns","keys","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\n\r\nconst isMac = navigator.userAgent.indexOf('Mac OS') !== -1;\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 });\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 customEnumText = {},\r\n ...rest\r\n } = props;\r\n\r\n useEffect(() => {\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 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 >\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};\r\n"],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ var renderColumnButtons = function renderColumnButtons(renderButtons) {
|
|
|
46
46
|
var text = arguments.length > 2 ? arguments[2] : undefined;
|
|
47
47
|
var record = arguments.length > 3 ? arguments[3] : undefined;
|
|
48
48
|
var index = arguments.length > 4 ? arguments[4] : undefined;
|
|
49
|
+
var customEnumText = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};
|
|
49
50
|
var actions = (_renderButtons = renderButtons(text, record, index)) === null || _renderButtons === void 0 ? void 0 : _renderButtons.filter(function (item) {
|
|
50
51
|
var _item$visible;
|
|
51
52
|
|
|
@@ -77,7 +78,7 @@ var renderColumnButtons = function renderColumnButtons(renderButtons) {
|
|
|
77
78
|
key: i
|
|
78
79
|
}, item.name);
|
|
79
80
|
}))
|
|
80
|
-
}, /*#__PURE__*/_react["default"].createElement("a", null, "
|
|
81
|
+
}, /*#__PURE__*/_react["default"].createElement("a", null, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.actionMoreText) || "更多", /*#__PURE__*/_react["default"].createElement(_DownOutlined["default"], null)));
|
|
81
82
|
}
|
|
82
83
|
|
|
83
84
|
return [].concat(_toConsumableArray(actions.slice(0, realVisible).map(function (item, i) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderColumnButtons.js","names":["renderColumnButtons","renderButtons","visible","text","record","index","actions","filter","item","Array","isArray","actionsLen","length","moreRender","realVisible","moreActions","slice","e","key","onClick","map","i","name","popconfirm","btnNode","undefined","confirm","rest"],"sources":["vtx-datagrid/renderColumnButtons.jsx"],"sourcesContent":["import React from 'react';\nimport Popconfirm from 'antd/lib/popconfirm';\nimport Dropdown from 'antd/lib/dropdown';\nimport Menu from 'antd/lib/menu';\nimport Divider from 'antd/lib/divider';\nimport DownOutlined from '@ant-design/icons/DownOutlined';\n\nconst renderColumnButtons = (renderButtons, visible = 4, text, record, index) => {\n const actions = renderButtons(text, record, index)?.filter(\n item => item && (item.visible ?? true),\n );\n if (!Array.isArray(actions)) {\n return;\n }\n const actionsLen = actions.length;\n // 更多\n let moreRender;\n let realVisible = visible;\n if (actionsLen > visible) {\n realVisible = realVisible - 1;\n const moreActions = actions.slice(realVisible);\n /* eslint-disable */\n moreRender = (\n <Dropdown\n key=\"more\"\n overlay={\n <Menu onClick={e => moreActions[e.key].onClick(record, index)}>\n {moreActions.map((item, i) => (\n <Menu.Item key={i}>{item.name}</Menu.Item>\n ))}\n </Menu>\n }\n >\n <a>\n 更多\n <DownOutlined />\n </a>\n </Dropdown>\n );\n }\n\n return [\n ...actions.slice(0, realVisible).map((item, i) => {\n const { name, onClick, popconfirm } = item;\n let btnNode = (\n <a\n key={name}\n onClick={onClick && !popconfirm ? () => onClick(record, index) : undefined}\n >\n {name}\n </a>\n );\n\n if (popconfirm) {\n const { confirm, ...rest } = popconfirm;\n btnNode = (\n <Popconfirm\n {...rest}\n onConfirm={confirm ? () => confirm(record, index) : undefined}\n key={name}\n >\n {btnNode}\n </Popconfirm>\n );\n }\n\n return [btnNode, i != actionsLen - 1 && <Divider key={i} type=\"vertical\" />];\n }),\n moreRender,\n ];\n};\n\nexport default renderColumnButtons;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,aAAD,
|
|
1
|
+
{"version":3,"file":"renderColumnButtons.js","names":["renderColumnButtons","renderButtons","visible","text","record","index","customEnumText","actions","filter","item","Array","isArray","actionsLen","length","moreRender","realVisible","moreActions","slice","e","key","onClick","map","i","name","actionMoreText","popconfirm","btnNode","undefined","confirm","rest"],"sources":["vtx-datagrid/renderColumnButtons.jsx"],"sourcesContent":["import React from 'react';\nimport Popconfirm from 'antd/lib/popconfirm';\nimport Dropdown from 'antd/lib/dropdown';\nimport Menu from 'antd/lib/menu';\nimport Divider from 'antd/lib/divider';\nimport DownOutlined from '@ant-design/icons/DownOutlined';\n\nconst renderColumnButtons = (renderButtons, visible = 4, text, record, index, customEnumText={}) => {\n const actions = renderButtons(text, record, index)?.filter(\n item => item && (item.visible ?? true),\n );\n if (!Array.isArray(actions)) {\n return;\n }\n const actionsLen = actions.length;\n // 更多\n let moreRender;\n let realVisible = visible;\n if (actionsLen > visible) {\n realVisible = realVisible - 1;\n const moreActions = actions.slice(realVisible);\n /* eslint-disable */\n moreRender = (\n <Dropdown\n key=\"more\"\n overlay={\n <Menu onClick={e => moreActions[e.key].onClick(record, index)}>\n {moreActions.map((item, i) => (\n <Menu.Item key={i}>{item.name}</Menu.Item>\n ))}\n </Menu>\n }\n >\n <a>\n {customEnumText?.actionMoreText || \"更多\"}\n <DownOutlined />\n </a>\n </Dropdown>\n );\n }\n\n return [\n ...actions.slice(0, realVisible).map((item, i) => {\n const { name, onClick, popconfirm } = item;\n let btnNode = (\n <a\n key={name}\n onClick={onClick && !popconfirm ? () => onClick(record, index) : undefined}\n >\n {name}\n </a>\n );\n\n if (popconfirm) {\n const { confirm, ...rest } = popconfirm;\n btnNode = (\n <Popconfirm\n {...rest}\n onConfirm={confirm ? () => confirm(record, index) : undefined}\n key={name}\n >\n {btnNode}\n </Popconfirm>\n );\n }\n\n return [btnNode, i != actionsLen - 1 && <Divider key={i} type=\"vertical\" />];\n }),\n moreRender,\n ];\n};\n\nexport default renderColumnButtons;\n"],"mappings":"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"}
|
package/lib/vtx-export/index.js
CHANGED
|
@@ -51,7 +51,9 @@ var VtxExport = function VtxExport(props) {
|
|
|
51
51
|
allButton = _props$allButton === void 0 ? true : _props$allButton,
|
|
52
52
|
downloadURL = props.downloadURL,
|
|
53
53
|
_props$timeout = props.timeout,
|
|
54
|
-
timeout = _props$timeout === void 0 ? SECOND : _props$timeout
|
|
54
|
+
timeout = _props$timeout === void 0 ? SECOND : _props$timeout,
|
|
55
|
+
_props$customEnumText = props.customEnumText,
|
|
56
|
+
customEnumText = _props$customEnumText === void 0 ? {} : _props$customEnumText;
|
|
55
57
|
var getExportParams = props.getExportParams,
|
|
56
58
|
afterExport = props.afterExport;
|
|
57
59
|
/* 菜单点击 */
|
|
@@ -172,11 +174,11 @@ var VtxExport = function VtxExport(props) {
|
|
|
172
174
|
onClick: exportButtonClick
|
|
173
175
|
}, rowButton === false ? null : /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
174
176
|
key: "rows"
|
|
175
|
-
}, "
|
|
177
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.selectRowText) || "导出选中行"), pageButton === false ? null : /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
176
178
|
key: "page"
|
|
177
|
-
}, "
|
|
179
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.selectPageText) || "导出当前页"), allButton === false ? null : /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
|
|
178
180
|
key: "all"
|
|
179
|
-
}, "
|
|
181
|
+
}, (customEnumText === null || customEnumText === void 0 ? void 0 : customEnumText.selectAllText) || "导出全部"));
|
|
180
182
|
|
|
181
183
|
return /*#__PURE__*/_react["default"].createElement(_dropdown["default"], {
|
|
182
184
|
overlay: exportMenu,
|
|
@@ -194,7 +196,8 @@ VtxExport.propTypes = {
|
|
|
194
196
|
downloadURL: _propTypes["default"].string,
|
|
195
197
|
getExportParams: _propTypes["default"].func,
|
|
196
198
|
afterExport: _propTypes["default"].func,
|
|
197
|
-
timeout: _propTypes["default"].number
|
|
199
|
+
timeout: _propTypes["default"].number,
|
|
200
|
+
customEnumText: _propTypes["default"].object
|
|
198
201
|
};
|
|
199
202
|
var _default = VtxExport;
|
|
200
203
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getUrlParam","token","SECOND","MILL_SECOND","VtxExport","props","exportText","rowButton","pageButton","allButton","downloadURL","timeout","getExportParams","afterExport","exportButtonClick","param","passVal","key","downLoadFile","requestToResponse","postData","params","url","method","responseType","headers","Authorization","data","qs","stringify","Promise","resolve","reject","axios","then","res","err","div","document","createElement","ReactDOM","render","body","appendChild","status","contentDisposition","filename","indexOf","decodeURI","split","replace","download","message","warn","removeChild","content","blob","Blob","window","navigator","msSaveOrOpenBlob","downloadByATag","URL","createObjectURL","href","a","style","display","click","remove","revokeObjectURL","exportMenu","propTypes","PropTypes","string","bool","func","number"],"sources":["vtx-export/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport axios from 'axios';\r\nimport qs from 'querystring';\r\nimport Button from 'antd/lib/button';\r\nimport Menu from 'antd/lib/menu';\r\nimport Dropdown from 'antd/lib/dropdown';\r\nimport message from 'antd/lib/message';\r\nimport Spin from 'antd/lib/spin';\r\nimport getUrlParam from '@vtx/utils/lib/getUrlParam';\r\nimport DownOutlined from '@ant-design/icons/DownOutlined';\r\nimport ExportOutlined from '@ant-design/icons/ExportOutlined';\r\n\r\nconst { token } = getUrlParam();\r\n// 默认60秒超时\r\nconst SECOND = 60;\r\nconst MILL_SECOND = 1000;\r\n\r\nconst VtxExport = props => {\r\n const {\r\n exportText = '导出',\r\n rowButton = true,\r\n pageButton = true,\r\n allButton = true,\r\n downloadURL,\r\n timeout = SECOND,\r\n } = props;\r\n\r\n const { getExportParams, afterExport } = props;\r\n\r\n /* 菜单点击 */\r\n function exportButtonClick(param) {\r\n const passVal = typeof getExportParams == 'function' ? getExportParams(param.key) : null;\r\n if (!downloadURL) {\r\n return;\r\n }\r\n if (!passVal) {\r\n return;\r\n }\r\n downLoadFile(passVal);\r\n }\r\n\r\n // eslint-disable-next-line valid-jsdoc\r\n /**\r\n * 发送http请求\r\n * @param {Object} postData api参数\r\n * @return reponse\r\n */\r\n function requestToResponse(postData) {\r\n const params = {\r\n url: downloadURL,\r\n method: 'post',\r\n timeout: timeout * MILL_SECOND,\r\n responseType: 'blob',\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n Authorization: token ? `Bearer ${token}` : '',\r\n },\r\n data: qs.stringify(postData),\r\n };\r\n return new Promise((resolve, reject) => {\r\n axios(params)\r\n .then(res => {\r\n resolve(res);\r\n })\r\n .catch(err => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n /* 下载文件 */\r\n function downLoadFile(postData) {\r\n const div = document.createElement('div');\r\n ReactDOM.render(<Spin spinning className=\"vtx-spin\" />, div);\r\n document.body.appendChild(div);\r\n\r\n requestToResponse(postData).then(res => {\r\n let status = false;\r\n // 文件存在\r\n if (res.headers['content-disposition']) {\r\n const contentDisposition = res.headers['content-disposition'];\r\n let filename;\r\n if (contentDisposition.indexOf('filename*=') > -1) {\r\n filename = decodeURI(\r\n contentDisposition.split('filename*=')[1].replace(\"utf-8'zh_cn'\", ''),\r\n );\r\n } else {\r\n filename = decodeURI(contentDisposition.split('filename=')[1]);\r\n }\r\n if ('download' in document.createElement('a')) {\r\n download(res.data, filename);\r\n status = true;\r\n } else {\r\n message.warn('浏览器不支持');\r\n }\r\n }\r\n // 关闭loading,执行回调\r\n document.body.removeChild(div);\r\n if (afterExport && typeof afterExport === 'function') {\r\n afterExport(status);\r\n }\r\n });\r\n }\r\n\r\n /* 下载并 兼容IE */\r\n function download(content, filename) {\r\n const blob = new Blob([content]);\r\n // IE\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blob, filename);\r\n } else {\r\n downloadByATag(window.URL.createObjectURL(blob), filename);\r\n }\r\n }\r\n\r\n /**\r\n * 通过a标签模拟下载\r\n * @param {String} href\r\n * @param {String} filename\r\n */\r\n function downloadByATag(href, filename) {\r\n const a = document.createElement('a');\r\n a.download = filename;\r\n a.style.display = 'none';\r\n a.href = href;\r\n document.body.appendChild(a);\r\n a.click();\r\n a.remove();\r\n window.URL.revokeObjectURL(href);\r\n }\r\n\r\n const exportMenu = (\r\n <Menu onClick={exportButtonClick}>\r\n {rowButton === false ? null : <Menu.Item key=\"rows\">导出选中行</Menu.Item>}\r\n {pageButton === false ? null : <Menu.Item key=\"page\">导出当前页</Menu.Item>}\r\n {allButton === false ? null : <Menu.Item key=\"all\">导出全部</Menu.Item>}\r\n </Menu>\r\n );\r\n return (\r\n <Dropdown overlay={exportMenu} trigger={['click']}>\r\n <Button icon={<ExportOutlined />}>\r\n {exportText} <DownOutlined />\r\n </Button>\r\n </Dropdown>\r\n );\r\n};\r\n\r\nVtxExport.propTypes = {\r\n exportText: PropTypes.string,\r\n rowButton: PropTypes.bool,\r\n pageButton: PropTypes.bool,\r\n allButton: PropTypes.bool,\r\n downloadURL: PropTypes.string,\r\n getExportParams: PropTypes.func,\r\n afterExport: PropTypes.func,\r\n timeout: PropTypes.number,\r\n};\r\nexport default VtxExport;\r\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,mBAAkB,IAAAA,wBAAA,GAAlB;AAAA,IAAQC,KAAR,gBAAQA,KAAR,C,CACA;;;AACA,IAAMC,MAAM,GAAG,EAAf;AACA,IAAMC,WAAW,GAAG,IAApB;;AAEA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,KAAK,EAAI;EACvB,wBAOIA,KAPJ,CACIC,UADJ;EAAA,IACIA,UADJ,kCACiB,IADjB;EAAA,uBAOID,KAPJ,CAEIE,SAFJ;EAAA,IAEIA,SAFJ,iCAEgB,IAFhB;EAAA,wBAOIF,KAPJ,CAGIG,UAHJ;EAAA,IAGIA,UAHJ,kCAGiB,IAHjB;EAAA,uBAOIH,KAPJ,CAIII,SAJJ;EAAA,IAIIA,SAJJ,iCAIgB,IAJhB;EAAA,IAKIC,WALJ,GAOIL,KAPJ,CAKIK,WALJ;EAAA,qBAOIL,KAPJ,CAMIM,OANJ;EAAA,IAMIA,OANJ,+BAMcT,MANd;EASA,IAAQU,eAAR,GAAyCP,KAAzC,CAAQO,eAAR;EAAA,IAAyBC,WAAzB,GAAyCR,KAAzC,CAAyBQ,WAAzB;EAEA;;EACA,SAASC,iBAAT,CAA2BC,KAA3B,EAAkC;IAC9B,IAAMC,OAAO,GAAG,OAAOJ,eAAP,IAA0B,UAA1B,GAAuCA,eAAe,CAACG,KAAK,CAACE,GAAP,CAAtD,GAAoE,IAApF;;IACA,IAAI,CAACP,WAAL,EAAkB;MACd;IACH;;IACD,IAAI,CAACM,OAAL,EAAc;MACV;IACH;;IACDE,YAAY,CAACF,OAAD,CAAZ;EACH,CAtBsB,CAwBvB;;EACA;AACJ;AACA;AACA;AACA;;;EACI,SAASG,iBAAT,CAA2BC,QAA3B,EAAqC;IACjC,IAAMC,MAAM,GAAG;MACXC,GAAG,EAAEZ,WADM;MAEXa,MAAM,EAAE,MAFG;MAGXZ,OAAO,EAAEA,OAAO,GAAGR,WAHR;MAIXqB,YAAY,EAAE,MAJH;MAKXC,OAAO,EAAE;QACL,gBAAgB,mCADX;QAELC,aAAa,EAAEzB,KAAK,oBAAaA,KAAb,IAAuB;MAFtC,CALE;MASX0B,IAAI,EAAEC,uBAAA,CAAGC,SAAH,CAAaT,QAAb;IATK,CAAf;IAWA,OAAO,IAAIU,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;MACpC,IAAAC,iBAAA,EAAMZ,MAAN,EACKa,IADL,CACU,UAAAC,GAAG,EAAI;QACTJ,OAAO,CAACI,GAAD,CAAP;MACH,CAHL,WAIW,UAAAC,GAAG,EAAI;QACVJ,MAAM,CAACI,GAAD,CAAN;MACH,CANL;IAOH,CARM,CAAP;EASH;EAED;;;EACA,SAASlB,YAAT,CAAsBE,QAAtB,EAAgC;IAC5B,IAAMiB,GAAG,GAAGC,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAAZ;;IACAC,oBAAA,CAASC,MAAT,eAAgB,gCAAC,gBAAD;MAAM,QAAQ,MAAd;MAAe,SAAS,EAAC;IAAzB,EAAhB,EAAwDJ,GAAxD;;IACAC,QAAQ,CAACI,IAAT,CAAcC,WAAd,CAA0BN,GAA1B;IAEAlB,iBAAiB,CAACC,QAAD,CAAjB,CAA4Bc,IAA5B,CAAiC,UAAAC,GAAG,EAAI;MACpC,IAAIS,MAAM,GAAG,KAAb,CADoC,CAEpC;;MACA,IAAIT,GAAG,CAACV,OAAJ,CAAY,qBAAZ,CAAJ,EAAwC;QACpC,IAAMoB,kBAAkB,GAAGV,GAAG,CAACV,OAAJ,CAAY,qBAAZ,CAA3B;QACA,IAAIqB,QAAJ;;QACA,IAAID,kBAAkB,CAACE,OAAnB,CAA2B,YAA3B,IAA2C,CAAC,CAAhD,EAAmD;UAC/CD,QAAQ,GAAGE,SAAS,CAChBH,kBAAkB,CAACI,KAAnB,CAAyB,YAAzB,EAAuC,CAAvC,EAA0CC,OAA1C,CAAkD,cAAlD,EAAkE,EAAlE,CADgB,CAApB;QAGH,CAJD,MAIO;UACHJ,QAAQ,GAAGE,SAAS,CAACH,kBAAkB,CAACI,KAAnB,CAAyB,WAAzB,EAAsC,CAAtC,CAAD,CAApB;QACH;;QACD,IAAI,cAAcX,QAAQ,CAACC,aAAT,CAAuB,GAAvB,CAAlB,EAA+C;UAC3CY,QAAQ,CAAChB,GAAG,CAACR,IAAL,EAAWmB,QAAX,CAAR;UACAF,MAAM,GAAG,IAAT;QACH,CAHD,MAGO;UACHQ,mBAAA,CAAQC,IAAR,CAAa,QAAb;QACH;MACJ,CAnBmC,CAoBpC;;;MACAf,QAAQ,CAACI,IAAT,CAAcY,WAAd,CAA0BjB,GAA1B;;MACA,IAAIxB,WAAW,IAAI,OAAOA,WAAP,KAAuB,UAA1C,EAAsD;QAClDA,WAAW,CAAC+B,MAAD,CAAX;MACH;IACJ,CAzBD;EA0BH;EAED;;;EACA,SAASO,QAAT,CAAkBI,OAAlB,EAA2BT,QAA3B,EAAqC;IACjC,IAAMU,IAAI,GAAG,IAAIC,IAAJ,CAAS,CAACF,OAAD,CAAT,CAAb,CADiC,CAEjC;;IACA,IAAIG,MAAM,CAACC,SAAP,IAAoBD,MAAM,CAACC,SAAP,CAAiBC,gBAAzC,EAA2D;MACvDF,MAAM,CAACC,SAAP,CAAiBC,gBAAjB,CAAkCJ,IAAlC,EAAwCV,QAAxC;IACH,CAFD,MAEO;MACHe,cAAc,CAACH,MAAM,CAACI,GAAP,CAAWC,eAAX,CAA2BP,IAA3B,CAAD,EAAmCV,QAAnC,CAAd;IACH;EACJ;EAED;AACJ;AACA;AACA;AACA;;;EACI,SAASe,cAAT,CAAwBG,IAAxB,EAA8BlB,QAA9B,EAAwC;IACpC,IAAMmB,CAAC,GAAG3B,QAAQ,CAACC,aAAT,CAAuB,GAAvB,CAAV;IACA0B,CAAC,CAACd,QAAF,GAAaL,QAAb;IACAmB,CAAC,CAACC,KAAF,CAAQC,OAAR,GAAkB,MAAlB;IACAF,CAAC,CAACD,IAAF,GAASA,IAAT;IACA1B,QAAQ,CAACI,IAAT,CAAcC,WAAd,CAA0BsB,CAA1B;IACAA,CAAC,CAACG,KAAF;IACAH,CAAC,CAACI,MAAF;IACAX,MAAM,CAACI,GAAP,CAAWQ,eAAX,CAA2BN,IAA3B;EACH;;EAED,IAAMO,UAAU,gBACZ,gCAAC,gBAAD;IAAM,OAAO,EAAEzD;EAAf,GACKP,SAAS,KAAK,KAAd,GAAsB,IAAtB,gBAA6B,gCAAC,gBAAD,CAAM,IAAN;IAAW,GAAG,EAAC;EAAf,oCADlC,EAEKC,UAAU,KAAK,KAAf,GAAuB,IAAvB,gBAA8B,gCAAC,gBAAD,CAAM,IAAN;IAAW,GAAG,EAAC;EAAf,oCAFnC,EAGKC,SAAS,KAAK,KAAd,GAAsB,IAAtB,gBAA6B,gCAAC,gBAAD,CAAM,IAAN;IAAW,GAAG,EAAC;EAAf,8BAHlC,CADJ;;EAOA,oBACI,gCAAC,oBAAD;IAAU,OAAO,EAAE8D,UAAnB;IAA+B,OAAO,EAAE,CAAC,OAAD;EAAxC,gBACI,gCAAC,kBAAD;IAAQ,IAAI,eAAE,gCAAC,0BAAD;EAAd,GACKjE,UADL,oBACiB,gCAAC,wBAAD,OADjB,CADJ,CADJ;AAOH,CAhID;;AAkIAF,SAAS,CAACoE,SAAV,GAAsB;EAClBlE,UAAU,EAAEmE,qBAAA,CAAUC,MADJ;EAElBnE,SAAS,EAAEkE,qBAAA,CAAUE,IAFH;EAGlBnE,UAAU,EAAEiE,qBAAA,CAAUE,IAHJ;EAIlBlE,SAAS,EAAEgE,qBAAA,CAAUE,IAJH;EAKlBjE,WAAW,EAAE+D,qBAAA,CAAUC,MALL;EAMlB9D,eAAe,EAAE6D,qBAAA,CAAUG,IANT;EAOlB/D,WAAW,EAAE4D,qBAAA,CAAUG,IAPL;EAQlBjE,OAAO,EAAE8D,qBAAA,CAAUI;AARD,CAAtB;eAUezE,S"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getUrlParam","token","SECOND","MILL_SECOND","VtxExport","props","exportText","rowButton","pageButton","allButton","downloadURL","timeout","customEnumText","getExportParams","afterExport","exportButtonClick","param","passVal","key","downLoadFile","requestToResponse","postData","params","url","method","responseType","headers","Authorization","data","qs","stringify","Promise","resolve","reject","axios","then","res","err","div","document","createElement","ReactDOM","render","body","appendChild","status","contentDisposition","filename","indexOf","decodeURI","split","replace","download","message","warn","removeChild","content","blob","Blob","window","navigator","msSaveOrOpenBlob","downloadByATag","URL","createObjectURL","href","a","style","display","click","remove","revokeObjectURL","exportMenu","selectRowText","selectPageText","selectAllText","propTypes","PropTypes","string","bool","func","number","object"],"sources":["vtx-export/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport axios from 'axios';\r\nimport qs from 'querystring';\r\nimport Button from 'antd/lib/button';\r\nimport Menu from 'antd/lib/menu';\r\nimport Dropdown from 'antd/lib/dropdown';\r\nimport message from 'antd/lib/message';\r\nimport Spin from 'antd/lib/spin';\r\nimport getUrlParam from '@vtx/utils/lib/getUrlParam';\r\nimport DownOutlined from '@ant-design/icons/DownOutlined';\r\nimport ExportOutlined from '@ant-design/icons/ExportOutlined';\r\n\r\nconst { token } = getUrlParam();\r\n// 默认60秒超时\r\nconst SECOND = 60;\r\nconst MILL_SECOND = 1000;\r\n\r\nconst VtxExport = props => {\r\n const {\r\n exportText = '导出',\r\n rowButton = true,\r\n pageButton = true,\r\n allButton = true,\r\n downloadURL,\r\n timeout = SECOND,\r\n customEnumText = {}\r\n } = props;\r\n\r\n const { getExportParams, afterExport } = props;\r\n\r\n /* 菜单点击 */\r\n function exportButtonClick(param) {\r\n const passVal = typeof getExportParams == 'function' ? getExportParams(param.key) : null;\r\n if (!downloadURL) {\r\n return;\r\n }\r\n if (!passVal) {\r\n return;\r\n }\r\n downLoadFile(passVal);\r\n }\r\n\r\n // eslint-disable-next-line valid-jsdoc\r\n /**\r\n * 发送http请求\r\n * @param {Object} postData api参数\r\n * @return reponse\r\n */\r\n function requestToResponse(postData) {\r\n const params = {\r\n url: downloadURL,\r\n method: 'post',\r\n timeout: timeout * MILL_SECOND,\r\n responseType: 'blob',\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n Authorization: token ? `Bearer ${token}` : '',\r\n },\r\n data: qs.stringify(postData),\r\n };\r\n return new Promise((resolve, reject) => {\r\n axios(params)\r\n .then(res => {\r\n resolve(res);\r\n })\r\n .catch(err => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n /* 下载文件 */\r\n function downLoadFile(postData) {\r\n const div = document.createElement('div');\r\n ReactDOM.render(<Spin spinning className=\"vtx-spin\" />, div);\r\n document.body.appendChild(div);\r\n\r\n requestToResponse(postData).then(res => {\r\n let status = false;\r\n // 文件存在\r\n if (res.headers['content-disposition']) {\r\n const contentDisposition = res.headers['content-disposition'];\r\n let filename;\r\n if (contentDisposition.indexOf('filename*=') > -1) {\r\n filename = decodeURI(\r\n contentDisposition.split('filename*=')[1].replace(\"utf-8'zh_cn'\", ''),\r\n );\r\n } else {\r\n filename = decodeURI(contentDisposition.split('filename=')[1]);\r\n }\r\n if ('download' in document.createElement('a')) {\r\n download(res.data, filename);\r\n status = true;\r\n } else {\r\n message.warn('浏览器不支持');\r\n }\r\n }\r\n // 关闭loading,执行回调\r\n document.body.removeChild(div);\r\n if (afterExport && typeof afterExport === 'function') {\r\n afterExport(status);\r\n }\r\n });\r\n }\r\n\r\n /* 下载并 兼容IE */\r\n function download(content, filename) {\r\n const blob = new Blob([content]);\r\n // IE\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(blob, filename);\r\n } else {\r\n downloadByATag(window.URL.createObjectURL(blob), filename);\r\n }\r\n }\r\n\r\n /**\r\n * 通过a标签模拟下载\r\n * @param {String} href\r\n * @param {String} filename\r\n */\r\n function downloadByATag(href, filename) {\r\n const a = document.createElement('a');\r\n a.download = filename;\r\n a.style.display = 'none';\r\n a.href = href;\r\n document.body.appendChild(a);\r\n a.click();\r\n a.remove();\r\n window.URL.revokeObjectURL(href);\r\n }\r\n\r\n const exportMenu = (\r\n <Menu onClick={exportButtonClick}>\r\n {rowButton === false ? null : <Menu.Item key=\"rows\">{customEnumText?.selectRowText || \"导出选中行\"}</Menu.Item>}\r\n {pageButton === false ? null : <Menu.Item key=\"page\">{customEnumText?.selectPageText || \"导出当前页\"}</Menu.Item>}\r\n {allButton === false ? null : <Menu.Item key=\"all\">{customEnumText?.selectAllText || \"导出全部\"}</Menu.Item>}\r\n </Menu>\r\n );\r\n return (\r\n <Dropdown overlay={exportMenu} trigger={['click']}>\r\n <Button icon={<ExportOutlined />}>\r\n {exportText} <DownOutlined />\r\n </Button>\r\n </Dropdown>\r\n );\r\n};\r\n\r\nVtxExport.propTypes = {\r\n exportText: PropTypes.string,\r\n rowButton: PropTypes.bool,\r\n pageButton: PropTypes.bool,\r\n allButton: PropTypes.bool,\r\n downloadURL: PropTypes.string,\r\n getExportParams: PropTypes.func,\r\n afterExport: PropTypes.func,\r\n timeout: PropTypes.number,\r\n customEnumText: PropTypes.object\r\n};\r\nexport default VtxExport;\r\n"],"mappings":"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"}
|