@para-ui/core 4.0.43 → 4.0.45
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/CodeEditor/index.d.ts +164 -0
- package/CodeEditor/index.js +231 -0
- package/CodeEditor/lang/en_US.d.ts +7 -0
- package/CodeEditor/lang/index.d.ts +27 -0
- package/CodeEditor/lang/zh_CN.d.ts +7 -0
- package/CollapseLayout/index.d.ts +3 -1
- package/CollapseLayout/index.js +4 -2
- package/ComboSelect/index.js +2 -2
- package/DynamicMultiBox/index.js +2 -2
- package/Form/index.js +2 -2
- package/FormItem/index.js +2 -2
- package/Pagination/index.d.ts +2 -0
- package/Pagination/index.js +108 -61
- package/README.md +12 -0
- package/Select/index.js +2 -2
- package/Table/index.js +495 -427
- package/Table/interface.d.ts +2 -0
- package/Table/tablePaginationInterface.d.ts +2 -0
- package/index.d.ts +2 -0
- package/index.js +2 -1
- package/locale/en-US.d.ts +6 -0
- package/locale/index.d.ts +12 -0
- package/locale/index.js +12 -0
- package/locale/zh-CN.d.ts +6 -0
- package/package.json +1 -1
- package/umd/CodeEditor.js +31 -0
- package/umd/CollapseLayout.js +1 -1
- package/umd/ComboSelect.js +2 -2
- package/umd/DynamicMultiBox.js +2 -2
- package/umd/Form.js +2 -2
- package/umd/FormItem.js +2 -2
- package/umd/Pagination.js +2 -2
- package/umd/Table.js +3 -3
- package/umd/locale.js +1 -1
- /package/_verture/{index-4b1025fa.js → index-95e30df5.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, a as _defineProperty } from '../_verture/defineProperty-f0e15205.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';
|
|
@@ -62,25 +64,23 @@ import '@para-ui/icons/DoubleRight';
|
|
|
62
64
|
* 发送请求
|
|
63
65
|
* @param obj {ReqProps} 请求信息
|
|
64
66
|
*/
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
data
|
|
71
|
-
} = obj,
|
|
67
|
+
var requestFunc = function requestFunc(obj) {
|
|
68
|
+
var method = obj.method,
|
|
69
|
+
url = obj.url,
|
|
70
|
+
ctx = obj.ctx,
|
|
71
|
+
data = obj.data,
|
|
72
72
|
otherProps = __rest(obj, ["method", "url", "ctx", "data"]);
|
|
73
73
|
if (method === 'Get') {
|
|
74
74
|
return Get(Object.assign({
|
|
75
75
|
url: url,
|
|
76
|
-
ctx
|
|
76
|
+
ctx: ctx
|
|
77
77
|
}, otherProps));
|
|
78
78
|
}
|
|
79
79
|
if (method === 'Post') {
|
|
80
80
|
return Post(Object.assign({
|
|
81
81
|
url: url,
|
|
82
|
-
ctx,
|
|
83
|
-
data
|
|
82
|
+
ctx: ctx,
|
|
83
|
+
data: data
|
|
84
84
|
}, otherProps));
|
|
85
85
|
}
|
|
86
86
|
};
|
|
@@ -89,23 +89,23 @@ const requestFunc = obj => {
|
|
|
89
89
|
* @param obj {ReqProps} 请求信息
|
|
90
90
|
* @return string get请求地址参数
|
|
91
91
|
*/
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
for (
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (
|
|
92
|
+
var handGetReqParams = function handGetReqParams(obj) {
|
|
93
|
+
var str = obj.url;
|
|
94
|
+
var params = obj.data || {};
|
|
95
|
+
var arrKey = Object.keys(params);
|
|
96
|
+
var paramsArr = [];
|
|
97
|
+
for (var i = 0, l = arrKey.length; i < l; i++) {
|
|
98
|
+
var key = arrKey[i];
|
|
99
|
+
var val = params[key];
|
|
100
|
+
if (_typeof(val) === 'object') {
|
|
101
101
|
val = encodeURIComponent(JSON.stringify(val));
|
|
102
102
|
} else {
|
|
103
103
|
val = encodeURIComponent(val);
|
|
104
104
|
}
|
|
105
105
|
paramsArr.push("".concat(key, "=").concat(val));
|
|
106
106
|
}
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
var paramsStr = paramsArr.join('&');
|
|
108
|
+
var pos = str.indexOf('?');
|
|
109
109
|
if (pos !== -1) {
|
|
110
110
|
str += (pos === str.length - 1 ? '' : '&') + paramsStr;
|
|
111
111
|
} else {
|
|
@@ -116,9 +116,9 @@ const handGetReqParams = obj => {
|
|
|
116
116
|
/**
|
|
117
117
|
* 提取字符串里面的数字
|
|
118
118
|
* */
|
|
119
|
-
|
|
119
|
+
var getStringInNumber = function getStringInNumber(str) {
|
|
120
120
|
if (typeof str === 'number') return str;
|
|
121
|
-
|
|
121
|
+
var strHand = str.replace(/[^0-9$]/gi, '');
|
|
122
122
|
return Number(strHand);
|
|
123
123
|
};
|
|
124
124
|
/**
|
|
@@ -126,23 +126,23 @@ const getStringInNumber = str => {
|
|
|
126
126
|
* @param key {string} 键值
|
|
127
127
|
* @param num {number} 过期天数
|
|
128
128
|
* */
|
|
129
|
-
|
|
129
|
+
var getLocalStorageSelectHead = function getLocalStorageSelectHead(key, num) {
|
|
130
130
|
//debugger
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
for (
|
|
135
|
-
|
|
136
|
-
|
|
131
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
132
|
+
var headJson = JSON.parse(headJsonStr);
|
|
133
|
+
var headJsonArr = Object.keys(headJson);
|
|
134
|
+
for (var i = 0, l = headJsonArr.length; i < l; i++) {
|
|
135
|
+
var keyStr = headJsonArr[i];
|
|
136
|
+
var item = headJson[i];
|
|
137
137
|
if (!item) continue;
|
|
138
|
-
|
|
139
|
-
|
|
138
|
+
var newDate = new Date().getTime(); // 当前时间
|
|
139
|
+
var endTime = item.storageTime + item.validity; // 过期时间
|
|
140
140
|
// 过期时间 小于 当前时间, 说明已经过期了, 删除当前表格列数据
|
|
141
141
|
if (endTime < newDate) {
|
|
142
142
|
delete headJson[keyStr];
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
|
|
145
|
+
var headJsonItem = headJson[key];
|
|
146
146
|
// 重置过期时间
|
|
147
147
|
if (headJsonItem) {
|
|
148
148
|
headJsonItem.storageTime = new Date().getTime();
|
|
@@ -155,9 +155,9 @@ const getLocalStorageSelectHead = (key, num) => {
|
|
|
155
155
|
* @param key {string} 键值
|
|
156
156
|
* @param val {HeadLocalStorageItem} 保存值
|
|
157
157
|
* */
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
158
|
+
var setLocalStorageSelectHead = function setLocalStorageSelectHead(key, val) {
|
|
159
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
160
|
+
var headJson = JSON.parse(headJsonStr);
|
|
161
161
|
headJson[key] = val;
|
|
162
162
|
window.localStorage.setItem('_paraui_table_head', JSON.stringify(headJson));
|
|
163
163
|
};
|
|
@@ -166,8 +166,8 @@ const setLocalStorageSelectHead = (key, val) => {
|
|
|
166
166
|
* @param el 当前元素
|
|
167
167
|
* @param selector 查找元素class
|
|
168
168
|
*/
|
|
169
|
-
|
|
170
|
-
|
|
169
|
+
var closest = function closest(el, selector) {
|
|
170
|
+
var matchesSelector = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;
|
|
171
171
|
while (el) {
|
|
172
172
|
if (matchesSelector.call(el, selector)) {
|
|
173
173
|
break;
|
|
@@ -363,50 +363,70 @@ var zh = {
|
|
|
363
363
|
};
|
|
364
364
|
|
|
365
365
|
var localeJson = {
|
|
366
|
-
zh,
|
|
367
|
-
en
|
|
366
|
+
zh: zh,
|
|
367
|
+
en: en
|
|
368
368
|
};
|
|
369
369
|
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
headData = [],
|
|
373
|
-
sortTable,
|
|
374
|
-
filter,
|
|
375
|
-
expandable,
|
|
376
|
-
check,
|
|
377
|
-
radio,
|
|
378
|
-
onRequestSort,
|
|
379
|
-
orderFieldArr =
|
|
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
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
370
|
+
var TableHead$1 = function TableHead(props) {
|
|
371
|
+
var _props$headData = props.headData,
|
|
372
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
373
|
+
sortTable = props.sortTable,
|
|
374
|
+
filter = props.filter,
|
|
375
|
+
expandable = props.expandable,
|
|
376
|
+
check = props.check,
|
|
377
|
+
radio = props.radio,
|
|
378
|
+
onRequestSort = props.onRequestSort,
|
|
379
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
380
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
381
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
382
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
383
|
+
selectAll = props.selectAll,
|
|
384
|
+
selectStatus = props.selectStatus,
|
|
385
|
+
align = props.align,
|
|
386
|
+
_props$showList = props.showList,
|
|
387
|
+
showList = _props$showList === void 0 ? [] : _props$showList,
|
|
388
|
+
changeShowList = props.changeShowList,
|
|
389
|
+
selectFilter = props.selectFilter,
|
|
390
|
+
changeFilter = props.changeFilter,
|
|
391
|
+
operate = props.operate,
|
|
392
|
+
showColumns = props.showColumns,
|
|
393
|
+
fixedTable = props.fixedTable,
|
|
394
|
+
fixedColumn = props.fixedColumn,
|
|
395
|
+
posFixed = props.posFixed,
|
|
396
|
+
beyondText = props.beyondText,
|
|
397
|
+
lineWidth = props.lineWidth,
|
|
398
|
+
dragColumn = props.dragColumn,
|
|
399
|
+
dragRow = props.dragRow,
|
|
400
|
+
changeColumnWidth = props.changeColumnWidth,
|
|
401
|
+
headDataConfig = props.headDataConfig,
|
|
402
|
+
getPopupContainer = props.getPopupContainer,
|
|
403
|
+
tipMaxWidth = props.tipMaxWidth;
|
|
404
|
+
var _useState = useState(false),
|
|
405
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
406
|
+
indeterminate = _useState2[0],
|
|
407
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
408
|
+
var _useState3 = useState(false),
|
|
409
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
410
|
+
checked = _useState4[0],
|
|
411
|
+
setChecked = _useState4[1]; // 选中
|
|
412
|
+
var _useState5 = useState(null),
|
|
413
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
414
|
+
anchorElColums = _useState6[0],
|
|
415
|
+
setAnchorElColums = _useState6[1]; // 显示列定位元素
|
|
416
|
+
var _useState7 = useState({}),
|
|
417
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
418
|
+
headDataJson = _useState8[0],
|
|
419
|
+
setHeadDataJson = _useState8[1]; // 显示列json
|
|
420
|
+
var _useState9 = useState({}),
|
|
421
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
422
|
+
filterHead = _useState10[0],
|
|
423
|
+
setFilterHead = _useState10[1]; // 过滤项当前表头数据
|
|
424
|
+
var _useState11 = useState({}),
|
|
425
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
426
|
+
selectFilterCom = _useState12[0],
|
|
427
|
+
setSelectFilterCom = _useState12[1]; // 过滤项当前选中值
|
|
428
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
429
|
+
useEffect(function () {
|
|
410
430
|
// 全选
|
|
411
431
|
if (selectStatus === 'all') {
|
|
412
432
|
setChecked(true);
|
|
@@ -423,17 +443,17 @@ const TableHead$1 = props => {
|
|
|
423
443
|
setIndeterminate(false);
|
|
424
444
|
}
|
|
425
445
|
}, [selectStatus]);
|
|
426
|
-
useEffect(()
|
|
446
|
+
useEffect(function () {
|
|
427
447
|
if (headData) {
|
|
428
|
-
|
|
429
|
-
for (
|
|
430
|
-
|
|
448
|
+
var json = [];
|
|
449
|
+
for (var i = 0, l = headData.length; i < l; i++) {
|
|
450
|
+
var item = headData[i];
|
|
431
451
|
json[item.name] = item;
|
|
432
452
|
}
|
|
433
453
|
setHeadDataJson(json);
|
|
434
454
|
}
|
|
435
455
|
}, [headData]);
|
|
436
|
-
useEffect(()
|
|
456
|
+
useEffect(function () {
|
|
437
457
|
if (selectFilter) setSelectFilterCom(DeepClone(selectFilter));
|
|
438
458
|
}, [selectFilter]);
|
|
439
459
|
/**
|
|
@@ -441,28 +461,30 @@ const TableHead$1 = props => {
|
|
|
441
461
|
* @param name 排序列
|
|
442
462
|
* @param event 当前排序元素
|
|
443
463
|
*/
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
464
|
+
var createSortHandler = function createSortHandler(name, item) {
|
|
465
|
+
return function (event) {
|
|
466
|
+
// 不存在排序,不触发事件
|
|
467
|
+
if (!(sortTable && item.name && item.sort !== false)) return;
|
|
468
|
+
if (onRequestSort) onRequestSort(event, name);
|
|
469
|
+
};
|
|
448
470
|
};
|
|
449
471
|
/**
|
|
450
472
|
* 全选 / 全不选
|
|
451
473
|
* @param event 操作元素
|
|
452
474
|
* @param bol 选中 / 不选中
|
|
453
475
|
*/
|
|
454
|
-
|
|
476
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
455
477
|
if (selectAll) selectAll(event, bol);
|
|
456
478
|
};
|
|
457
479
|
/**
|
|
458
480
|
* 点击显示选择列
|
|
459
481
|
* @param event 点击元素
|
|
460
482
|
*/
|
|
461
|
-
|
|
483
|
+
var clickShowColums = function clickShowColums(event) {
|
|
462
484
|
setAnchorElColums(event.currentTarget);
|
|
463
485
|
};
|
|
464
486
|
// 点击隐藏选择列
|
|
465
|
-
|
|
487
|
+
var clickHideColums = function clickHideColums(bol) {
|
|
466
488
|
if (bol) return;
|
|
467
489
|
setAnchorElColums(null);
|
|
468
490
|
};
|
|
@@ -470,27 +492,29 @@ const TableHead$1 = props => {
|
|
|
470
492
|
* 点击显示列 列表
|
|
471
493
|
* @param item 详细
|
|
472
494
|
*/
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
495
|
+
var clickColumsList = function clickColumsList(item) {
|
|
496
|
+
return function () {
|
|
497
|
+
if (item.disabledSelection) return;
|
|
498
|
+
var name = item.name;
|
|
499
|
+
var itemHead = headDataJson[name];
|
|
500
|
+
if (itemHead) {
|
|
501
|
+
// 取消勾选
|
|
502
|
+
delete headDataJson[name];
|
|
503
|
+
var arr = Object.keys(headDataJson);
|
|
504
|
+
var arr1 = [];
|
|
505
|
+
for (var i = 0, l = arr.length; i < l; i++) {
|
|
506
|
+
var _name = arr[i];
|
|
507
|
+
arr1.push(headDataJson[_name]);
|
|
508
|
+
}
|
|
509
|
+
changeShowList && changeShowList(arr1, false, item);
|
|
510
|
+
} else {
|
|
511
|
+
headData.push(item);
|
|
512
|
+
changeShowList && changeShowList(headData, false, item);
|
|
485
513
|
}
|
|
486
|
-
|
|
487
|
-
} else {
|
|
488
|
-
headData.push(item);
|
|
489
|
-
changeShowList && changeShowList(headData, false, item);
|
|
490
|
-
}
|
|
514
|
+
};
|
|
491
515
|
};
|
|
492
516
|
// 重置显示列
|
|
493
|
-
|
|
517
|
+
var resetShowList = function resetShowList() {
|
|
494
518
|
changeShowList && changeShowList(headData, true);
|
|
495
519
|
};
|
|
496
520
|
/**
|
|
@@ -498,63 +522,69 @@ const TableHead$1 = props => {
|
|
|
498
522
|
* @param headCell 当前列信息
|
|
499
523
|
* @param event 元素
|
|
500
524
|
*/
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
525
|
+
var clickShowFilter = function clickShowFilter(headCell) {
|
|
526
|
+
return function (event) {
|
|
527
|
+
setFilterHead(headCell);
|
|
528
|
+
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
529
|
+
};
|
|
504
530
|
};
|
|
505
531
|
// 点击隐藏过滤
|
|
506
|
-
|
|
532
|
+
var clickHideFilter = function clickHideFilter(bol) {
|
|
507
533
|
if (bol) return;
|
|
508
534
|
setFilterHead({});
|
|
509
535
|
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
510
536
|
};
|
|
511
537
|
// 点击过滤
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
const filterRadio = filterHead.filterRadio;
|
|
524
|
-
if (filterRadio) {
|
|
525
|
-
// 过滤单个
|
|
526
|
-
const num = filterValue.indexOf(item.value);
|
|
527
|
-
if (num !== -1) {
|
|
528
|
-
filterValue = [filterValue[num]];
|
|
538
|
+
var clickFilter = function clickFilter(item) {
|
|
539
|
+
return function () {
|
|
540
|
+
var name = filterHead.name;
|
|
541
|
+
var filterValue = DeepClone(selectFilterCom[name] || []);
|
|
542
|
+
var index = filterValue.indexOf(item.value);
|
|
543
|
+
if (index !== -1) {
|
|
544
|
+
// 勾选 -> 不勾选
|
|
545
|
+
filterValue.splice(index, 1);
|
|
546
|
+
} else {
|
|
547
|
+
// 不勾选 -> 勾选
|
|
548
|
+
filterValue.push(item.value);
|
|
529
549
|
}
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
550
|
+
var filterRadio = filterHead.filterRadio;
|
|
551
|
+
if (filterRadio) {
|
|
552
|
+
// 过滤单个
|
|
553
|
+
var num = filterValue.indexOf(item.value);
|
|
554
|
+
if (num !== -1) {
|
|
555
|
+
filterValue = [filterValue[num]];
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
selectFilterCom[name] = filterValue;
|
|
559
|
+
setSelectFilterCom(Object.assign({}, selectFilterCom));
|
|
560
|
+
};
|
|
533
561
|
};
|
|
534
562
|
/**
|
|
535
563
|
* 重置 / 确定过滤
|
|
536
564
|
* @param type {'reset' | 'confirm'} 重置 / 确定过滤
|
|
537
565
|
*/
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
566
|
+
var filterFunc = function filterFunc(type) {
|
|
567
|
+
return function () {
|
|
568
|
+
if (type === 'confirm') {
|
|
569
|
+
// 确定
|
|
570
|
+
changeFilter && changeFilter(Object.assign({}, selectFilterCom));
|
|
571
|
+
setFilterHead({});
|
|
572
|
+
} else {
|
|
573
|
+
// 重置
|
|
574
|
+
var json = DeepClone(selectFilterCom);
|
|
575
|
+
delete json[filterHead.name];
|
|
576
|
+
setSelectFilterCom(json);
|
|
577
|
+
changeFilter && changeFilter(Object.assign({}, json));
|
|
578
|
+
setFilterHead({});
|
|
579
|
+
}
|
|
580
|
+
};
|
|
551
581
|
};
|
|
552
582
|
/**
|
|
553
583
|
* 自定义过滤确定
|
|
554
584
|
* @param val {[name: string]: any[]}
|
|
555
585
|
* */
|
|
556
|
-
|
|
557
|
-
|
|
586
|
+
var filterCustomConfirm = function filterCustomConfirm() {
|
|
587
|
+
var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
558
588
|
changeFilter && changeFilter(Object.assign({}, val));
|
|
559
589
|
setFilterHead({});
|
|
560
590
|
};
|
|
@@ -562,12 +592,12 @@ const TableHead$1 = props => {
|
|
|
562
592
|
* 处理TableCell
|
|
563
593
|
* @param item 当前列信息
|
|
564
594
|
*/
|
|
565
|
-
|
|
566
|
-
|
|
595
|
+
var handCellClass = function handCellClass(item) {
|
|
596
|
+
var str = 'table-header-box';
|
|
567
597
|
// 排序
|
|
568
598
|
if (sortTable && item.name && item.sort !== false) {
|
|
569
599
|
str += ' table-header-box-sort';
|
|
570
|
-
|
|
600
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
571
601
|
if (index !== -1) {
|
|
572
602
|
// 升序
|
|
573
603
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -586,10 +616,10 @@ const TableHead$1 = props => {
|
|
|
586
616
|
return str;
|
|
587
617
|
};
|
|
588
618
|
// 复选框memo
|
|
589
|
-
|
|
619
|
+
var TableCheckMemo = useMemo(function () {
|
|
590
620
|
if (check) {
|
|
591
|
-
|
|
592
|
-
|
|
621
|
+
var handCls = function handCls() {
|
|
622
|
+
var str = 'table-checkbox table-head-btn';
|
|
593
623
|
if (fixedColumn) {
|
|
594
624
|
str += ' table-fixed-dom-left';
|
|
595
625
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -617,10 +647,10 @@ const TableHead$1 = props => {
|
|
|
617
647
|
}
|
|
618
648
|
}, [check, indeterminate, checked, selectAll, posFixed, radio, expandable, fixedColumn]);
|
|
619
649
|
// 单选框memo
|
|
620
|
-
|
|
650
|
+
var TableRadioMemo = useMemo(function () {
|
|
621
651
|
if (radio) {
|
|
622
|
-
|
|
623
|
-
|
|
652
|
+
var handCls = function handCls() {
|
|
653
|
+
var str = 'table-radio table-head-btn';
|
|
624
654
|
if (fixedColumn) {
|
|
625
655
|
str += ' table-fixed-dom-left';
|
|
626
656
|
// 左边没有定位,没有嵌套表格
|
|
@@ -642,10 +672,10 @@ const TableHead$1 = props => {
|
|
|
642
672
|
}
|
|
643
673
|
}, [radio, posFixed, expandable, fixedColumn]);
|
|
644
674
|
// 嵌套表格memo
|
|
645
|
-
|
|
675
|
+
var TableExpandableMemo = useMemo(function () {
|
|
646
676
|
if (expandable) {
|
|
647
|
-
|
|
648
|
-
|
|
677
|
+
var handCls = function handCls() {
|
|
678
|
+
var str = 'table-expandable table-head-btn';
|
|
649
679
|
if (fixedColumn) {
|
|
650
680
|
str += ' table-fixed-dom-left';
|
|
651
681
|
// 左边没有定位,没有嵌套表格
|
|
@@ -667,21 +697,21 @@ const TableHead$1 = props => {
|
|
|
667
697
|
}
|
|
668
698
|
}, [expandable, posFixed, fixedColumn]);
|
|
669
699
|
// 过滤弹窗内容
|
|
670
|
-
|
|
671
|
-
|
|
700
|
+
var filterPopoverContent = function filterPopoverContent() {
|
|
701
|
+
var name = filterHead.name;
|
|
672
702
|
if (!name) return;
|
|
673
|
-
|
|
703
|
+
var filterValue = selectFilterCom[name] || [];
|
|
674
704
|
if (filterHead.filterRender) {
|
|
675
705
|
// 自定义渲染过滤
|
|
676
706
|
return filterHead.filterRender({
|
|
677
|
-
filterValue,
|
|
707
|
+
filterValue: filterValue,
|
|
678
708
|
selectFilter: selectFilterCom,
|
|
679
|
-
filterHead,
|
|
709
|
+
filterHead: filterHead,
|
|
680
710
|
setFilter: filterCustomConfirm
|
|
681
711
|
});
|
|
682
712
|
}
|
|
683
|
-
|
|
684
|
-
|
|
713
|
+
var arr = filterHead.enums || [];
|
|
714
|
+
var str = 'filter-select';
|
|
685
715
|
if (arr.length === 0) str += ' filter-select-none';
|
|
686
716
|
return jsx("div", Object.assign({
|
|
687
717
|
className: str
|
|
@@ -696,8 +726,8 @@ const TableHead$1 = props => {
|
|
|
696
726
|
children: [jsx("div", Object.assign({
|
|
697
727
|
className: "filter-select-box"
|
|
698
728
|
}, {
|
|
699
|
-
children: arr.map((item, index)
|
|
700
|
-
|
|
729
|
+
children: arr.map(function (item, index) {
|
|
730
|
+
var checked = filterValue.indexOf(item.value) !== -1;
|
|
701
731
|
return jsxs("div", Object.assign({
|
|
702
732
|
onClick: clickFilter(item),
|
|
703
733
|
className: checked ? 'filter-select-item filter-select-item-select' : 'filter-select-item'
|
|
@@ -736,28 +766,30 @@ const TableHead$1 = props => {
|
|
|
736
766
|
}));
|
|
737
767
|
};
|
|
738
768
|
// 表格列拖拽放下
|
|
739
|
-
|
|
740
|
-
|
|
769
|
+
var onDragDown = function onDragDown(headCell) {
|
|
770
|
+
return function (result) {
|
|
771
|
+
changeColumnWidth && changeColumnWidth(headCell, result);
|
|
772
|
+
};
|
|
741
773
|
};
|
|
742
774
|
// 获取宽度
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
775
|
+
var getWidth = function getWidth(item) {
|
|
776
|
+
var w = item.width || '';
|
|
777
|
+
var name = item.name || '';
|
|
778
|
+
var wDrag = headDataConfig[name] && headDataConfig[name].width;
|
|
747
779
|
if (wDrag) w = "".concat(wDrag, "px");
|
|
748
780
|
return w;
|
|
749
781
|
};
|
|
750
782
|
// 内容列memo
|
|
751
|
-
|
|
783
|
+
var TableContentMemo = useMemo(function () {
|
|
752
784
|
// 处理过滤的class
|
|
753
|
-
|
|
754
|
-
|
|
785
|
+
var handFilterClass = function handFilterClass(item) {
|
|
786
|
+
var str = 'table-header-filter';
|
|
755
787
|
if (filterHead.name === item.name) str += ' table-header-filter-show';
|
|
756
788
|
if (item.name && selectFilterCom[item.name] && selectFilterCom[item.name].length > 0) str += ' table-header-filter-select';
|
|
757
789
|
return str;
|
|
758
790
|
};
|
|
759
|
-
|
|
760
|
-
|
|
791
|
+
var handCls = function handCls(item) {
|
|
792
|
+
var str = '';
|
|
761
793
|
if (item.className) str += item.className;
|
|
762
794
|
if (fixedColumn && item.fixed) {
|
|
763
795
|
str += " table-fixed-dom-".concat(item.fixed);
|
|
@@ -772,8 +804,8 @@ const TableHead$1 = props => {
|
|
|
772
804
|
}
|
|
773
805
|
return str;
|
|
774
806
|
};
|
|
775
|
-
|
|
776
|
-
|
|
807
|
+
var handStyle = function handStyle(item) {
|
|
808
|
+
var json = {
|
|
777
809
|
width: getWidth(item)
|
|
778
810
|
};
|
|
779
811
|
if (fixedColumn && item.fixed && item.width) {
|
|
@@ -787,13 +819,13 @@ const TableHead$1 = props => {
|
|
|
787
819
|
return Object.assign(Object.assign({}, json), item.style);
|
|
788
820
|
};
|
|
789
821
|
// 处理拖拽
|
|
790
|
-
|
|
822
|
+
var handDrag = function handDrag(item) {
|
|
791
823
|
if (item.name === 'table-serial-number') return false; // 序号不拖拽
|
|
792
824
|
if (dragColumn && item.drag !== false) return true;
|
|
793
825
|
return false;
|
|
794
826
|
};
|
|
795
|
-
return headData.map((headCell, index)
|
|
796
|
-
|
|
827
|
+
return headData.map(function (headCell, index) {
|
|
828
|
+
var str = "".concat($prefixCls, "-filter-popover ").concat($prefixCls, "-scrollbar-small");
|
|
797
829
|
if (!headCell.filterRender) str += " ".concat($prefixCls, "-filter-popover-default");
|
|
798
830
|
return jsx(ThElement, Object.assign({
|
|
799
831
|
className: handCls(headCell),
|
|
@@ -813,7 +845,9 @@ const TableHead$1 = props => {
|
|
|
813
845
|
content: headCell.name !== undefined && filterHead.name === headCell.name && filterPopoverContent(),
|
|
814
846
|
onVisibleChange: clickHideFilter,
|
|
815
847
|
overlayClassName: str,
|
|
816
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
848
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
849
|
+
return document.body;
|
|
850
|
+
},
|
|
817
851
|
maxWidth: headCell.filterMaxWidth
|
|
818
852
|
}, {
|
|
819
853
|
children: jsxs("div", Object.assign({
|
|
@@ -858,10 +892,10 @@ const TableHead$1 = props => {
|
|
|
858
892
|
});
|
|
859
893
|
}, [headData, sortTable, filter, orderFieldArr, orderTypeArr, align, filterHead, selectFilterCom, beyondText, selectFilter, fixedColumn, lineWidth, dragColumn, changeColumnWidth, headDataConfig, getPopupContainer, tipMaxWidth]);
|
|
860
894
|
// 操作栏memo
|
|
861
|
-
|
|
895
|
+
var TableOperateMemo = useMemo(function () {
|
|
862
896
|
if (operate) {
|
|
863
|
-
|
|
864
|
-
|
|
897
|
+
var handCls = function handCls() {
|
|
898
|
+
var str = 'table-operate';
|
|
865
899
|
if (operate.operateBtnRender) str += ' table-operate-small';
|
|
866
900
|
if (showColumns === false) str += ' table-operate-not-columns';
|
|
867
901
|
if (dragRow) str += ' table-operate-drag-row';
|
|
@@ -874,8 +908,8 @@ const TableHead$1 = props => {
|
|
|
874
908
|
}
|
|
875
909
|
return str;
|
|
876
910
|
};
|
|
877
|
-
|
|
878
|
-
|
|
911
|
+
var handStyle = function handStyle() {
|
|
912
|
+
var json = {
|
|
879
913
|
width: operate.width
|
|
880
914
|
};
|
|
881
915
|
if (fixedColumn) {
|
|
@@ -911,16 +945,16 @@ const TableHead$1 = props => {
|
|
|
911
945
|
}
|
|
912
946
|
}, [operate, align, posFixed, showColumns, posFixed, beyondText, fixedColumn, tipMaxWidth, dragRow]);
|
|
913
947
|
// 显示列弹窗内容
|
|
914
|
-
|
|
948
|
+
var showListContent = function showListContent() {
|
|
915
949
|
return jsxs("div", Object.assign({
|
|
916
950
|
className: "show-colums-select"
|
|
917
951
|
}, {
|
|
918
952
|
children: [jsx("div", Object.assign({
|
|
919
953
|
className: "show-colums-select-box"
|
|
920
954
|
}, {
|
|
921
|
-
children: showList.map((item, index)
|
|
922
|
-
|
|
923
|
-
|
|
955
|
+
children: showList.map(function (item, index) {
|
|
956
|
+
var checked = Boolean(headDataJson[item.name]);
|
|
957
|
+
var str = 'show-colums-select-item';
|
|
924
958
|
if (checked) str += ' show-colums-select-item-select';
|
|
925
959
|
if (item.disabledSelection) str += ' show-colums-select-item-disabled';
|
|
926
960
|
return jsxs("div", Object.assign({
|
|
@@ -954,9 +988,9 @@ const TableHead$1 = props => {
|
|
|
954
988
|
}));
|
|
955
989
|
};
|
|
956
990
|
// 显示列memo
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
991
|
+
var TableShowList = useMemo(function () {
|
|
992
|
+
var handCls = function handCls() {
|
|
993
|
+
var str = 'show-colums table-fixed-dom-right';
|
|
960
994
|
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
961
995
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
962
996
|
str += ' table-fixed-dom-right-first';
|
|
@@ -969,7 +1003,9 @@ const TableHead$1 = props => {
|
|
|
969
1003
|
content: showListContent(),
|
|
970
1004
|
onVisibleChange: clickHideColums,
|
|
971
1005
|
overlayClassName: "".concat($prefixCls, "-table-show-colums-popover ").concat($prefixCls, "-scrollbar-small"),
|
|
972
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
1006
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
1007
|
+
return document.body;
|
|
1008
|
+
}
|
|
973
1009
|
}, {
|
|
974
1010
|
children: jsx(ThElement, Object.assign({
|
|
975
1011
|
align: "center",
|
|
@@ -986,10 +1022,10 @@ const TableHead$1 = props => {
|
|
|
986
1022
|
}));
|
|
987
1023
|
}, [showColumns, posFixed, operate, anchorElColums, showList, headDataJson, getPopupContainer, tipMaxWidth]);
|
|
988
1024
|
// 拖动行
|
|
989
|
-
|
|
1025
|
+
var TbaleDragRow = useMemo(function () {
|
|
990
1026
|
if (!dragRow || operate || showColumns === 'inside') return null;
|
|
991
|
-
|
|
992
|
-
|
|
1027
|
+
var handCls = function handCls() {
|
|
1028
|
+
var str = 'drag-row table-fixed-dom-right';
|
|
993
1029
|
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
994
1030
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
995
1031
|
str += ' table-fixed-dom-right-first';
|
|
@@ -1003,8 +1039,8 @@ const TableHead$1 = props => {
|
|
|
1003
1039
|
});
|
|
1004
1040
|
}, [operate, showColumns, fixedColumn, posFixed, dragRow]);
|
|
1005
1041
|
// 处理class
|
|
1006
|
-
|
|
1007
|
-
|
|
1042
|
+
var handClass = function handClass() {
|
|
1043
|
+
var str = 'table-head';
|
|
1008
1044
|
if (showColumns === 'inside') str += ' table-head-inside';
|
|
1009
1045
|
if (!fixedTable) str += ' table-head-scroll'; // 防止长度过长
|
|
1010
1046
|
// 没有 复选框,单选框,展开 按钮
|
|
@@ -1082,74 +1118,98 @@ var TdElement = function TdElement(props) {
|
|
|
1082
1118
|
}));
|
|
1083
1119
|
};
|
|
1084
1120
|
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
rowData = [],
|
|
1090
|
-
rowKey =
|
|
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
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1121
|
+
var TableBody = function TableBody(props) {
|
|
1122
|
+
var url = props.url,
|
|
1123
|
+
emptyProps = props.emptyProps,
|
|
1124
|
+
_props$rowData = props.rowData,
|
|
1125
|
+
rowData = _props$rowData === void 0 ? [] : _props$rowData,
|
|
1126
|
+
_props$rowKey = props.rowKey,
|
|
1127
|
+
rowKey = _props$rowKey === void 0 ? 'key' : _props$rowKey,
|
|
1128
|
+
check = props.check,
|
|
1129
|
+
radio = props.radio,
|
|
1130
|
+
tableCell = props.tableCell,
|
|
1131
|
+
expandable = props.expandable,
|
|
1132
|
+
_props$headData = props.headData,
|
|
1133
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
1134
|
+
_props$disabledJson = props.disabledJson,
|
|
1135
|
+
disabledJson = _props$disabledJson === void 0 ? {} : _props$disabledJson,
|
|
1136
|
+
disabledArrStatus = props.disabledArrStatus,
|
|
1137
|
+
_props$checkJson = props.checkJson,
|
|
1138
|
+
checkJson = _props$checkJson === void 0 ? {} : _props$checkJson,
|
|
1139
|
+
radioValue = props.radioValue,
|
|
1140
|
+
selectCheck = props.selectCheck,
|
|
1141
|
+
selectRadio = props.selectRadio,
|
|
1142
|
+
align = props.align,
|
|
1143
|
+
operate = props.operate,
|
|
1144
|
+
showColumns = props.showColumns,
|
|
1145
|
+
fixedTable = props.fixedTable,
|
|
1146
|
+
fixedColumn = props.fixedColumn,
|
|
1147
|
+
formatter = props.formatter,
|
|
1148
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
1149
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
1150
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
1151
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
1152
|
+
sortTable = props.sortTable,
|
|
1153
|
+
loadState = props.loadState,
|
|
1154
|
+
loadMore = props.loadMore,
|
|
1155
|
+
loadMoreRender = props.loadMoreRender,
|
|
1156
|
+
onClickMore = props.onClickMore,
|
|
1157
|
+
total = props.total,
|
|
1158
|
+
page = props.page,
|
|
1159
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1160
|
+
changePage = props.changePage,
|
|
1161
|
+
loadMoreUrl = props.loadMoreUrl,
|
|
1162
|
+
_props$expandMultiple = props.expandMultiple,
|
|
1163
|
+
expandMultiple = _props$expandMultiple === void 0 ? false : _props$expandMultiple,
|
|
1164
|
+
_props$expandValue = props.expandValue,
|
|
1165
|
+
expandValue = _props$expandValue === void 0 ? [] : _props$expandValue,
|
|
1166
|
+
_props$disabledExpand = props.disabledExpand,
|
|
1167
|
+
disabledExpand = _props$disabledExpand === void 0 ? [] : _props$disabledExpand,
|
|
1168
|
+
_props$defaultExpandA = props.defaultExpandAllRows,
|
|
1169
|
+
defaultExpandAllRows = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,
|
|
1170
|
+
onExpand = props.onExpand,
|
|
1171
|
+
_onRefresh = props.onRefresh,
|
|
1172
|
+
posFixed = props.posFixed,
|
|
1173
|
+
beyondText = props.beyondText,
|
|
1174
|
+
onClickRow = props.onClickRow,
|
|
1175
|
+
rowClassMapping = props.rowClassMapping,
|
|
1176
|
+
tipMaxWidth = props.tipMaxWidth,
|
|
1177
|
+
lineHeight = props.lineHeight,
|
|
1178
|
+
dragRow = props.dragRow,
|
|
1179
|
+
onDragRow = props.onDragRow;
|
|
1180
|
+
var _useState = useState(0),
|
|
1181
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1182
|
+
expandableColSpan = _useState2[0],
|
|
1183
|
+
setExpandableColSpan = _useState2[1]; // 嵌套表格合并列数
|
|
1184
|
+
var _useState3 = useState({}),
|
|
1185
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1186
|
+
expandableRow = _useState4[0],
|
|
1187
|
+
setExpandableRow = _useState4[1]; // 当前哪行展开表格嵌套
|
|
1188
|
+
var _useState5 = useState(true),
|
|
1189
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
1190
|
+
showMoreBtn = _useState6[0],
|
|
1191
|
+
setShowMoreBtn = _useState6[1]; // 加载更多
|
|
1192
|
+
var _useState7 = useState({}),
|
|
1193
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
1194
|
+
disabledExpandJson = _useState8[0],
|
|
1195
|
+
setDisabledExpand = _useState8[1]; // 禁用加减部分嵌套
|
|
1196
|
+
var _useState9 = useState(false),
|
|
1197
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
1198
|
+
dragBol = _useState10[0],
|
|
1199
|
+
setDragBol = _useState10[1];
|
|
1200
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1141
1201
|
// 默认是否展开所有
|
|
1142
|
-
useEffect(()
|
|
1202
|
+
useEffect(function () {
|
|
1143
1203
|
if (!defaultExpandAllRows) {
|
|
1144
1204
|
setExpandableRow({});
|
|
1145
1205
|
return;
|
|
1146
1206
|
}
|
|
1147
|
-
|
|
1148
|
-
for (
|
|
1149
|
-
|
|
1150
|
-
|
|
1207
|
+
var json = {};
|
|
1208
|
+
for (var i = 0, l = rowData.length; i < l; i++) {
|
|
1209
|
+
var item = rowData[i] || {};
|
|
1210
|
+
var id = item[rowKey];
|
|
1151
1211
|
json[id] = {
|
|
1152
|
-
id,
|
|
1212
|
+
id: id,
|
|
1153
1213
|
status: 'develop'
|
|
1154
1214
|
};
|
|
1155
1215
|
}
|
|
@@ -1157,41 +1217,41 @@ const TableBody = props => {
|
|
|
1157
1217
|
}, [defaultExpandAllRows, rowData, rowKey]);
|
|
1158
1218
|
// 监听展开表格
|
|
1159
1219
|
// 如果直接写expandMultiple, expandValue会死循环
|
|
1160
|
-
useEffect(()
|
|
1220
|
+
useEffect(function () {
|
|
1161
1221
|
if (props.expandValue === undefined) return;
|
|
1162
|
-
|
|
1163
|
-
|
|
1222
|
+
var json = {};
|
|
1223
|
+
var expandValueHand = expandValue;
|
|
1164
1224
|
// 只展开一个,去第一个值
|
|
1165
1225
|
if (!expandMultiple && expandValue.length > 0) {
|
|
1166
1226
|
expandValueHand = [expandValue[0]];
|
|
1167
1227
|
}
|
|
1168
|
-
for (
|
|
1169
|
-
|
|
1228
|
+
for (var i = 0, l = expandValueHand.length; i < l; i++) {
|
|
1229
|
+
var id = expandValueHand[i];
|
|
1170
1230
|
json[id] = {
|
|
1171
|
-
id,
|
|
1231
|
+
id: id,
|
|
1172
1232
|
status: 'develop'
|
|
1173
1233
|
};
|
|
1174
1234
|
}
|
|
1175
1235
|
setExpandableRow(json);
|
|
1176
1236
|
}, [props.expandMultiple, props.expandValue, rowData]);
|
|
1177
1237
|
// 监听禁用嵌套 props.disabledExpand 防止死循环
|
|
1178
|
-
useEffect(()
|
|
1179
|
-
|
|
1180
|
-
for (
|
|
1181
|
-
|
|
1238
|
+
useEffect(function () {
|
|
1239
|
+
var json = {};
|
|
1240
|
+
for (var i = 0, l = disabledExpand.length; i < l; i++) {
|
|
1241
|
+
var id = disabledExpand[i];
|
|
1182
1242
|
json[id] = true;
|
|
1183
1243
|
}
|
|
1184
1244
|
setDisabledExpand(json);
|
|
1185
1245
|
}, [props.disabledExpand]);
|
|
1186
|
-
useEffect(()
|
|
1246
|
+
useEffect(function () {
|
|
1187
1247
|
if (loadMoreUrl) {
|
|
1188
|
-
|
|
1248
|
+
var bol = Number(total) > Number(page) * Number(currentRowsPerPage);
|
|
1189
1249
|
setShowMoreBtn(bol);
|
|
1190
1250
|
}
|
|
1191
1251
|
}, [loadMoreUrl, total, page, currentRowsPerPage]);
|
|
1192
1252
|
// 处理嵌套表格合并列数
|
|
1193
|
-
useEffect(()
|
|
1194
|
-
|
|
1253
|
+
useEffect(function () {
|
|
1254
|
+
var num = headData.length;
|
|
1195
1255
|
if (expandable) num += 1;
|
|
1196
1256
|
if (check) num += 1;
|
|
1197
1257
|
if (radio) num += 1;
|
|
@@ -1200,55 +1260,55 @@ const TableBody = props => {
|
|
|
1200
1260
|
setExpandableColSpan(num);
|
|
1201
1261
|
}, [headData, expandable, check, radio]);
|
|
1202
1262
|
// 展开/收起嵌套表格
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1263
|
+
var handClickNestTable = function handClickNestTable(row) {
|
|
1264
|
+
return function (event) {
|
|
1265
|
+
var id = row[rowKey];
|
|
1266
|
+
var expandItem = expandableRow[id] || {};
|
|
1267
|
+
var status = 'develop';
|
|
1268
|
+
if (expandItem.status === 'develop') status = 'retract';
|
|
1269
|
+
expandItem = {
|
|
1270
|
+
id: id,
|
|
1271
|
+
status: status
|
|
1272
|
+
};
|
|
1273
|
+
if (expandMultiple) {
|
|
1274
|
+
// 展开多个
|
|
1275
|
+
expandableRow[id] = expandItem;
|
|
1276
|
+
setExpandableRow(Object.assign({}, expandableRow));
|
|
1277
|
+
} else {
|
|
1278
|
+
// 展开一个
|
|
1279
|
+
setExpandableRow(_defineProperty({}, id, expandItem));
|
|
1280
|
+
}
|
|
1281
|
+
onExpand && onExpand(row, status);
|
|
1282
|
+
event.stopPropagation();
|
|
1211
1283
|
};
|
|
1212
|
-
if (expandMultiple) {
|
|
1213
|
-
// 展开多个
|
|
1214
|
-
expandableRow[id] = expandItem;
|
|
1215
|
-
setExpandableRow(Object.assign({}, expandableRow));
|
|
1216
|
-
} else {
|
|
1217
|
-
// 展开一个
|
|
1218
|
-
setExpandableRow({
|
|
1219
|
-
[id]: expandItem
|
|
1220
|
-
});
|
|
1221
|
-
}
|
|
1222
|
-
onExpand && onExpand(row, status);
|
|
1223
|
-
event.stopPropagation();
|
|
1224
1284
|
};
|
|
1225
1285
|
// 处理class
|
|
1226
|
-
|
|
1227
|
-
|
|
1286
|
+
var handClass = function handClass() {
|
|
1287
|
+
var str = 'table-body';
|
|
1228
1288
|
if (!fixedTable) str += ' table-body-scroll';
|
|
1229
1289
|
// 没有 复选框,单选框,展开 按钮
|
|
1230
1290
|
if (!check && !radio && !expandable) str += ' table-body-no-btn';
|
|
1231
1291
|
return str;
|
|
1232
1292
|
};
|
|
1233
1293
|
// 处理嵌套表格class
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1294
|
+
var handExpandClass = function handExpandClass(row) {
|
|
1295
|
+
var id = row[rowKey];
|
|
1296
|
+
var expandItem = expandableRow[id] || {};
|
|
1297
|
+
var str = 'retract';
|
|
1238
1298
|
if (expandItem.status === 'develop') {
|
|
1239
1299
|
str = 'expand';
|
|
1240
1300
|
}
|
|
1241
1301
|
return str;
|
|
1242
1302
|
};
|
|
1243
1303
|
// 点击加载更多
|
|
1244
|
-
|
|
1304
|
+
var clickMore = function clickMore() {
|
|
1245
1305
|
if (loadMoreUrl) changePage && changePage();
|
|
1246
1306
|
onClickMore && onClickMore();
|
|
1247
1307
|
};
|
|
1248
1308
|
// 暂无数据memo
|
|
1249
|
-
|
|
1309
|
+
var NodataMemo = useMemo(function () {
|
|
1250
1310
|
// 处理刷新按钮
|
|
1251
|
-
|
|
1311
|
+
var handRefreshBtn = function handRefreshBtn() {
|
|
1252
1312
|
if ((emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh) !== undefined) {
|
|
1253
1313
|
return emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh;
|
|
1254
1314
|
}
|
|
@@ -1258,7 +1318,7 @@ const TableBody = props => {
|
|
|
1258
1318
|
return false;
|
|
1259
1319
|
};
|
|
1260
1320
|
// 处理非首页非空状态
|
|
1261
|
-
|
|
1321
|
+
var handleDescription = function handleDescription() {
|
|
1262
1322
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.description) return emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.description;
|
|
1263
1323
|
if (Number(page) > 1) {
|
|
1264
1324
|
return jsxs("div", Object.assign({
|
|
@@ -1276,7 +1336,7 @@ const TableBody = props => {
|
|
|
1276
1336
|
children: jsx(Button, Object.assign({
|
|
1277
1337
|
variant: "text",
|
|
1278
1338
|
size: "small",
|
|
1279
|
-
onClick: ()
|
|
1339
|
+
onClick: function onClick() {
|
|
1280
1340
|
changePage && changePage(Number(page) - 1);
|
|
1281
1341
|
}
|
|
1282
1342
|
}, {
|
|
@@ -1289,8 +1349,8 @@ const TableBody = props => {
|
|
|
1289
1349
|
}
|
|
1290
1350
|
};
|
|
1291
1351
|
// 处理className
|
|
1292
|
-
|
|
1293
|
-
|
|
1352
|
+
var handClassNoData = function handClassNoData() {
|
|
1353
|
+
var str = 'table-no-data';
|
|
1294
1354
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size) str += " table-no-data-".concat(emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size);
|
|
1295
1355
|
return str;
|
|
1296
1356
|
};
|
|
@@ -1304,24 +1364,24 @@ const TableBody = props => {
|
|
|
1304
1364
|
children: jsx(Empty, Object.assign({}, emptyProps, {
|
|
1305
1365
|
description: handleDescription(),
|
|
1306
1366
|
showRefresh: handRefreshBtn(),
|
|
1307
|
-
onRefresh: event
|
|
1367
|
+
onRefresh: function onRefresh(event) {
|
|
1308
1368
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh) {
|
|
1309
1369
|
emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh(event);
|
|
1310
1370
|
return;
|
|
1311
1371
|
}
|
|
1312
|
-
|
|
1372
|
+
_onRefresh && _onRefresh();
|
|
1313
1373
|
}
|
|
1314
1374
|
}))
|
|
1315
1375
|
}))
|
|
1316
1376
|
}));
|
|
1317
|
-
}, [expandableColSpan, emptyProps, url,
|
|
1377
|
+
}, [expandableColSpan, emptyProps, url, _onRefresh, page, changePage]);
|
|
1318
1378
|
// 复选框useCallback
|
|
1319
|
-
|
|
1379
|
+
var TableCheckCallback = useCallback(function (row) {
|
|
1320
1380
|
if (check) {
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1381
|
+
var handId = row[rowKey];
|
|
1382
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1383
|
+
var checkHand = checkJson[handId] || false;
|
|
1384
|
+
var showCheck = true;
|
|
1325
1385
|
if (disabledHand && disabledArrStatus) {
|
|
1326
1386
|
// 选中
|
|
1327
1387
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1336,8 +1396,8 @@ const TableBody = props => {
|
|
|
1336
1396
|
showCheck = false;
|
|
1337
1397
|
}
|
|
1338
1398
|
}
|
|
1339
|
-
|
|
1340
|
-
|
|
1399
|
+
var handCls = function handCls() {
|
|
1400
|
+
var str = 'table-checkbox table-body-btn';
|
|
1341
1401
|
if (fixedColumn) {
|
|
1342
1402
|
str += ' table-fixed-dom-left';
|
|
1343
1403
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -1354,7 +1414,7 @@ const TableBody = props => {
|
|
|
1354
1414
|
children: showCheck && jsx(Checkbox, {
|
|
1355
1415
|
disabled: disabledHand,
|
|
1356
1416
|
checked: checkHand,
|
|
1357
|
-
onChange: (event, bol)
|
|
1417
|
+
onChange: function onChange(event, bol) {
|
|
1358
1418
|
event.stopPropagation();
|
|
1359
1419
|
selectCheck && selectCheck(event, bol, row[rowKey]);
|
|
1360
1420
|
}
|
|
@@ -1363,12 +1423,12 @@ const TableBody = props => {
|
|
|
1363
1423
|
}
|
|
1364
1424
|
}, [check, disabledJson, rowKey, checkJson, selectCheck, disabledArrStatus, posFixed, expandable, radio, fixedColumn]);
|
|
1365
1425
|
// 单选框useCallback
|
|
1366
|
-
|
|
1426
|
+
var TableRadioCallback = useCallback(function (row) {
|
|
1367
1427
|
if (radio) {
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1428
|
+
var handId = row[rowKey];
|
|
1429
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1430
|
+
var checkHand = radioValue === row[rowKey];
|
|
1431
|
+
var showRadio = true;
|
|
1372
1432
|
if (disabledHand && disabledArrStatus) {
|
|
1373
1433
|
// 选中
|
|
1374
1434
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1383,8 +1443,8 @@ const TableBody = props => {
|
|
|
1383
1443
|
showRadio = false;
|
|
1384
1444
|
}
|
|
1385
1445
|
}
|
|
1386
|
-
|
|
1387
|
-
|
|
1446
|
+
var handCls = function handCls() {
|
|
1447
|
+
var str = 'table-radio table-body-btn';
|
|
1388
1448
|
if (fixedColumn) {
|
|
1389
1449
|
str += ' table-fixed-dom-left';
|
|
1390
1450
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1401,7 +1461,7 @@ const TableBody = props => {
|
|
|
1401
1461
|
children: showRadio && jsx(Radio, {
|
|
1402
1462
|
disabled: disabledHand,
|
|
1403
1463
|
checked: checkHand,
|
|
1404
|
-
onChange: event
|
|
1464
|
+
onChange: function onChange(event) {
|
|
1405
1465
|
event.stopPropagation();
|
|
1406
1466
|
selectRadio && selectRadio(event, row[rowKey]);
|
|
1407
1467
|
}
|
|
@@ -1410,13 +1470,13 @@ const TableBody = props => {
|
|
|
1410
1470
|
}
|
|
1411
1471
|
}, [radio, disabledJson, radioValue, rowKey, selectRadio, disabledArrStatus, expandable, posFixed, fixedColumn]);
|
|
1412
1472
|
// 嵌套加减useCallback
|
|
1413
|
-
|
|
1473
|
+
var TableExpandableMemo = useCallback(function (row) {
|
|
1414
1474
|
if (!expandable) return null;
|
|
1415
|
-
|
|
1475
|
+
var expandableDemo = expandable(row);
|
|
1416
1476
|
// 禁用一行表格展开 或者 展开表格返回值为false,返回空列
|
|
1417
1477
|
if (disabledExpandJson[row[rowKey]] || expandableDemo === false) return jsx(TdElement, {});
|
|
1418
|
-
|
|
1419
|
-
|
|
1478
|
+
var handCls = function handCls() {
|
|
1479
|
+
var str = 'table-expandable table-body-btn';
|
|
1420
1480
|
if (fixedColumn) {
|
|
1421
1481
|
str += ' table-fixed-dom-left';
|
|
1422
1482
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1437,17 +1497,17 @@ const TableBody = props => {
|
|
|
1437
1497
|
}));
|
|
1438
1498
|
}, [expandable, expandableRow, rowKey, disabledExpandJson, onExpand, fixedColumn]);
|
|
1439
1499
|
// 表格一行内容useCallback
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
orderFieldArr,
|
|
1443
|
-
orderTypeArr
|
|
1500
|
+
var TableContentUseCallback = useCallback(function (row, rowIndex) {
|
|
1501
|
+
var params = {
|
|
1502
|
+
orderFieldArr: orderFieldArr,
|
|
1503
|
+
orderTypeArr: orderTypeArr
|
|
1444
1504
|
};
|
|
1445
|
-
|
|
1446
|
-
|
|
1505
|
+
var handContentClass = function handContentClass(item) {
|
|
1506
|
+
var str = 'table-content-columms';
|
|
1447
1507
|
if (item.className) str += " ".concat(item.className);
|
|
1448
1508
|
// 排序
|
|
1449
1509
|
if (sortTable && item.name && item.sort !== false) {
|
|
1450
|
-
|
|
1510
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
1451
1511
|
if (index !== -1) {
|
|
1452
1512
|
// 升序
|
|
1453
1513
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -1472,8 +1532,8 @@ const TableBody = props => {
|
|
|
1472
1532
|
}
|
|
1473
1533
|
return str;
|
|
1474
1534
|
};
|
|
1475
|
-
|
|
1476
|
-
|
|
1535
|
+
var handStyle = function handStyle(item) {
|
|
1536
|
+
var json = {};
|
|
1477
1537
|
if (fixedColumn && item.fixed && item.width) {
|
|
1478
1538
|
if (item.fixed === 'left') {
|
|
1479
1539
|
json.left = "".concat(item.paraui_left_width, "px");
|
|
@@ -1484,12 +1544,12 @@ const TableBody = props => {
|
|
|
1484
1544
|
}
|
|
1485
1545
|
return json;
|
|
1486
1546
|
};
|
|
1487
|
-
return tableCell ? tableCell(row, params) : headData.map((item, index)
|
|
1488
|
-
|
|
1489
|
-
|
|
1547
|
+
return tableCell ? tableCell(row, params) : headData.map(function (item, index) {
|
|
1548
|
+
var text = row[item.name];
|
|
1549
|
+
var colSpan = 1;
|
|
1490
1550
|
if (item.render) text = item.render(row, item, row[item.name], index, rowIndex);
|
|
1491
1551
|
if (formatter) text = formatter(row, item, row[item.name], index, rowIndex);
|
|
1492
|
-
|
|
1552
|
+
var itemStyle = handStyle(item);
|
|
1493
1553
|
// 存在显示列,最后一列占两格
|
|
1494
1554
|
if (showColumns === 'inside' && !operate && index === headData.length - 1 && !dragRow) {
|
|
1495
1555
|
colSpan = 2;
|
|
@@ -1513,25 +1573,25 @@ const TableBody = props => {
|
|
|
1513
1573
|
});
|
|
1514
1574
|
}, [tableCell, headData, align, formatter, orderFieldArr, orderTypeArr, sortTable, showColumns, operate, beyondText, fixedColumn, tipMaxWidth, dragRow]);
|
|
1515
1575
|
// 操作栏useCallback
|
|
1516
|
-
|
|
1576
|
+
var TableOperateUseCallback = useCallback(function (row, rowIndex) {
|
|
1517
1577
|
if (operate || dragRow) {
|
|
1518
|
-
|
|
1578
|
+
var colSpan = 1;
|
|
1519
1579
|
if (showColumns === 'inside' && operate) colSpan = 2;
|
|
1520
|
-
|
|
1580
|
+
var handOperate = function handOperate() {
|
|
1521
1581
|
if (operate === null || operate === void 0 ? void 0 : operate.render) return operate.render(row);
|
|
1522
1582
|
if (operate === null || operate === void 0 ? void 0 : operate.operateBtnRender) {
|
|
1523
|
-
|
|
1583
|
+
var operateConfig = operate.operateBtnRender(row, rowIndex);
|
|
1524
1584
|
return jsx(OperateBtn, Object.assign({}, operateConfig));
|
|
1525
1585
|
}
|
|
1526
1586
|
};
|
|
1527
|
-
|
|
1528
|
-
|
|
1587
|
+
var handStyle = function handStyle() {
|
|
1588
|
+
var json = {
|
|
1529
1589
|
right: '0'
|
|
1530
1590
|
};
|
|
1531
1591
|
return json;
|
|
1532
1592
|
};
|
|
1533
|
-
|
|
1534
|
-
|
|
1593
|
+
var handCls = function handCls() {
|
|
1594
|
+
var str = 'table-operate';
|
|
1535
1595
|
if (!operate) str += ' table-operate-center';
|
|
1536
1596
|
if (fixedColumn) {
|
|
1537
1597
|
str += ' table-fixed-dom-right';
|
|
@@ -1572,11 +1632,11 @@ const TableBody = props => {
|
|
|
1572
1632
|
}
|
|
1573
1633
|
}, [operate, align, showColumns, posFixed, fixedColumn, dragRow, onDragRow, dragBol]);
|
|
1574
1634
|
// 嵌套表格useCallback
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1635
|
+
var TableExpandableContentUseCallback = useCallback(function (row) {
|
|
1636
|
+
var id = row[rowKey];
|
|
1637
|
+
var expandItem = expandableRow[id] || {};
|
|
1578
1638
|
if (expandable && expandItem.status === 'develop') {
|
|
1579
|
-
|
|
1639
|
+
var expandableDemo = expandable(row);
|
|
1580
1640
|
if (expandableDemo === false) return null; // 展开表格返回值为false,不展示这一行
|
|
1581
1641
|
return jsx(TrElement, Object.assign({
|
|
1582
1642
|
className: "table-body-expand-row"
|
|
@@ -1591,7 +1651,7 @@ const TableBody = props => {
|
|
|
1591
1651
|
}
|
|
1592
1652
|
}, [expandable, expandableRow, expandableColSpan, rowKey]);
|
|
1593
1653
|
// 加载更多
|
|
1594
|
-
|
|
1654
|
+
var MoreMemo = useMemo(function () {
|
|
1595
1655
|
if (!loadMore || !showMoreBtn) return null;
|
|
1596
1656
|
return jsx(TrElement, Object.assign({
|
|
1597
1657
|
className: "more-table-row",
|
|
@@ -1614,10 +1674,10 @@ const TableBody = props => {
|
|
|
1614
1674
|
}))
|
|
1615
1675
|
}));
|
|
1616
1676
|
}, [expandableColSpan, loadMore, loadMoreRender, onClickMore, showMoreBtn, changePage, loadMoreUrl, lineHeight]);
|
|
1617
|
-
|
|
1677
|
+
var TableBodySubjectContentMemo = useMemo(function () {
|
|
1618
1678
|
return jsx(Fragment, {
|
|
1619
|
-
children: rowData.map((row, index)
|
|
1620
|
-
|
|
1679
|
+
children: rowData.map(function (row, index) {
|
|
1680
|
+
var str = 'table-body-row';
|
|
1621
1681
|
if (rowClassMapping && rowClassMapping[row[rowKey]]) {
|
|
1622
1682
|
str += " ".concat(rowClassMapping[row[rowKey]]);
|
|
1623
1683
|
}
|
|
@@ -1627,7 +1687,7 @@ const TableBody = props => {
|
|
|
1627
1687
|
style: {
|
|
1628
1688
|
height: "".concat(lineHeight, "px")
|
|
1629
1689
|
},
|
|
1630
|
-
onClick: e
|
|
1690
|
+
onClick: function onClick(e) {
|
|
1631
1691
|
onClickRow && onClickRow(row, e);
|
|
1632
1692
|
}
|
|
1633
1693
|
}, {
|
|
@@ -1638,32 +1698,32 @@ const TableBody = props => {
|
|
|
1638
1698
|
});
|
|
1639
1699
|
}, [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]);
|
|
1640
1700
|
// 内容memo
|
|
1641
|
-
|
|
1701
|
+
var TableBodyContentMemo = useMemo(function () {
|
|
1642
1702
|
return jsxs(Fragment$1, {
|
|
1643
1703
|
children: [TableBodySubjectContentMemo, MoreMemo]
|
|
1644
1704
|
});
|
|
1645
1705
|
}, [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]);
|
|
1646
1706
|
// 处理内容
|
|
1647
|
-
|
|
1707
|
+
var handContent = function handContent() {
|
|
1648
1708
|
// 无数据,且不再请求,显示暂无数据
|
|
1649
1709
|
if (rowData.length === 0 && !loadState) return NodataMemo;
|
|
1650
1710
|
return TableBodyContentMemo;
|
|
1651
1711
|
};
|
|
1652
|
-
|
|
1653
|
-
|
|
1712
|
+
var handleRowData = function handleRowData() {
|
|
1713
|
+
var arr = [];
|
|
1654
1714
|
if (dragRow) {
|
|
1655
|
-
rowData.forEach(item
|
|
1656
|
-
|
|
1715
|
+
rowData.forEach(function (item) {
|
|
1716
|
+
var obj = {};
|
|
1657
1717
|
obj[rowKey] = item[rowKey];
|
|
1658
1718
|
arr.push(obj);
|
|
1659
1719
|
});
|
|
1660
1720
|
}
|
|
1661
1721
|
return arr;
|
|
1662
1722
|
};
|
|
1663
|
-
|
|
1723
|
+
var onChoose = function onChoose() {
|
|
1664
1724
|
setDragBol(true);
|
|
1665
1725
|
};
|
|
1666
|
-
|
|
1726
|
+
var onDragRowCom = function onDragRowCom(evt) {
|
|
1667
1727
|
setDragBol(false);
|
|
1668
1728
|
onDragRow && onDragRow(evt);
|
|
1669
1729
|
};
|
|
@@ -1679,29 +1739,36 @@ const TableBody = props => {
|
|
|
1679
1739
|
}));
|
|
1680
1740
|
};
|
|
1681
1741
|
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
|
|
1697
|
-
|
|
1698
|
-
checkNumber = 0,
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
|
|
1742
|
+
var TableHead = function TableHead(props) {
|
|
1743
|
+
var paginationType = props.paginationType,
|
|
1744
|
+
flippingArrow = props.flippingArrow,
|
|
1745
|
+
autoPagination = props.autoPagination,
|
|
1746
|
+
total = props.total,
|
|
1747
|
+
page = props.page,
|
|
1748
|
+
rowsPerPage = props.rowsPerPage,
|
|
1749
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1750
|
+
changePage = props.changePage,
|
|
1751
|
+
changeRowsPerPage = props.changeRowsPerPage,
|
|
1752
|
+
refreshInside = props.refreshInside,
|
|
1753
|
+
checkCount = props.checkCount,
|
|
1754
|
+
onRefresh = props.onRefresh,
|
|
1755
|
+
selectAll = props.selectAll,
|
|
1756
|
+
selectStatus = props.selectStatus,
|
|
1757
|
+
_props$checkNumber = props.checkNumber,
|
|
1758
|
+
checkNumber = _props$checkNumber === void 0 ? 0 : _props$checkNumber,
|
|
1759
|
+
_props$currentPageTot = props.currentPageTotal,
|
|
1760
|
+
currentPageTotal = _props$currentPageTot === void 0 ? 0 : _props$currentPageTot,
|
|
1761
|
+
resizePaginationLine = props.resizePaginationLine;
|
|
1762
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1763
|
+
var _useState = useState(false),
|
|
1764
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1765
|
+
indeterminate = _useState2[0],
|
|
1766
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
1767
|
+
var _useState3 = useState(false),
|
|
1768
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1769
|
+
checked = _useState4[0],
|
|
1770
|
+
setChecked = _useState4[1]; // 选中
|
|
1771
|
+
useEffect(function () {
|
|
1705
1772
|
// 全选
|
|
1706
1773
|
if (selectStatus === 'all') {
|
|
1707
1774
|
setChecked(true);
|
|
@@ -1723,23 +1790,23 @@ const TableHead = props => {
|
|
|
1723
1790
|
* @param event 操作元素
|
|
1724
1791
|
* @param bol 选中 / 不选中
|
|
1725
1792
|
*/
|
|
1726
|
-
|
|
1793
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
1727
1794
|
if (selectAll) selectAll(event, bol);
|
|
1728
1795
|
};
|
|
1729
1796
|
// 改变页面
|
|
1730
|
-
|
|
1797
|
+
var changePageCom = function changePageCom(num) {
|
|
1731
1798
|
changePage && changePage(num);
|
|
1732
1799
|
};
|
|
1733
1800
|
// 改变每页显示条数
|
|
1734
|
-
|
|
1801
|
+
var changeRowsPerPageCom = function changeRowsPerPageCom(num) {
|
|
1735
1802
|
changeRowsPerPage && changeRowsPerPage(num);
|
|
1736
1803
|
};
|
|
1737
1804
|
// 刷新
|
|
1738
|
-
|
|
1805
|
+
var clickRefresh = function clickRefresh() {
|
|
1739
1806
|
onRefresh && onRefresh();
|
|
1740
1807
|
};
|
|
1741
1808
|
// 处理分页右侧
|
|
1742
|
-
|
|
1809
|
+
var handlePaginationRight = function handlePaginationRight() {
|
|
1743
1810
|
if (!checkCount) return null;
|
|
1744
1811
|
return jsxs("div", Object.assign({
|
|
1745
1812
|
className: 'table-pagination-right'
|
|
@@ -1762,8 +1829,8 @@ const TableHead = props => {
|
|
|
1762
1829
|
}));
|
|
1763
1830
|
};
|
|
1764
1831
|
// 处理样式
|
|
1765
|
-
|
|
1766
|
-
|
|
1832
|
+
var handleClass = function handleClass() {
|
|
1833
|
+
var str = 'table-pagination';
|
|
1767
1834
|
return str;
|
|
1768
1835
|
};
|
|
1769
1836
|
return jsxs("div", Object.assign({
|
|
@@ -1781,7 +1848,10 @@ const TableHead = props => {
|
|
|
1781
1848
|
currentRowsPerPage: currentRowsPerPage,
|
|
1782
1849
|
changePage: changePageCom,
|
|
1783
1850
|
changeRowsPerPage: changeRowsPerPageCom,
|
|
1784
|
-
getPopupContainer: ()
|
|
1851
|
+
getPopupContainer: function getPopupContainer() {
|
|
1852
|
+
return document.body;
|
|
1853
|
+
},
|
|
1854
|
+
resizeLine: resizePaginationLine
|
|
1785
1855
|
}), refreshInside && jsx(Button.IconButton, Object.assign({
|
|
1786
1856
|
className: 'refresh-btn',
|
|
1787
1857
|
variant: "outlined",
|
|
@@ -1795,16 +1865,14 @@ const TableHead = props => {
|
|
|
1795
1865
|
var css_248z$2 = ".table-container {\n overflow-x: auto;\n}";
|
|
1796
1866
|
styleInject(css_248z$2);
|
|
1797
1867
|
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
children
|
|
1804
|
-
} = props,
|
|
1868
|
+
var TableContainer = function TableContainer(props) {
|
|
1869
|
+
var cRef = props.cRef,
|
|
1870
|
+
className = props.className,
|
|
1871
|
+
style = props.style,
|
|
1872
|
+
children = props.children,
|
|
1805
1873
|
otherProps = __rest(props, ["cRef", "className", "style", "children"]);
|
|
1806
|
-
|
|
1807
|
-
|
|
1874
|
+
var handClass = function handClass() {
|
|
1875
|
+
var str = 'table-container';
|
|
1808
1876
|
if (className) str += " ".concat(className);
|
|
1809
1877
|
return str;
|
|
1810
1878
|
};
|
|
@@ -1820,16 +1888,14 @@ const TableContainer = props => {
|
|
|
1820
1888
|
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}";
|
|
1821
1889
|
styleInject(css_248z$1);
|
|
1822
1890
|
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
children
|
|
1829
|
-
} = props,
|
|
1891
|
+
var TableElement = function TableElement(props) {
|
|
1892
|
+
var className = props.className,
|
|
1893
|
+
style = props.style,
|
|
1894
|
+
fixedColumn = props.fixedColumn,
|
|
1895
|
+
children = props.children,
|
|
1830
1896
|
otherProps = __rest(props, ["className", "style", "fixedColumn", "children"]);
|
|
1831
|
-
|
|
1832
|
-
|
|
1897
|
+
var handClass = function handClass() {
|
|
1898
|
+
var str = 'table-element';
|
|
1833
1899
|
if (fixedColumn) str += ' table-element-fixed-column';
|
|
1834
1900
|
if (className) str += " ".concat(className);
|
|
1835
1901
|
return str;
|
|
@@ -1922,7 +1988,8 @@ const Table = propsInit => {
|
|
|
1922
1988
|
onError,
|
|
1923
1989
|
refreshInside = props.url ? true : false,
|
|
1924
1990
|
checkCount = props.check ? true : false,
|
|
1925
|
-
onDragRow
|
|
1991
|
+
onDragRow,
|
|
1992
|
+
resizePaginationLine
|
|
1926
1993
|
} = props;
|
|
1927
1994
|
const intl = useFormatMessage('Table', localeJson);
|
|
1928
1995
|
const dayNum = props.expirationTime ? props.expirationTime === 0 ? 100000000 : props.expirationTime : 7; // 过期天数
|
|
@@ -3032,9 +3099,10 @@ const Table = propsInit => {
|
|
|
3032
3099
|
selectStatus: headSelectStatus,
|
|
3033
3100
|
selectAll: setAllCheck,
|
|
3034
3101
|
checkNumber: Object.keys(checkJson).length,
|
|
3035
|
-
currentPageTotal: rowData.length
|
|
3102
|
+
currentPageTotal: rowData.length,
|
|
3103
|
+
resizePaginationLine: resizePaginationLine
|
|
3036
3104
|
});
|
|
3037
|
-
}, [total, pageCom, sizeCom, sizeArrCom, pagination, loadMore, autoPagination, paginationType, flippingArrow, refreshInside, checkCount, headSelectStatus, rowData, checkJson, disabledJson, totalDataJson]);
|
|
3105
|
+
}, [total, pageCom, sizeCom, sizeArrCom, pagination, loadMore, autoPagination, paginationType, flippingArrow, refreshInside, checkCount, headSelectStatus, rowData, checkJson, disabledJson, totalDataJson, resizePaginationLine]);
|
|
3038
3106
|
// 表格内容滚动
|
|
3039
3107
|
const tableBoxScroll = e => {
|
|
3040
3108
|
const dom = tableRef.current;
|