@para-ui/core 4.0.37 → 4.0.39
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/Cascader/index.js +6 -5
- package/ComboSelect/index.js +7 -6
- package/CycleSelector/index.js +4 -1
- package/DatePicker/index.js +4 -1
- package/Drawer/index.js +4 -4
- package/DynamicMultiBox/index.js +31 -28
- package/Form/index.js +7 -6
- package/FormItem/index.js +7 -6
- package/Image/index.js +3 -2
- package/Pagination/index.js +2 -2
- package/PopConfirm/index.js +2 -2
- package/Progress/index.js +40 -41
- package/Querying/index.js +4 -4
- package/QuickReply/index.js +1 -1
- package/README.md +18 -2
- package/Select/index.js +3 -3
- package/Selector/index.js +2 -2
- package/SelectorPicker/index.js +4 -4
- package/SingleBox/index.js +2 -2
- package/SortBox/index.js +1 -1
- package/Switch/index.js +2 -2
- package/Table/index.js +493 -425
- package/Tag/index.js +82 -53
- package/TimePicker/index.js +4 -1
- package/Timeline/index.js +14 -20
- package/ToggleButton/index.js +2 -1
- package/Tree/index.js +6 -5
- package/Upload/index.js +5 -4
- package/_verture/{Portal-42560ff0.js → Portal-edd94cac.js} +2 -1
- package/_verture/{defineProperty-f0e15205.js → defineProperty-6f62bb2a.js} +2 -10
- package/_verture/{index-086e9a6d.js → index-63345bd4.js} +4 -3
- package/_verture/{index-5f0bfdcf.js → index-77fff5bd.js} +3 -2
- package/_verture/{index-8ac46bd9.js → index-94e24006.js} +1 -1
- package/_verture/typeof-adeedc13.js +11 -0
- package/index.js +9 -8
- package/package.json +3 -4
- package/umd/Argv.js +1 -1
- package/umd/ComboSelect.js +1 -1
- package/umd/CycleSelector.js +1 -1
- package/umd/DynamicMultiBox.js +2 -2
- package/umd/Form.js +1 -1
- package/umd/FormItem.js +1 -1
- package/umd/Pagination.js +1 -1
- package/umd/Select.js +1 -1
- package/umd/SelectInput.js +1 -1
- package/umd/Table.js +2 -2
- /package/_verture/{index-4c5d6cd7.js → index-182d41ee.js} +0 -0
- /package/_verture/{index-0f5ee6f7.js → index-c8cb6751.js} +0 -0
- /package/_verture/{typeof-6ec38efd.js → typeof-4646b22c.js} +0 -0
package/Table/index.js
CHANGED
|
@@ -2,6 +2,8 @@ import { a as __rest, _ as __awaiter } from '../_verture/tslib.es6-f43aa41d.js';
|
|
|
2
2
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
3
|
import { useRef, useState, useEffect, useMemo, useCallback, Fragment as Fragment$1 } from 'react';
|
|
4
4
|
import { Get, Post, DeepClone, GetBrowserClass, Cancel, ArrayToObject } from '@paraview/lib';
|
|
5
|
+
import { _ as _typeof } from '../_verture/typeof-adeedc13.js';
|
|
6
|
+
import { _ as _slicedToArray } from '../_verture/slicedToArray-75fa4188.js';
|
|
5
7
|
import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
|
|
6
8
|
import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
|
|
7
9
|
import { Popover } from '../Popover/index.js';
|
|
@@ -14,7 +16,8 @@ import SolidArrowDown from '@para-ui/icons/DownTriangleF';
|
|
|
14
16
|
import Panel from '@para-ui/icons/Panel';
|
|
15
17
|
import { u as useFormatMessage } from '../_verture/useFormatMessage-1fc7c957.js';
|
|
16
18
|
import Empty from '../Empty/index.js';
|
|
17
|
-
import {
|
|
19
|
+
import { _ as _defineProperty } from '../_verture/defineProperty-6f62bb2a.js';
|
|
20
|
+
import { d as dist } from '../_verture/index-c8cb6751.js';
|
|
18
21
|
import { Radio } from '../Radio/index.js';
|
|
19
22
|
import OperateBtn from '../OperateBtn/index.js';
|
|
20
23
|
import Down from '@para-ui/icons/Down';
|
|
@@ -62,25 +65,23 @@ import '@para-ui/icons/DoubleRight';
|
|
|
62
65
|
* 发送请求
|
|
63
66
|
* @param obj {ReqProps} 请求信息
|
|
64
67
|
*/
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
data
|
|
71
|
-
} = obj,
|
|
68
|
+
var requestFunc = function requestFunc(obj) {
|
|
69
|
+
var method = obj.method,
|
|
70
|
+
url = obj.url,
|
|
71
|
+
ctx = obj.ctx,
|
|
72
|
+
data = obj.data,
|
|
72
73
|
otherProps = __rest(obj, ["method", "url", "ctx", "data"]);
|
|
73
74
|
if (method === 'Get') {
|
|
74
75
|
return Get(Object.assign({
|
|
75
76
|
url: url,
|
|
76
|
-
ctx
|
|
77
|
+
ctx: ctx
|
|
77
78
|
}, otherProps));
|
|
78
79
|
}
|
|
79
80
|
if (method === 'Post') {
|
|
80
81
|
return Post(Object.assign({
|
|
81
82
|
url: url,
|
|
82
|
-
ctx,
|
|
83
|
-
data
|
|
83
|
+
ctx: ctx,
|
|
84
|
+
data: data
|
|
84
85
|
}, otherProps));
|
|
85
86
|
}
|
|
86
87
|
};
|
|
@@ -89,23 +90,23 @@ const requestFunc = obj => {
|
|
|
89
90
|
* @param obj {ReqProps} 请求信息
|
|
90
91
|
* @return string get请求地址参数
|
|
91
92
|
*/
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
for (
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (
|
|
93
|
+
var handGetReqParams = function handGetReqParams(obj) {
|
|
94
|
+
var str = obj.url;
|
|
95
|
+
var params = obj.data || {};
|
|
96
|
+
var arrKey = Object.keys(params);
|
|
97
|
+
var paramsArr = [];
|
|
98
|
+
for (var i = 0, l = arrKey.length; i < l; i++) {
|
|
99
|
+
var key = arrKey[i];
|
|
100
|
+
var val = params[key];
|
|
101
|
+
if (_typeof(val) === 'object') {
|
|
101
102
|
val = encodeURIComponent(JSON.stringify(val));
|
|
102
103
|
} else {
|
|
103
104
|
val = encodeURIComponent(val);
|
|
104
105
|
}
|
|
105
106
|
paramsArr.push("".concat(key, "=").concat(val));
|
|
106
107
|
}
|
|
107
|
-
|
|
108
|
-
|
|
108
|
+
var paramsStr = paramsArr.join('&');
|
|
109
|
+
var pos = str.indexOf('?');
|
|
109
110
|
if (pos !== -1) {
|
|
110
111
|
str += (pos === str.length - 1 ? '' : '&') + paramsStr;
|
|
111
112
|
} else {
|
|
@@ -116,9 +117,9 @@ const handGetReqParams = obj => {
|
|
|
116
117
|
/**
|
|
117
118
|
* 提取字符串里面的数字
|
|
118
119
|
* */
|
|
119
|
-
|
|
120
|
+
var getStringInNumber = function getStringInNumber(str) {
|
|
120
121
|
if (typeof str === 'number') return str;
|
|
121
|
-
|
|
122
|
+
var strHand = str.replace(/[^0-9$]/gi, '');
|
|
122
123
|
return Number(strHand);
|
|
123
124
|
};
|
|
124
125
|
/**
|
|
@@ -126,23 +127,23 @@ const getStringInNumber = str => {
|
|
|
126
127
|
* @param key {string} 键值
|
|
127
128
|
* @param num {number} 过期天数
|
|
128
129
|
* */
|
|
129
|
-
|
|
130
|
+
var getLocalStorageSelectHead = function getLocalStorageSelectHead(key, num) {
|
|
130
131
|
//debugger
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
for (
|
|
135
|
-
|
|
136
|
-
|
|
132
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
133
|
+
var headJson = JSON.parse(headJsonStr);
|
|
134
|
+
var headJsonArr = Object.keys(headJson);
|
|
135
|
+
for (var i = 0, l = headJsonArr.length; i < l; i++) {
|
|
136
|
+
var keyStr = headJsonArr[i];
|
|
137
|
+
var item = headJson[i];
|
|
137
138
|
if (!item) continue;
|
|
138
|
-
|
|
139
|
-
|
|
139
|
+
var newDate = new Date().getTime(); // 当前时间
|
|
140
|
+
var endTime = item.storageTime + item.validity; // 过期时间
|
|
140
141
|
// 过期时间 小于 当前时间, 说明已经过期了, 删除当前表格列数据
|
|
141
142
|
if (endTime < newDate) {
|
|
142
143
|
delete headJson[keyStr];
|
|
143
144
|
}
|
|
144
145
|
}
|
|
145
|
-
|
|
146
|
+
var headJsonItem = headJson[key];
|
|
146
147
|
// 重置过期时间
|
|
147
148
|
if (headJsonItem) {
|
|
148
149
|
headJsonItem.storageTime = new Date().getTime();
|
|
@@ -155,9 +156,9 @@ const getLocalStorageSelectHead = (key, num) => {
|
|
|
155
156
|
* @param key {string} 键值
|
|
156
157
|
* @param val {HeadLocalStorageItem} 保存值
|
|
157
158
|
* */
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
159
|
+
var setLocalStorageSelectHead = function setLocalStorageSelectHead(key, val) {
|
|
160
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
161
|
+
var headJson = JSON.parse(headJsonStr);
|
|
161
162
|
headJson[key] = val;
|
|
162
163
|
window.localStorage.setItem('_paraui_table_head', JSON.stringify(headJson));
|
|
163
164
|
};
|
|
@@ -166,8 +167,8 @@ const setLocalStorageSelectHead = (key, val) => {
|
|
|
166
167
|
* @param el 当前元素
|
|
167
168
|
* @param selector 查找元素class
|
|
168
169
|
*/
|
|
169
|
-
|
|
170
|
-
|
|
170
|
+
var closest = function closest(el, selector) {
|
|
171
|
+
var matchesSelector = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;
|
|
171
172
|
while (el) {
|
|
172
173
|
if (matchesSelector.call(el, selector)) {
|
|
173
174
|
break;
|
|
@@ -359,50 +360,70 @@ var zh = {
|
|
|
359
360
|
};
|
|
360
361
|
|
|
361
362
|
var localeJson = {
|
|
362
|
-
zh,
|
|
363
|
-
en
|
|
363
|
+
zh: zh,
|
|
364
|
+
en: en
|
|
364
365
|
};
|
|
365
366
|
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
headData = [],
|
|
369
|
-
sortTable,
|
|
370
|
-
filter,
|
|
371
|
-
expandable,
|
|
372
|
-
check,
|
|
373
|
-
radio,
|
|
374
|
-
onRequestSort,
|
|
375
|
-
orderFieldArr =
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
367
|
+
var TableHead$1 = function TableHead(props) {
|
|
368
|
+
var _props$headData = props.headData,
|
|
369
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
370
|
+
sortTable = props.sortTable,
|
|
371
|
+
filter = props.filter,
|
|
372
|
+
expandable = props.expandable,
|
|
373
|
+
check = props.check,
|
|
374
|
+
radio = props.radio,
|
|
375
|
+
onRequestSort = props.onRequestSort,
|
|
376
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
377
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
378
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
379
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
380
|
+
selectAll = props.selectAll,
|
|
381
|
+
selectStatus = props.selectStatus,
|
|
382
|
+
align = props.align,
|
|
383
|
+
_props$showList = props.showList,
|
|
384
|
+
showList = _props$showList === void 0 ? [] : _props$showList,
|
|
385
|
+
changeShowList = props.changeShowList,
|
|
386
|
+
selectFilter = props.selectFilter,
|
|
387
|
+
changeFilter = props.changeFilter,
|
|
388
|
+
operate = props.operate,
|
|
389
|
+
showColumns = props.showColumns,
|
|
390
|
+
fixedTable = props.fixedTable,
|
|
391
|
+
fixedColumn = props.fixedColumn,
|
|
392
|
+
posFixed = props.posFixed,
|
|
393
|
+
beyondText = props.beyondText,
|
|
394
|
+
lineWidth = props.lineWidth,
|
|
395
|
+
dragColumn = props.dragColumn,
|
|
396
|
+
dragRow = props.dragRow,
|
|
397
|
+
changeColumnWidth = props.changeColumnWidth,
|
|
398
|
+
headDataConfig = props.headDataConfig,
|
|
399
|
+
getPopupContainer = props.getPopupContainer,
|
|
400
|
+
tipMaxWidth = props.tipMaxWidth;
|
|
401
|
+
var _useState = useState(false),
|
|
402
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
403
|
+
indeterminate = _useState2[0],
|
|
404
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
405
|
+
var _useState3 = useState(false),
|
|
406
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
407
|
+
checked = _useState4[0],
|
|
408
|
+
setChecked = _useState4[1]; // 选中
|
|
409
|
+
var _useState5 = useState(null),
|
|
410
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
411
|
+
anchorElColums = _useState6[0],
|
|
412
|
+
setAnchorElColums = _useState6[1]; // 显示列定位元素
|
|
413
|
+
var _useState7 = useState({}),
|
|
414
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
415
|
+
headDataJson = _useState8[0],
|
|
416
|
+
setHeadDataJson = _useState8[1]; // 显示列json
|
|
417
|
+
var _useState9 = useState({}),
|
|
418
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
419
|
+
filterHead = _useState10[0],
|
|
420
|
+
setFilterHead = _useState10[1]; // 过滤项当前表头数据
|
|
421
|
+
var _useState11 = useState({}),
|
|
422
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
423
|
+
selectFilterCom = _useState12[0],
|
|
424
|
+
setSelectFilterCom = _useState12[1]; // 过滤项当前选中值
|
|
425
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
426
|
+
useEffect(function () {
|
|
406
427
|
// 全选
|
|
407
428
|
if (selectStatus === 'all') {
|
|
408
429
|
setChecked(true);
|
|
@@ -419,17 +440,17 @@ const TableHead$1 = props => {
|
|
|
419
440
|
setIndeterminate(false);
|
|
420
441
|
}
|
|
421
442
|
}, [selectStatus]);
|
|
422
|
-
useEffect(()
|
|
443
|
+
useEffect(function () {
|
|
423
444
|
if (headData) {
|
|
424
|
-
|
|
425
|
-
for (
|
|
426
|
-
|
|
445
|
+
var json = [];
|
|
446
|
+
for (var i = 0, l = headData.length; i < l; i++) {
|
|
447
|
+
var item = headData[i];
|
|
427
448
|
json[item.name] = item;
|
|
428
449
|
}
|
|
429
450
|
setHeadDataJson(json);
|
|
430
451
|
}
|
|
431
452
|
}, [headData]);
|
|
432
|
-
useEffect(()
|
|
453
|
+
useEffect(function () {
|
|
433
454
|
if (selectFilter) setSelectFilterCom(DeepClone(selectFilter));
|
|
434
455
|
}, [selectFilter]);
|
|
435
456
|
/**
|
|
@@ -437,28 +458,30 @@ const TableHead$1 = props => {
|
|
|
437
458
|
* @param name 排序列
|
|
438
459
|
* @param event 当前排序元素
|
|
439
460
|
*/
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
461
|
+
var createSortHandler = function createSortHandler(name, item) {
|
|
462
|
+
return function (event) {
|
|
463
|
+
// 不存在排序,不触发事件
|
|
464
|
+
if (!(sortTable && item.name && item.sort !== false)) return;
|
|
465
|
+
if (onRequestSort) onRequestSort(event, name);
|
|
466
|
+
};
|
|
444
467
|
};
|
|
445
468
|
/**
|
|
446
469
|
* 全选 / 全不选
|
|
447
470
|
* @param event 操作元素
|
|
448
471
|
* @param bol 选中 / 不选中
|
|
449
472
|
*/
|
|
450
|
-
|
|
473
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
451
474
|
if (selectAll) selectAll(event, bol);
|
|
452
475
|
};
|
|
453
476
|
/**
|
|
454
477
|
* 点击显示选择列
|
|
455
478
|
* @param event 点击元素
|
|
456
479
|
*/
|
|
457
|
-
|
|
480
|
+
var clickShowColums = function clickShowColums(event) {
|
|
458
481
|
setAnchorElColums(event.currentTarget);
|
|
459
482
|
};
|
|
460
483
|
// 点击隐藏选择列
|
|
461
|
-
|
|
484
|
+
var clickHideColums = function clickHideColums(bol) {
|
|
462
485
|
if (bol) return;
|
|
463
486
|
setAnchorElColums(null);
|
|
464
487
|
};
|
|
@@ -466,27 +489,29 @@ const TableHead$1 = props => {
|
|
|
466
489
|
* 点击显示列 列表
|
|
467
490
|
* @param item 详细
|
|
468
491
|
*/
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
492
|
+
var clickColumsList = function clickColumsList(item) {
|
|
493
|
+
return function () {
|
|
494
|
+
if (item.disabledSelection) return;
|
|
495
|
+
var name = item.name;
|
|
496
|
+
var itemHead = headDataJson[name];
|
|
497
|
+
if (itemHead) {
|
|
498
|
+
// 取消勾选
|
|
499
|
+
delete headDataJson[name];
|
|
500
|
+
var arr = Object.keys(headDataJson);
|
|
501
|
+
var arr1 = [];
|
|
502
|
+
for (var i = 0, l = arr.length; i < l; i++) {
|
|
503
|
+
var _name = arr[i];
|
|
504
|
+
arr1.push(headDataJson[_name]);
|
|
505
|
+
}
|
|
506
|
+
changeShowList && changeShowList(arr1, false, item);
|
|
507
|
+
} else {
|
|
508
|
+
headData.push(item);
|
|
509
|
+
changeShowList && changeShowList(headData, false, item);
|
|
481
510
|
}
|
|
482
|
-
|
|
483
|
-
} else {
|
|
484
|
-
headData.push(item);
|
|
485
|
-
changeShowList && changeShowList(headData, false, item);
|
|
486
|
-
}
|
|
511
|
+
};
|
|
487
512
|
};
|
|
488
513
|
// 重置显示列
|
|
489
|
-
|
|
514
|
+
var resetShowList = function resetShowList() {
|
|
490
515
|
changeShowList && changeShowList(headData, true);
|
|
491
516
|
};
|
|
492
517
|
/**
|
|
@@ -494,63 +519,69 @@ const TableHead$1 = props => {
|
|
|
494
519
|
* @param headCell 当前列信息
|
|
495
520
|
* @param event 元素
|
|
496
521
|
*/
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
522
|
+
var clickShowFilter = function clickShowFilter(headCell) {
|
|
523
|
+
return function (event) {
|
|
524
|
+
setFilterHead(headCell);
|
|
525
|
+
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
526
|
+
};
|
|
500
527
|
};
|
|
501
528
|
// 点击隐藏过滤
|
|
502
|
-
|
|
529
|
+
var clickHideFilter = function clickHideFilter(bol) {
|
|
503
530
|
if (bol) return;
|
|
504
531
|
setFilterHead({});
|
|
505
532
|
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
506
533
|
};
|
|
507
534
|
// 点击过滤
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
const filterRadio = filterHead.filterRadio;
|
|
520
|
-
if (filterRadio) {
|
|
521
|
-
// 过滤单个
|
|
522
|
-
const num = filterValue.indexOf(item.value);
|
|
523
|
-
if (num !== -1) {
|
|
524
|
-
filterValue = [filterValue[num]];
|
|
535
|
+
var clickFilter = function clickFilter(item) {
|
|
536
|
+
return function () {
|
|
537
|
+
var name = filterHead.name;
|
|
538
|
+
var filterValue = DeepClone(selectFilterCom[name] || []);
|
|
539
|
+
var index = filterValue.indexOf(item.value);
|
|
540
|
+
if (index !== -1) {
|
|
541
|
+
// 勾选 -> 不勾选
|
|
542
|
+
filterValue.splice(index, 1);
|
|
543
|
+
} else {
|
|
544
|
+
// 不勾选 -> 勾选
|
|
545
|
+
filterValue.push(item.value);
|
|
525
546
|
}
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
547
|
+
var filterRadio = filterHead.filterRadio;
|
|
548
|
+
if (filterRadio) {
|
|
549
|
+
// 过滤单个
|
|
550
|
+
var num = filterValue.indexOf(item.value);
|
|
551
|
+
if (num !== -1) {
|
|
552
|
+
filterValue = [filterValue[num]];
|
|
553
|
+
}
|
|
554
|
+
}
|
|
555
|
+
selectFilterCom[name] = filterValue;
|
|
556
|
+
setSelectFilterCom(Object.assign({}, selectFilterCom));
|
|
557
|
+
};
|
|
529
558
|
};
|
|
530
559
|
/**
|
|
531
560
|
* 重置 / 确定过滤
|
|
532
561
|
* @param type {'reset' | 'confirm'} 重置 / 确定过滤
|
|
533
562
|
*/
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
563
|
+
var filterFunc = function filterFunc(type) {
|
|
564
|
+
return function () {
|
|
565
|
+
if (type === 'confirm') {
|
|
566
|
+
// 确定
|
|
567
|
+
changeFilter && changeFilter(Object.assign({}, selectFilterCom));
|
|
568
|
+
setFilterHead({});
|
|
569
|
+
} else {
|
|
570
|
+
// 重置
|
|
571
|
+
var json = DeepClone(selectFilterCom);
|
|
572
|
+
delete json[filterHead.name];
|
|
573
|
+
setSelectFilterCom(json);
|
|
574
|
+
changeFilter && changeFilter(Object.assign({}, json));
|
|
575
|
+
setFilterHead({});
|
|
576
|
+
}
|
|
577
|
+
};
|
|
547
578
|
};
|
|
548
579
|
/**
|
|
549
580
|
* 自定义过滤确定
|
|
550
581
|
* @param val {[name: string]: any[]}
|
|
551
582
|
* */
|
|
552
|
-
|
|
553
|
-
|
|
583
|
+
var filterCustomConfirm = function filterCustomConfirm() {
|
|
584
|
+
var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
554
585
|
changeFilter && changeFilter(Object.assign({}, val));
|
|
555
586
|
setFilterHead({});
|
|
556
587
|
};
|
|
@@ -558,12 +589,12 @@ const TableHead$1 = props => {
|
|
|
558
589
|
* 处理TableCell
|
|
559
590
|
* @param item 当前列信息
|
|
560
591
|
*/
|
|
561
|
-
|
|
562
|
-
|
|
592
|
+
var handCellClass = function handCellClass(item) {
|
|
593
|
+
var str = 'table-header-box';
|
|
563
594
|
// 排序
|
|
564
595
|
if (sortTable && item.name && item.sort !== false) {
|
|
565
596
|
str += ' table-header-box-sort';
|
|
566
|
-
|
|
597
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
567
598
|
if (index !== -1) {
|
|
568
599
|
// 升序
|
|
569
600
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -582,10 +613,10 @@ const TableHead$1 = props => {
|
|
|
582
613
|
return str;
|
|
583
614
|
};
|
|
584
615
|
// 复选框memo
|
|
585
|
-
|
|
616
|
+
var TableCheckMemo = useMemo(function () {
|
|
586
617
|
if (check) {
|
|
587
|
-
|
|
588
|
-
|
|
618
|
+
var handCls = function handCls() {
|
|
619
|
+
var str = 'table-checkbox table-head-btn';
|
|
589
620
|
if (fixedColumn) {
|
|
590
621
|
str += ' table-fixed-dom-left';
|
|
591
622
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -613,10 +644,10 @@ const TableHead$1 = props => {
|
|
|
613
644
|
}
|
|
614
645
|
}, [check, indeterminate, checked, selectAll, posFixed, radio, expandable, fixedColumn]);
|
|
615
646
|
// 单选框memo
|
|
616
|
-
|
|
647
|
+
var TableRadioMemo = useMemo(function () {
|
|
617
648
|
if (radio) {
|
|
618
|
-
|
|
619
|
-
|
|
649
|
+
var handCls = function handCls() {
|
|
650
|
+
var str = 'table-radio table-head-btn';
|
|
620
651
|
if (fixedColumn) {
|
|
621
652
|
str += ' table-fixed-dom-left';
|
|
622
653
|
// 左边没有定位,没有嵌套表格
|
|
@@ -638,10 +669,10 @@ const TableHead$1 = props => {
|
|
|
638
669
|
}
|
|
639
670
|
}, [radio, posFixed, expandable, fixedColumn]);
|
|
640
671
|
// 嵌套表格memo
|
|
641
|
-
|
|
672
|
+
var TableExpandableMemo = useMemo(function () {
|
|
642
673
|
if (expandable) {
|
|
643
|
-
|
|
644
|
-
|
|
674
|
+
var handCls = function handCls() {
|
|
675
|
+
var str = 'table-expandable table-head-btn';
|
|
645
676
|
if (fixedColumn) {
|
|
646
677
|
str += ' table-fixed-dom-left';
|
|
647
678
|
// 左边没有定位,没有嵌套表格
|
|
@@ -663,21 +694,21 @@ const TableHead$1 = props => {
|
|
|
663
694
|
}
|
|
664
695
|
}, [expandable, posFixed, fixedColumn]);
|
|
665
696
|
// 过滤弹窗内容
|
|
666
|
-
|
|
667
|
-
|
|
697
|
+
var filterPopoverContent = function filterPopoverContent() {
|
|
698
|
+
var name = filterHead.name;
|
|
668
699
|
if (!name) return;
|
|
669
|
-
|
|
700
|
+
var filterValue = selectFilterCom[name] || [];
|
|
670
701
|
if (filterHead.filterRender) {
|
|
671
702
|
// 自定义渲染过滤
|
|
672
703
|
return filterHead.filterRender({
|
|
673
|
-
filterValue,
|
|
704
|
+
filterValue: filterValue,
|
|
674
705
|
selectFilter: selectFilterCom,
|
|
675
|
-
filterHead,
|
|
706
|
+
filterHead: filterHead,
|
|
676
707
|
setFilter: filterCustomConfirm
|
|
677
708
|
});
|
|
678
709
|
}
|
|
679
|
-
|
|
680
|
-
|
|
710
|
+
var arr = filterHead.enums || [];
|
|
711
|
+
var str = 'filter-select';
|
|
681
712
|
if (arr.length === 0) str += ' filter-select-none';
|
|
682
713
|
return jsx("div", Object.assign({
|
|
683
714
|
className: str
|
|
@@ -692,8 +723,8 @@ const TableHead$1 = props => {
|
|
|
692
723
|
children: [jsx("div", Object.assign({
|
|
693
724
|
className: "filter-select-box"
|
|
694
725
|
}, {
|
|
695
|
-
children: arr.map((item, index)
|
|
696
|
-
|
|
726
|
+
children: arr.map(function (item, index) {
|
|
727
|
+
var checked = filterValue.indexOf(item.value) !== -1;
|
|
697
728
|
return jsxs("div", Object.assign({
|
|
698
729
|
onClick: clickFilter(item),
|
|
699
730
|
className: checked ? 'filter-select-item filter-select-item-select' : 'filter-select-item'
|
|
@@ -732,28 +763,30 @@ const TableHead$1 = props => {
|
|
|
732
763
|
}));
|
|
733
764
|
};
|
|
734
765
|
// 表格列拖拽放下
|
|
735
|
-
|
|
736
|
-
|
|
766
|
+
var onDragDown = function onDragDown(headCell) {
|
|
767
|
+
return function (result) {
|
|
768
|
+
changeColumnWidth && changeColumnWidth(headCell, result);
|
|
769
|
+
};
|
|
737
770
|
};
|
|
738
771
|
// 获取宽度
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
772
|
+
var getWidth = function getWidth(item) {
|
|
773
|
+
var w = item.width || '';
|
|
774
|
+
var name = item.name || '';
|
|
775
|
+
var wDrag = headDataConfig[name] && headDataConfig[name].width;
|
|
743
776
|
if (wDrag) w = "".concat(wDrag, "px");
|
|
744
777
|
return w;
|
|
745
778
|
};
|
|
746
779
|
// 内容列memo
|
|
747
|
-
|
|
780
|
+
var TableContentMemo = useMemo(function () {
|
|
748
781
|
// 处理过滤的class
|
|
749
|
-
|
|
750
|
-
|
|
782
|
+
var handFilterClass = function handFilterClass(item) {
|
|
783
|
+
var str = 'table-header-filter';
|
|
751
784
|
if (filterHead.name === item.name) str += ' table-header-filter-show';
|
|
752
785
|
if (item.name && selectFilterCom[item.name] && selectFilterCom[item.name].length > 0) str += ' table-header-filter-select';
|
|
753
786
|
return str;
|
|
754
787
|
};
|
|
755
|
-
|
|
756
|
-
|
|
788
|
+
var handCls = function handCls(item) {
|
|
789
|
+
var str = '';
|
|
757
790
|
if (item.className) str += item.className;
|
|
758
791
|
if (fixedColumn && item.fixed) {
|
|
759
792
|
str += " table-fixed-dom-".concat(item.fixed);
|
|
@@ -768,8 +801,8 @@ const TableHead$1 = props => {
|
|
|
768
801
|
}
|
|
769
802
|
return str;
|
|
770
803
|
};
|
|
771
|
-
|
|
772
|
-
|
|
804
|
+
var handStyle = function handStyle(item) {
|
|
805
|
+
var json = {
|
|
773
806
|
width: getWidth(item)
|
|
774
807
|
};
|
|
775
808
|
if (fixedColumn && item.fixed && item.width) {
|
|
@@ -783,13 +816,13 @@ const TableHead$1 = props => {
|
|
|
783
816
|
return Object.assign(Object.assign({}, json), item.style);
|
|
784
817
|
};
|
|
785
818
|
// 处理拖拽
|
|
786
|
-
|
|
819
|
+
var handDrag = function handDrag(item) {
|
|
787
820
|
if (item.name === 'table-serial-number') return false; // 序号不拖拽
|
|
788
821
|
if (dragColumn && item.drag !== false) return true;
|
|
789
822
|
return false;
|
|
790
823
|
};
|
|
791
|
-
return headData.map((headCell, index)
|
|
792
|
-
|
|
824
|
+
return headData.map(function (headCell, index) {
|
|
825
|
+
var str = "".concat($prefixCls, "-filter-popover ").concat($prefixCls, "-scrollbar-small");
|
|
793
826
|
if (!headCell.filterRender) str += " ".concat($prefixCls, "-filter-popover-default");
|
|
794
827
|
return jsx(ThElement, Object.assign({
|
|
795
828
|
className: handCls(headCell),
|
|
@@ -800,13 +833,18 @@ const TableHead$1 = props => {
|
|
|
800
833
|
onDragDown: onDragDown(headCell),
|
|
801
834
|
lineWidth: lineWidth
|
|
802
835
|
}, {
|
|
803
|
-
children: jsx(Popover
|
|
836
|
+
children: jsx(Popover
|
|
837
|
+
//key={headCell.name}
|
|
838
|
+
, Object.assign({
|
|
839
|
+
//key={headCell.name}
|
|
804
840
|
placement: "bottom-start",
|
|
805
841
|
visible: headCell.name !== undefined && filterHead.name === headCell.name,
|
|
806
|
-
content: filterPopoverContent(),
|
|
842
|
+
content: headCell.name !== undefined && filterHead.name === headCell.name && filterPopoverContent(),
|
|
807
843
|
onVisibleChange: clickHideFilter,
|
|
808
844
|
overlayClassName: str,
|
|
809
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
845
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
846
|
+
return document.body;
|
|
847
|
+
},
|
|
810
848
|
maxWidth: headCell.filterMaxWidth
|
|
811
849
|
}, {
|
|
812
850
|
children: jsxs("div", Object.assign({
|
|
@@ -851,10 +889,10 @@ const TableHead$1 = props => {
|
|
|
851
889
|
});
|
|
852
890
|
}, [headData, sortTable, filter, orderFieldArr, orderTypeArr, align, filterHead, selectFilterCom, beyondText, selectFilter, fixedColumn, lineWidth, dragColumn, changeColumnWidth, headDataConfig, getPopupContainer, tipMaxWidth]);
|
|
853
891
|
// 操作栏memo
|
|
854
|
-
|
|
892
|
+
var TableOperateMemo = useMemo(function () {
|
|
855
893
|
if (operate) {
|
|
856
|
-
|
|
857
|
-
|
|
894
|
+
var handCls = function handCls() {
|
|
895
|
+
var str = 'table-operate';
|
|
858
896
|
if (operate.operateBtnRender) str += ' table-operate-small';
|
|
859
897
|
if (showColumns === false) str += ' table-operate-not-columns';
|
|
860
898
|
if (dragRow) str += ' table-operate-drag-row';
|
|
@@ -867,8 +905,8 @@ const TableHead$1 = props => {
|
|
|
867
905
|
}
|
|
868
906
|
return str;
|
|
869
907
|
};
|
|
870
|
-
|
|
871
|
-
|
|
908
|
+
var handStyle = function handStyle() {
|
|
909
|
+
var json = {
|
|
872
910
|
width: operate.width
|
|
873
911
|
};
|
|
874
912
|
if (fixedColumn) {
|
|
@@ -904,16 +942,16 @@ const TableHead$1 = props => {
|
|
|
904
942
|
}
|
|
905
943
|
}, [operate, align, posFixed, showColumns, posFixed, beyondText, fixedColumn, tipMaxWidth, dragRow]);
|
|
906
944
|
// 显示列弹窗内容
|
|
907
|
-
|
|
945
|
+
var showListContent = function showListContent() {
|
|
908
946
|
return jsxs("div", Object.assign({
|
|
909
947
|
className: "show-colums-select"
|
|
910
948
|
}, {
|
|
911
949
|
children: [jsx("div", Object.assign({
|
|
912
950
|
className: "show-colums-select-box"
|
|
913
951
|
}, {
|
|
914
|
-
children: showList.map((item, index)
|
|
915
|
-
|
|
916
|
-
|
|
952
|
+
children: showList.map(function (item, index) {
|
|
953
|
+
var checked = Boolean(headDataJson[item.name]);
|
|
954
|
+
var str = 'show-colums-select-item';
|
|
917
955
|
if (checked) str += ' show-colums-select-item-select';
|
|
918
956
|
if (item.disabledSelection) str += ' show-colums-select-item-disabled';
|
|
919
957
|
return jsxs("div", Object.assign({
|
|
@@ -947,9 +985,9 @@ const TableHead$1 = props => {
|
|
|
947
985
|
}));
|
|
948
986
|
};
|
|
949
987
|
// 显示列memo
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
988
|
+
var TableShowList = useMemo(function () {
|
|
989
|
+
var handCls = function handCls() {
|
|
990
|
+
var str = 'show-colums table-fixed-dom-right';
|
|
953
991
|
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
954
992
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
955
993
|
str += ' table-fixed-dom-right-first';
|
|
@@ -962,7 +1000,9 @@ const TableHead$1 = props => {
|
|
|
962
1000
|
content: showListContent(),
|
|
963
1001
|
onVisibleChange: clickHideColums,
|
|
964
1002
|
overlayClassName: "".concat($prefixCls, "-table-show-colums-popover ").concat($prefixCls, "-scrollbar-small"),
|
|
965
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
1003
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
1004
|
+
return document.body;
|
|
1005
|
+
}
|
|
966
1006
|
}, {
|
|
967
1007
|
children: jsx(ThElement, Object.assign({
|
|
968
1008
|
align: "center",
|
|
@@ -979,10 +1019,10 @@ const TableHead$1 = props => {
|
|
|
979
1019
|
}));
|
|
980
1020
|
}, [showColumns, posFixed, operate, anchorElColums, showList, headDataJson, getPopupContainer, tipMaxWidth]);
|
|
981
1021
|
// 拖动行
|
|
982
|
-
|
|
1022
|
+
var TbaleDragRow = useMemo(function () {
|
|
983
1023
|
if (!dragRow || operate || showColumns === 'inside') return null;
|
|
984
|
-
|
|
985
|
-
|
|
1024
|
+
var handCls = function handCls() {
|
|
1025
|
+
var str = 'drag-row table-fixed-dom-right';
|
|
986
1026
|
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
987
1027
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
988
1028
|
str += ' table-fixed-dom-right-first';
|
|
@@ -996,8 +1036,8 @@ const TableHead$1 = props => {
|
|
|
996
1036
|
});
|
|
997
1037
|
}, [operate, showColumns, fixedColumn, posFixed, dragRow]);
|
|
998
1038
|
// 处理class
|
|
999
|
-
|
|
1000
|
-
|
|
1039
|
+
var handClass = function handClass() {
|
|
1040
|
+
var str = 'table-head';
|
|
1001
1041
|
if (showColumns === 'inside') str += ' table-head-inside';
|
|
1002
1042
|
if (!fixedTable) str += ' table-head-scroll'; // 防止长度过长
|
|
1003
1043
|
// 没有 复选框,单选框,展开 按钮
|
|
@@ -1075,74 +1115,98 @@ var TdElement = function TdElement(props) {
|
|
|
1075
1115
|
}));
|
|
1076
1116
|
};
|
|
1077
1117
|
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
rowData = [],
|
|
1083
|
-
rowKey =
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1118
|
+
var TableBody = function TableBody(props) {
|
|
1119
|
+
var url = props.url,
|
|
1120
|
+
emptyProps = props.emptyProps,
|
|
1121
|
+
_props$rowData = props.rowData,
|
|
1122
|
+
rowData = _props$rowData === void 0 ? [] : _props$rowData,
|
|
1123
|
+
_props$rowKey = props.rowKey,
|
|
1124
|
+
rowKey = _props$rowKey === void 0 ? 'key' : _props$rowKey,
|
|
1125
|
+
check = props.check,
|
|
1126
|
+
radio = props.radio,
|
|
1127
|
+
tableCell = props.tableCell,
|
|
1128
|
+
expandable = props.expandable,
|
|
1129
|
+
_props$headData = props.headData,
|
|
1130
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
1131
|
+
_props$disabledJson = props.disabledJson,
|
|
1132
|
+
disabledJson = _props$disabledJson === void 0 ? {} : _props$disabledJson,
|
|
1133
|
+
disabledArrStatus = props.disabledArrStatus,
|
|
1134
|
+
_props$checkJson = props.checkJson,
|
|
1135
|
+
checkJson = _props$checkJson === void 0 ? {} : _props$checkJson,
|
|
1136
|
+
radioValue = props.radioValue,
|
|
1137
|
+
selectCheck = props.selectCheck,
|
|
1138
|
+
selectRadio = props.selectRadio,
|
|
1139
|
+
align = props.align,
|
|
1140
|
+
operate = props.operate,
|
|
1141
|
+
showColumns = props.showColumns,
|
|
1142
|
+
fixedTable = props.fixedTable,
|
|
1143
|
+
fixedColumn = props.fixedColumn,
|
|
1144
|
+
formatter = props.formatter,
|
|
1145
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
1146
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
1147
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
1148
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
1149
|
+
sortTable = props.sortTable,
|
|
1150
|
+
loadState = props.loadState,
|
|
1151
|
+
loadMore = props.loadMore,
|
|
1152
|
+
loadMoreRender = props.loadMoreRender,
|
|
1153
|
+
onClickMore = props.onClickMore,
|
|
1154
|
+
total = props.total,
|
|
1155
|
+
page = props.page,
|
|
1156
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1157
|
+
changePage = props.changePage,
|
|
1158
|
+
loadMoreUrl = props.loadMoreUrl,
|
|
1159
|
+
_props$expandMultiple = props.expandMultiple,
|
|
1160
|
+
expandMultiple = _props$expandMultiple === void 0 ? false : _props$expandMultiple,
|
|
1161
|
+
_props$expandValue = props.expandValue,
|
|
1162
|
+
expandValue = _props$expandValue === void 0 ? [] : _props$expandValue,
|
|
1163
|
+
_props$disabledExpand = props.disabledExpand,
|
|
1164
|
+
disabledExpand = _props$disabledExpand === void 0 ? [] : _props$disabledExpand,
|
|
1165
|
+
_props$defaultExpandA = props.defaultExpandAllRows,
|
|
1166
|
+
defaultExpandAllRows = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,
|
|
1167
|
+
onExpand = props.onExpand,
|
|
1168
|
+
_onRefresh = props.onRefresh,
|
|
1169
|
+
posFixed = props.posFixed,
|
|
1170
|
+
beyondText = props.beyondText,
|
|
1171
|
+
onClickRow = props.onClickRow,
|
|
1172
|
+
rowClassMapping = props.rowClassMapping,
|
|
1173
|
+
tipMaxWidth = props.tipMaxWidth,
|
|
1174
|
+
lineHeight = props.lineHeight,
|
|
1175
|
+
dragRow = props.dragRow,
|
|
1176
|
+
onDragRow = props.onDragRow;
|
|
1177
|
+
var _useState = useState(0),
|
|
1178
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1179
|
+
expandableColSpan = _useState2[0],
|
|
1180
|
+
setExpandableColSpan = _useState2[1]; // 嵌套表格合并列数
|
|
1181
|
+
var _useState3 = useState({}),
|
|
1182
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1183
|
+
expandableRow = _useState4[0],
|
|
1184
|
+
setExpandableRow = _useState4[1]; // 当前哪行展开表格嵌套
|
|
1185
|
+
var _useState5 = useState(true),
|
|
1186
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
1187
|
+
showMoreBtn = _useState6[0],
|
|
1188
|
+
setShowMoreBtn = _useState6[1]; // 加载更多
|
|
1189
|
+
var _useState7 = useState({}),
|
|
1190
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
1191
|
+
disabledExpandJson = _useState8[0],
|
|
1192
|
+
setDisabledExpand = _useState8[1]; // 禁用加减部分嵌套
|
|
1193
|
+
var _useState9 = useState(false),
|
|
1194
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
1195
|
+
dragBol = _useState10[0],
|
|
1196
|
+
setDragBol = _useState10[1];
|
|
1197
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1134
1198
|
// 默认是否展开所有
|
|
1135
|
-
useEffect(()
|
|
1199
|
+
useEffect(function () {
|
|
1136
1200
|
if (!defaultExpandAllRows) {
|
|
1137
1201
|
setExpandableRow({});
|
|
1138
1202
|
return;
|
|
1139
1203
|
}
|
|
1140
|
-
|
|
1141
|
-
for (
|
|
1142
|
-
|
|
1143
|
-
|
|
1204
|
+
var json = {};
|
|
1205
|
+
for (var i = 0, l = rowData.length; i < l; i++) {
|
|
1206
|
+
var item = rowData[i] || {};
|
|
1207
|
+
var id = item[rowKey];
|
|
1144
1208
|
json[id] = {
|
|
1145
|
-
id,
|
|
1209
|
+
id: id,
|
|
1146
1210
|
status: 'develop'
|
|
1147
1211
|
};
|
|
1148
1212
|
}
|
|
@@ -1150,41 +1214,41 @@ const TableBody = props => {
|
|
|
1150
1214
|
}, [defaultExpandAllRows, rowData, rowKey]);
|
|
1151
1215
|
// 监听展开表格
|
|
1152
1216
|
// 如果直接写expandMultiple, expandValue会死循环
|
|
1153
|
-
useEffect(()
|
|
1217
|
+
useEffect(function () {
|
|
1154
1218
|
if (props.expandValue === undefined) return;
|
|
1155
|
-
|
|
1156
|
-
|
|
1219
|
+
var json = {};
|
|
1220
|
+
var expandValueHand = expandValue;
|
|
1157
1221
|
// 只展开一个,去第一个值
|
|
1158
1222
|
if (!expandMultiple && expandValue.length > 0) {
|
|
1159
1223
|
expandValueHand = [expandValue[0]];
|
|
1160
1224
|
}
|
|
1161
|
-
for (
|
|
1162
|
-
|
|
1225
|
+
for (var i = 0, l = expandValueHand.length; i < l; i++) {
|
|
1226
|
+
var id = expandValueHand[i];
|
|
1163
1227
|
json[id] = {
|
|
1164
|
-
id,
|
|
1228
|
+
id: id,
|
|
1165
1229
|
status: 'develop'
|
|
1166
1230
|
};
|
|
1167
1231
|
}
|
|
1168
1232
|
setExpandableRow(json);
|
|
1169
1233
|
}, [props.expandMultiple, props.expandValue, rowData]);
|
|
1170
1234
|
// 监听禁用嵌套 props.disabledExpand 防止死循环
|
|
1171
|
-
useEffect(()
|
|
1172
|
-
|
|
1173
|
-
for (
|
|
1174
|
-
|
|
1235
|
+
useEffect(function () {
|
|
1236
|
+
var json = {};
|
|
1237
|
+
for (var i = 0, l = disabledExpand.length; i < l; i++) {
|
|
1238
|
+
var id = disabledExpand[i];
|
|
1175
1239
|
json[id] = true;
|
|
1176
1240
|
}
|
|
1177
1241
|
setDisabledExpand(json);
|
|
1178
1242
|
}, [props.disabledExpand]);
|
|
1179
|
-
useEffect(()
|
|
1243
|
+
useEffect(function () {
|
|
1180
1244
|
if (loadMoreUrl) {
|
|
1181
|
-
|
|
1245
|
+
var bol = Number(total) > Number(page) * Number(currentRowsPerPage);
|
|
1182
1246
|
setShowMoreBtn(bol);
|
|
1183
1247
|
}
|
|
1184
1248
|
}, [loadMoreUrl, total, page, currentRowsPerPage]);
|
|
1185
1249
|
// 处理嵌套表格合并列数
|
|
1186
|
-
useEffect(()
|
|
1187
|
-
|
|
1250
|
+
useEffect(function () {
|
|
1251
|
+
var num = headData.length;
|
|
1188
1252
|
if (expandable) num += 1;
|
|
1189
1253
|
if (check) num += 1;
|
|
1190
1254
|
if (radio) num += 1;
|
|
@@ -1193,55 +1257,55 @@ const TableBody = props => {
|
|
|
1193
1257
|
setExpandableColSpan(num);
|
|
1194
1258
|
}, [headData, expandable, check, radio]);
|
|
1195
1259
|
// 展开/收起嵌套表格
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1260
|
+
var handClickNestTable = function handClickNestTable(row) {
|
|
1261
|
+
return function (event) {
|
|
1262
|
+
var id = row[rowKey];
|
|
1263
|
+
var expandItem = expandableRow[id] || {};
|
|
1264
|
+
var status = 'develop';
|
|
1265
|
+
if (expandItem.status === 'develop') status = 'retract';
|
|
1266
|
+
expandItem = {
|
|
1267
|
+
id: id,
|
|
1268
|
+
status: status
|
|
1269
|
+
};
|
|
1270
|
+
if (expandMultiple) {
|
|
1271
|
+
// 展开多个
|
|
1272
|
+
expandableRow[id] = expandItem;
|
|
1273
|
+
setExpandableRow(Object.assign({}, expandableRow));
|
|
1274
|
+
} else {
|
|
1275
|
+
// 展开一个
|
|
1276
|
+
setExpandableRow(_defineProperty({}, id, expandItem));
|
|
1277
|
+
}
|
|
1278
|
+
onExpand && onExpand(row, status);
|
|
1279
|
+
event.stopPropagation();
|
|
1204
1280
|
};
|
|
1205
|
-
if (expandMultiple) {
|
|
1206
|
-
// 展开多个
|
|
1207
|
-
expandableRow[id] = expandItem;
|
|
1208
|
-
setExpandableRow(Object.assign({}, expandableRow));
|
|
1209
|
-
} else {
|
|
1210
|
-
// 展开一个
|
|
1211
|
-
setExpandableRow({
|
|
1212
|
-
[id]: expandItem
|
|
1213
|
-
});
|
|
1214
|
-
}
|
|
1215
|
-
onExpand && onExpand(row, status);
|
|
1216
|
-
event.stopPropagation();
|
|
1217
1281
|
};
|
|
1218
1282
|
// 处理class
|
|
1219
|
-
|
|
1220
|
-
|
|
1283
|
+
var handClass = function handClass() {
|
|
1284
|
+
var str = 'table-body';
|
|
1221
1285
|
if (!fixedTable) str += ' table-body-scroll';
|
|
1222
1286
|
// 没有 复选框,单选框,展开 按钮
|
|
1223
1287
|
if (!check && !radio && !expandable) str += ' table-body-no-btn';
|
|
1224
1288
|
return str;
|
|
1225
1289
|
};
|
|
1226
1290
|
// 处理嵌套表格class
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1291
|
+
var handExpandClass = function handExpandClass(row) {
|
|
1292
|
+
var id = row[rowKey];
|
|
1293
|
+
var expandItem = expandableRow[id] || {};
|
|
1294
|
+
var str = 'retract';
|
|
1231
1295
|
if (expandItem.status === 'develop') {
|
|
1232
1296
|
str = 'expand';
|
|
1233
1297
|
}
|
|
1234
1298
|
return str;
|
|
1235
1299
|
};
|
|
1236
1300
|
// 点击加载更多
|
|
1237
|
-
|
|
1301
|
+
var clickMore = function clickMore() {
|
|
1238
1302
|
if (loadMoreUrl) changePage && changePage();
|
|
1239
1303
|
onClickMore && onClickMore();
|
|
1240
1304
|
};
|
|
1241
1305
|
// 暂无数据memo
|
|
1242
|
-
|
|
1306
|
+
var NodataMemo = useMemo(function () {
|
|
1243
1307
|
// 处理刷新按钮
|
|
1244
|
-
|
|
1308
|
+
var handRefreshBtn = function handRefreshBtn() {
|
|
1245
1309
|
if ((emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh) !== undefined) {
|
|
1246
1310
|
return emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh;
|
|
1247
1311
|
}
|
|
@@ -1251,8 +1315,8 @@ const TableBody = props => {
|
|
|
1251
1315
|
return false;
|
|
1252
1316
|
};
|
|
1253
1317
|
// 处理className
|
|
1254
|
-
|
|
1255
|
-
|
|
1318
|
+
var handClassNoData = function handClassNoData() {
|
|
1319
|
+
var str = 'table-no-data';
|
|
1256
1320
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size) str += " table-no-data-".concat(emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size);
|
|
1257
1321
|
return str;
|
|
1258
1322
|
};
|
|
@@ -1265,24 +1329,24 @@ const TableBody = props => {
|
|
|
1265
1329
|
}, {
|
|
1266
1330
|
children: jsx(Empty, Object.assign({}, emptyProps, {
|
|
1267
1331
|
showRefresh: handRefreshBtn(),
|
|
1268
|
-
onRefresh: event
|
|
1332
|
+
onRefresh: function onRefresh(event) {
|
|
1269
1333
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh) {
|
|
1270
1334
|
emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh(event);
|
|
1271
1335
|
return;
|
|
1272
1336
|
}
|
|
1273
|
-
|
|
1337
|
+
_onRefresh && _onRefresh();
|
|
1274
1338
|
}
|
|
1275
1339
|
}))
|
|
1276
1340
|
}))
|
|
1277
1341
|
}));
|
|
1278
|
-
}, [expandableColSpan, emptyProps, url,
|
|
1342
|
+
}, [expandableColSpan, emptyProps, url, _onRefresh]);
|
|
1279
1343
|
// 复选框useCallback
|
|
1280
|
-
|
|
1344
|
+
var TableCheckCallback = useCallback(function (row) {
|
|
1281
1345
|
if (check) {
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1346
|
+
var handId = row[rowKey];
|
|
1347
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1348
|
+
var checkHand = checkJson[handId] || false;
|
|
1349
|
+
var showCheck = true;
|
|
1286
1350
|
if (disabledHand && disabledArrStatus) {
|
|
1287
1351
|
// 选中
|
|
1288
1352
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1297,8 +1361,8 @@ const TableBody = props => {
|
|
|
1297
1361
|
showCheck = false;
|
|
1298
1362
|
}
|
|
1299
1363
|
}
|
|
1300
|
-
|
|
1301
|
-
|
|
1364
|
+
var handCls = function handCls() {
|
|
1365
|
+
var str = 'table-checkbox table-body-btn';
|
|
1302
1366
|
if (fixedColumn) {
|
|
1303
1367
|
str += ' table-fixed-dom-left';
|
|
1304
1368
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -1315,7 +1379,7 @@ const TableBody = props => {
|
|
|
1315
1379
|
children: showCheck && jsx(Checkbox, {
|
|
1316
1380
|
disabled: disabledHand,
|
|
1317
1381
|
checked: checkHand,
|
|
1318
|
-
onChange: (event, bol)
|
|
1382
|
+
onChange: function onChange(event, bol) {
|
|
1319
1383
|
event.stopPropagation();
|
|
1320
1384
|
selectCheck && selectCheck(event, bol, row[rowKey]);
|
|
1321
1385
|
}
|
|
@@ -1324,12 +1388,12 @@ const TableBody = props => {
|
|
|
1324
1388
|
}
|
|
1325
1389
|
}, [check, disabledJson, rowKey, checkJson, selectCheck, disabledArrStatus, posFixed, expandable, radio, fixedColumn]);
|
|
1326
1390
|
// 单选框useCallback
|
|
1327
|
-
|
|
1391
|
+
var TableRadioCallback = useCallback(function (row) {
|
|
1328
1392
|
if (radio) {
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1393
|
+
var handId = row[rowKey];
|
|
1394
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1395
|
+
var checkHand = radioValue === row[rowKey];
|
|
1396
|
+
var showRadio = true;
|
|
1333
1397
|
if (disabledHand && disabledArrStatus) {
|
|
1334
1398
|
// 选中
|
|
1335
1399
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1344,8 +1408,8 @@ const TableBody = props => {
|
|
|
1344
1408
|
showRadio = false;
|
|
1345
1409
|
}
|
|
1346
1410
|
}
|
|
1347
|
-
|
|
1348
|
-
|
|
1411
|
+
var handCls = function handCls() {
|
|
1412
|
+
var str = 'table-radio table-body-btn';
|
|
1349
1413
|
if (fixedColumn) {
|
|
1350
1414
|
str += ' table-fixed-dom-left';
|
|
1351
1415
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1362,7 +1426,7 @@ const TableBody = props => {
|
|
|
1362
1426
|
children: showRadio && jsx(Radio, {
|
|
1363
1427
|
disabled: disabledHand,
|
|
1364
1428
|
checked: checkHand,
|
|
1365
|
-
onChange: event
|
|
1429
|
+
onChange: function onChange(event) {
|
|
1366
1430
|
event.stopPropagation();
|
|
1367
1431
|
selectRadio && selectRadio(event, row[rowKey]);
|
|
1368
1432
|
}
|
|
@@ -1371,13 +1435,13 @@ const TableBody = props => {
|
|
|
1371
1435
|
}
|
|
1372
1436
|
}, [radio, disabledJson, radioValue, rowKey, selectRadio, disabledArrStatus, expandable, posFixed, fixedColumn]);
|
|
1373
1437
|
// 嵌套加减useCallback
|
|
1374
|
-
|
|
1438
|
+
var TableExpandableMemo = useCallback(function (row) {
|
|
1375
1439
|
if (!expandable) return null;
|
|
1376
|
-
|
|
1440
|
+
var expandableDemo = expandable(row);
|
|
1377
1441
|
// 禁用一行表格展开 或者 展开表格返回值为false,返回空列
|
|
1378
1442
|
if (disabledExpandJson[row[rowKey]] || expandableDemo === false) return jsx(TdElement, {});
|
|
1379
|
-
|
|
1380
|
-
|
|
1443
|
+
var handCls = function handCls() {
|
|
1444
|
+
var str = 'table-expandable table-body-btn';
|
|
1381
1445
|
if (fixedColumn) {
|
|
1382
1446
|
str += ' table-fixed-dom-left';
|
|
1383
1447
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1398,17 +1462,17 @@ const TableBody = props => {
|
|
|
1398
1462
|
}));
|
|
1399
1463
|
}, [expandable, expandableRow, rowKey, disabledExpandJson, onExpand, fixedColumn]);
|
|
1400
1464
|
// 表格一行内容useCallback
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
orderFieldArr,
|
|
1404
|
-
orderTypeArr
|
|
1465
|
+
var TableContentUseCallback = useCallback(function (row, rowIndex) {
|
|
1466
|
+
var params = {
|
|
1467
|
+
orderFieldArr: orderFieldArr,
|
|
1468
|
+
orderTypeArr: orderTypeArr
|
|
1405
1469
|
};
|
|
1406
|
-
|
|
1407
|
-
|
|
1470
|
+
var handContentClass = function handContentClass(item) {
|
|
1471
|
+
var str = 'table-content-columms';
|
|
1408
1472
|
if (item.className) str += " ".concat(item.className);
|
|
1409
1473
|
// 排序
|
|
1410
1474
|
if (sortTable && item.name && item.sort !== false) {
|
|
1411
|
-
|
|
1475
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
1412
1476
|
if (index !== -1) {
|
|
1413
1477
|
// 升序
|
|
1414
1478
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -1433,8 +1497,8 @@ const TableBody = props => {
|
|
|
1433
1497
|
}
|
|
1434
1498
|
return str;
|
|
1435
1499
|
};
|
|
1436
|
-
|
|
1437
|
-
|
|
1500
|
+
var handStyle = function handStyle(item) {
|
|
1501
|
+
var json = {};
|
|
1438
1502
|
if (fixedColumn && item.fixed && item.width) {
|
|
1439
1503
|
if (item.fixed === 'left') {
|
|
1440
1504
|
json.left = "".concat(item.paraui_left_width, "px");
|
|
@@ -1445,12 +1509,12 @@ const TableBody = props => {
|
|
|
1445
1509
|
}
|
|
1446
1510
|
return json;
|
|
1447
1511
|
};
|
|
1448
|
-
return tableCell ? tableCell(row, params) : headData.map((item, index)
|
|
1449
|
-
|
|
1450
|
-
|
|
1512
|
+
return tableCell ? tableCell(row, params) : headData.map(function (item, index) {
|
|
1513
|
+
var text = row[item.name];
|
|
1514
|
+
var colSpan = 1;
|
|
1451
1515
|
if (item.render) text = item.render(row, item, row[item.name], index, rowIndex);
|
|
1452
1516
|
if (formatter) text = formatter(row, item, row[item.name], index, rowIndex);
|
|
1453
|
-
|
|
1517
|
+
var itemStyle = handStyle(item);
|
|
1454
1518
|
// 存在显示列,最后一列占两格
|
|
1455
1519
|
if (showColumns === 'inside' && !operate && index === headData.length - 1 && !dragRow) {
|
|
1456
1520
|
colSpan = 2;
|
|
@@ -1474,25 +1538,25 @@ const TableBody = props => {
|
|
|
1474
1538
|
});
|
|
1475
1539
|
}, [tableCell, headData, align, formatter, orderFieldArr, orderTypeArr, sortTable, showColumns, operate, beyondText, fixedColumn, tipMaxWidth, dragRow]);
|
|
1476
1540
|
// 操作栏useCallback
|
|
1477
|
-
|
|
1541
|
+
var TableOperateUseCallback = useCallback(function (row, rowIndex) {
|
|
1478
1542
|
if (operate || dragRow) {
|
|
1479
|
-
|
|
1543
|
+
var colSpan = 1;
|
|
1480
1544
|
if (showColumns === 'inside' && operate) colSpan = 2;
|
|
1481
|
-
|
|
1545
|
+
var handOperate = function handOperate() {
|
|
1482
1546
|
if (operate === null || operate === void 0 ? void 0 : operate.render) return operate.render(row);
|
|
1483
1547
|
if (operate === null || operate === void 0 ? void 0 : operate.operateBtnRender) {
|
|
1484
|
-
|
|
1548
|
+
var operateConfig = operate.operateBtnRender(row, rowIndex);
|
|
1485
1549
|
return jsx(OperateBtn, Object.assign({}, operateConfig));
|
|
1486
1550
|
}
|
|
1487
1551
|
};
|
|
1488
|
-
|
|
1489
|
-
|
|
1552
|
+
var handStyle = function handStyle() {
|
|
1553
|
+
var json = {
|
|
1490
1554
|
right: '0'
|
|
1491
1555
|
};
|
|
1492
1556
|
return json;
|
|
1493
1557
|
};
|
|
1494
|
-
|
|
1495
|
-
|
|
1558
|
+
var handCls = function handCls() {
|
|
1559
|
+
var str = 'table-operate';
|
|
1496
1560
|
if (!operate) str += ' table-operate-center';
|
|
1497
1561
|
if (fixedColumn) {
|
|
1498
1562
|
str += ' table-fixed-dom-right';
|
|
@@ -1533,11 +1597,11 @@ const TableBody = props => {
|
|
|
1533
1597
|
}
|
|
1534
1598
|
}, [operate, align, showColumns, posFixed, fixedColumn, dragRow, onDragRow, dragBol]);
|
|
1535
1599
|
// 嵌套表格useCallback
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1600
|
+
var TableExpandableContentUseCallback = useCallback(function (row) {
|
|
1601
|
+
var id = row[rowKey];
|
|
1602
|
+
var expandItem = expandableRow[id] || {};
|
|
1539
1603
|
if (expandable && expandItem.status === 'develop') {
|
|
1540
|
-
|
|
1604
|
+
var expandableDemo = expandable(row);
|
|
1541
1605
|
if (expandableDemo === false) return null; // 展开表格返回值为false,不展示这一行
|
|
1542
1606
|
return jsx(TrElement, Object.assign({
|
|
1543
1607
|
className: "table-body-expand-row"
|
|
@@ -1552,7 +1616,7 @@ const TableBody = props => {
|
|
|
1552
1616
|
}
|
|
1553
1617
|
}, [expandable, expandableRow, expandableColSpan, rowKey]);
|
|
1554
1618
|
// 加载更多
|
|
1555
|
-
|
|
1619
|
+
var MoreMemo = useMemo(function () {
|
|
1556
1620
|
if (!loadMore || !showMoreBtn) return null;
|
|
1557
1621
|
return jsx(TrElement, Object.assign({
|
|
1558
1622
|
className: "more-table-row",
|
|
@@ -1575,10 +1639,10 @@ const TableBody = props => {
|
|
|
1575
1639
|
}))
|
|
1576
1640
|
}));
|
|
1577
1641
|
}, [expandableColSpan, loadMore, loadMoreRender, onClickMore, showMoreBtn, changePage, loadMoreUrl, lineHeight]);
|
|
1578
|
-
|
|
1642
|
+
var TableBodySubjectContentMemo = useMemo(function () {
|
|
1579
1643
|
return jsx(Fragment, {
|
|
1580
|
-
children: rowData.map((row, index)
|
|
1581
|
-
|
|
1644
|
+
children: rowData.map(function (row, index) {
|
|
1645
|
+
var str = 'table-body-row';
|
|
1582
1646
|
if (rowClassMapping && rowClassMapping[row[rowKey]]) {
|
|
1583
1647
|
str += " ".concat(rowClassMapping[row[rowKey]]);
|
|
1584
1648
|
}
|
|
@@ -1588,7 +1652,7 @@ const TableBody = props => {
|
|
|
1588
1652
|
style: {
|
|
1589
1653
|
height: "".concat(lineHeight, "px")
|
|
1590
1654
|
},
|
|
1591
|
-
onClick: e
|
|
1655
|
+
onClick: function onClick(e) {
|
|
1592
1656
|
onClickRow && onClickRow(row, e);
|
|
1593
1657
|
}
|
|
1594
1658
|
}, {
|
|
@@ -1599,32 +1663,32 @@ const TableBody = props => {
|
|
|
1599
1663
|
});
|
|
1600
1664
|
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, disabledExpandJson, onExpand, disabledArrStatus, showColumns, onClickRow, rowClassMapping, tipMaxWidth, lineHeight, dragRow, onDragRow, dragBol]);
|
|
1601
1665
|
// 内容memo
|
|
1602
|
-
|
|
1666
|
+
var TableBodyContentMemo = useMemo(function () {
|
|
1603
1667
|
return jsxs(Fragment$1, {
|
|
1604
1668
|
children: [TableBodySubjectContentMemo, MoreMemo]
|
|
1605
1669
|
});
|
|
1606
1670
|
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, loadMore, loadMoreRender, onClickMore, changePage, loadMoreUrl, disabledExpandJson, onExpand, showMoreBtn, disabledArrStatus, showColumns, onClickRow, rowClassMapping, tipMaxWidth, lineHeight, dragRow, onDragRow, dragBol]);
|
|
1607
1671
|
// 处理内容
|
|
1608
|
-
|
|
1672
|
+
var handContent = function handContent() {
|
|
1609
1673
|
// 无数据,且不再请求,显示暂无数据
|
|
1610
1674
|
if (rowData.length === 0 && !loadState) return NodataMemo;
|
|
1611
1675
|
return TableBodyContentMemo;
|
|
1612
1676
|
};
|
|
1613
|
-
|
|
1614
|
-
|
|
1677
|
+
var handleRowData = function handleRowData() {
|
|
1678
|
+
var arr = [];
|
|
1615
1679
|
if (dragRow) {
|
|
1616
|
-
rowData.forEach(item
|
|
1617
|
-
|
|
1680
|
+
rowData.forEach(function (item) {
|
|
1681
|
+
var obj = {};
|
|
1618
1682
|
obj[rowKey] = item[rowKey];
|
|
1619
1683
|
arr.push(obj);
|
|
1620
1684
|
});
|
|
1621
1685
|
}
|
|
1622
1686
|
return arr;
|
|
1623
1687
|
};
|
|
1624
|
-
|
|
1688
|
+
var onChoose = function onChoose() {
|
|
1625
1689
|
setDragBol(true);
|
|
1626
1690
|
};
|
|
1627
|
-
|
|
1691
|
+
var onDragRowCom = function onDragRowCom(evt) {
|
|
1628
1692
|
setDragBol(false);
|
|
1629
1693
|
onDragRow && onDragRow(evt);
|
|
1630
1694
|
};
|
|
@@ -1640,29 +1704,35 @@ const TableBody = props => {
|
|
|
1640
1704
|
}));
|
|
1641
1705
|
};
|
|
1642
1706
|
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
checkNumber = 0,
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1707
|
+
var TableHead = function TableHead(props) {
|
|
1708
|
+
var paginationType = props.paginationType,
|
|
1709
|
+
flippingArrow = props.flippingArrow,
|
|
1710
|
+
autoPagination = props.autoPagination,
|
|
1711
|
+
total = props.total,
|
|
1712
|
+
page = props.page,
|
|
1713
|
+
rowsPerPage = props.rowsPerPage,
|
|
1714
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1715
|
+
changePage = props.changePage,
|
|
1716
|
+
changeRowsPerPage = props.changeRowsPerPage,
|
|
1717
|
+
refreshInside = props.refreshInside,
|
|
1718
|
+
checkCount = props.checkCount,
|
|
1719
|
+
onRefresh = props.onRefresh,
|
|
1720
|
+
selectAll = props.selectAll,
|
|
1721
|
+
selectStatus = props.selectStatus,
|
|
1722
|
+
_props$checkNumber = props.checkNumber,
|
|
1723
|
+
checkNumber = _props$checkNumber === void 0 ? 0 : _props$checkNumber,
|
|
1724
|
+
_props$currentPageTot = props.currentPageTotal,
|
|
1725
|
+
currentPageTotal = _props$currentPageTot === void 0 ? 0 : _props$currentPageTot;
|
|
1726
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1727
|
+
var _useState = useState(false),
|
|
1728
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1729
|
+
indeterminate = _useState2[0],
|
|
1730
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
1731
|
+
var _useState3 = useState(false),
|
|
1732
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1733
|
+
checked = _useState4[0],
|
|
1734
|
+
setChecked = _useState4[1]; // 选中
|
|
1735
|
+
useEffect(function () {
|
|
1666
1736
|
// 全选
|
|
1667
1737
|
if (selectStatus === 'all') {
|
|
1668
1738
|
setChecked(true);
|
|
@@ -1684,23 +1754,23 @@ const TableHead = props => {
|
|
|
1684
1754
|
* @param event 操作元素
|
|
1685
1755
|
* @param bol 选中 / 不选中
|
|
1686
1756
|
*/
|
|
1687
|
-
|
|
1757
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
1688
1758
|
if (selectAll) selectAll(event, bol);
|
|
1689
1759
|
};
|
|
1690
1760
|
// 改变页面
|
|
1691
|
-
|
|
1761
|
+
var changePageCom = function changePageCom(num) {
|
|
1692
1762
|
changePage && changePage(num);
|
|
1693
1763
|
};
|
|
1694
1764
|
// 改变每页显示条数
|
|
1695
|
-
|
|
1765
|
+
var changeRowsPerPageCom = function changeRowsPerPageCom(num) {
|
|
1696
1766
|
changeRowsPerPage && changeRowsPerPage(num);
|
|
1697
1767
|
};
|
|
1698
1768
|
// 刷新
|
|
1699
|
-
|
|
1769
|
+
var clickRefresh = function clickRefresh() {
|
|
1700
1770
|
onRefresh && onRefresh();
|
|
1701
1771
|
};
|
|
1702
1772
|
// 处理分页右侧
|
|
1703
|
-
|
|
1773
|
+
var handlePaginationRight = function handlePaginationRight() {
|
|
1704
1774
|
if (!checkCount) return null;
|
|
1705
1775
|
return jsxs("div", Object.assign({
|
|
1706
1776
|
className: 'table-pagination-right'
|
|
@@ -1723,8 +1793,8 @@ const TableHead = props => {
|
|
|
1723
1793
|
}));
|
|
1724
1794
|
};
|
|
1725
1795
|
// 处理样式
|
|
1726
|
-
|
|
1727
|
-
|
|
1796
|
+
var handleClass = function handleClass() {
|
|
1797
|
+
var str = 'table-pagination';
|
|
1728
1798
|
return str;
|
|
1729
1799
|
};
|
|
1730
1800
|
return jsxs("div", Object.assign({
|
|
@@ -1741,7 +1811,9 @@ const TableHead = props => {
|
|
|
1741
1811
|
currentRowsPerPage: currentRowsPerPage,
|
|
1742
1812
|
changePage: changePageCom,
|
|
1743
1813
|
changeRowsPerPage: changeRowsPerPageCom,
|
|
1744
|
-
getPopupContainer: ()
|
|
1814
|
+
getPopupContainer: function getPopupContainer() {
|
|
1815
|
+
return document.body;
|
|
1816
|
+
}
|
|
1745
1817
|
}), refreshInside && jsx(Button.IconButton, Object.assign({
|
|
1746
1818
|
className: 'refresh-btn',
|
|
1747
1819
|
variant: "outlined",
|
|
@@ -1755,16 +1827,14 @@ const TableHead = props => {
|
|
|
1755
1827
|
var css_248z$2 = ".table-container {\n overflow-x: auto;\n}";
|
|
1756
1828
|
styleInject(css_248z$2);
|
|
1757
1829
|
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
children
|
|
1764
|
-
} = props,
|
|
1830
|
+
var TableContainer = function TableContainer(props) {
|
|
1831
|
+
var cRef = props.cRef,
|
|
1832
|
+
className = props.className,
|
|
1833
|
+
style = props.style,
|
|
1834
|
+
children = props.children,
|
|
1765
1835
|
otherProps = __rest(props, ["cRef", "className", "style", "children"]);
|
|
1766
|
-
|
|
1767
|
-
|
|
1836
|
+
var handClass = function handClass() {
|
|
1837
|
+
var str = 'table-container';
|
|
1768
1838
|
if (className) str += " ".concat(className);
|
|
1769
1839
|
return str;
|
|
1770
1840
|
};
|
|
@@ -1780,16 +1850,14 @@ const TableContainer = props => {
|
|
|
1780
1850
|
var css_248z$1 = "@charset \"UTF-8\";\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.table-element {\n width: 100%;\n display: table;\n border-collapse: separate;\n border-spacing: 0;\n}\n.table-element.table-element-fixed-column > .table-body-element > .tr-element > .td-element {\n position: sticky;\n}\n.table-element > .table-head-element > .tr-element > .th-element {\n position: sticky;\n top: 0;\n z-index: 10;\n}\n.table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n height: 100%;\n width: 30px;\n position: absolute;\n top: 0;\n right: 0;\n transform: translate(100%);\n content: \"\";\n transition: box-shadow 0.3s;\n pointer-events: none;\n}\n.table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n height: 100%;\n width: 30px;\n position: absolute;\n top: 0;\n left: 0;\n transform: translate(-100%);\n content: \"\";\n transition: box-shadow 0.3s;\n pointer-events: none;\n}\n.table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-left {\n z-index: 11;\n}\n.table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-right {\n z-index: 11;\n}\n.table-element > .table-body-element > .tr-element > .td-element {\n z-index: 1;\n}\n.table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n height: 100%;\n width: 30px;\n position: absolute;\n top: 0;\n right: 0;\n transform: translate(100%);\n content: \"\";\n transition: box-shadow 0.3s;\n pointer-events: none;\n}\n.table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n height: 100%;\n width: 30px;\n position: absolute;\n top: 0;\n left: 0;\n transform: translate(-100%);\n content: \"\";\n transition: box-shadow 0.3s;\n pointer-events: none;\n}\n.table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-left {\n z-index: 2;\n}\n.table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-right {\n z-index: 2;\n}\n\n.table-scroll-left .table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n box-shadow: inset -10px 0 10px -8px rgb(234, 236, 241);\n}\n.table-scroll-left .table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n box-shadow: inset -10px 0 10px -8px rgb(234, 236, 241);\n}\n\n.table-scroll-right .table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n box-shadow: inset 10px 0 10px -8px rgb(234, 236, 241);\n}\n.table-scroll-right .table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n box-shadow: inset 10px 0 10px -8px rgb(234, 236, 241);\n}\n\n.table-scroll-middle .table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n box-shadow: inset 10px 0 10px -8px rgb(234, 236, 241);\n}\n.table-scroll-middle .table-element > .table-head-element > .tr-element > .th-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n box-shadow: inset -10px 0 10px -8px rgb(234, 236, 241);\n}\n.table-scroll-middle .table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-left.table-fixed-dom-left-last::after {\n box-shadow: inset 10px 0 10px -8px rgb(234, 236, 241);\n}\n.table-scroll-middle .table-element > .table-body-element > .tr-element > .td-element.table-fixed-dom-right.table-fixed-dom-right-first::after {\n box-shadow: inset -10px 0 10px -8px rgb(234, 236, 241);\n}";
|
|
1781
1851
|
styleInject(css_248z$1);
|
|
1782
1852
|
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
children
|
|
1789
|
-
} = props,
|
|
1853
|
+
var TableElement = function TableElement(props) {
|
|
1854
|
+
var className = props.className,
|
|
1855
|
+
style = props.style,
|
|
1856
|
+
fixedColumn = props.fixedColumn,
|
|
1857
|
+
children = props.children,
|
|
1790
1858
|
otherProps = __rest(props, ["className", "style", "fixedColumn", "children"]);
|
|
1791
|
-
|
|
1792
|
-
|
|
1859
|
+
var handClass = function handClass() {
|
|
1860
|
+
var str = 'table-element';
|
|
1793
1861
|
if (fixedColumn) str += ' table-element-fixed-column';
|
|
1794
1862
|
if (className) str += " ".concat(className);
|
|
1795
1863
|
return str;
|