@para-ui/core 4.0.29 → 4.0.31
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/AutoButton/index.d.ts +41 -0
- package/AutoButton/index.js +213 -0
- package/AutoButton/lang/en_US.d.ts +4 -0
- package/AutoButton/lang/index.d.ts +9 -0
- package/AutoButton/lang/zh_CN.d.ts +4 -0
- package/Badge/index.d.ts +3 -1
- package/Badge/index.js +15 -5
- package/Card/index.d.ts +53 -0
- package/Card/index.js +218 -0
- package/Card/lang/en_US.d.ts +5 -0
- package/Card/lang/index.d.ts +11 -0
- package/Card/lang/zh_CN.d.ts +5 -0
- package/Cascader/index.js +6 -7
- package/ComboSelect/index.js +7 -4
- package/CycleSelector/index.js +3 -1
- package/DatePicker/index.js +3 -1
- package/DragVerify/index.js +7 -2
- package/DynamicMultiBox/index.js +8 -6
- package/Form/index.js +8 -5
- package/FormItem/index.js +8 -5
- package/Image/index.js +3 -4
- package/PopConfirm/index.js +2 -2
- package/PopMenu/index.js +16 -5
- package/QuickReply/index.js +1 -1
- package/README.md +14 -0
- package/RangeInput/index.d.ts +59 -0
- package/RangeInput/index.js +193 -0
- package/Select/index.js +2 -2
- package/Selector/index.js +282 -548
- package/SelectorPicker/index.js +5 -5
- package/SingleBox/index.js +2 -2
- package/SortBox/index.d.ts +27 -0
- package/SortBox/index.js +64 -0
- package/Stepper/index.js +1 -1
- package/Switch/index.js +2 -2
- package/Table/index.js +471 -409
- package/Tabs/index.js +2 -2
- package/Tag/index.js +82 -53
- package/TextEditor/index.js +3 -3
- package/TimePicker/index.js +3 -1
- package/Timeline/index.js +14 -20
- package/ToggleButton/index.js +25 -26
- package/Transfer/index.js +48 -43
- package/Tree/index.js +8 -5
- package/Upload/ImageUpload/index.d.ts +2 -7
- package/Upload/index.js +848 -495
- package/Upload/interface.d.ts +18 -0
- package/_verture/{Portal-5bd49559.js → Portal-edd94cac.js} +2 -2
- package/_verture/{index-15a0b6a6.js → index-3795d730.js} +1 -1
- package/_verture/{index-e9405e35.js → index-567b5779.js} +395 -313
- package/_verture/{index-68f0506c.js → index-8752ccab.js} +4 -5
- package/_verture/index-94e24006.js +327 -0
- package/_verture/{slicedToArray-a8206399.js → slicedToArray-75fa4188.js} +15 -2
- package/_verture/{toConsumableArray-8f4c9589.js → toConsumableArray-c7a8028f.js} +1 -1
- package/index.d.ts +8 -0
- package/index.js +16 -11
- package/locale/en-US.d.ts +7 -0
- package/locale/index.d.ts +14 -0
- package/locale/index.js +14 -0
- package/locale/zh-CN.d.ts +7 -0
- package/package.json +2 -4
- package/umd/AutoButton.js +43 -0
- package/umd/Badge.js +1 -1
- package/umd/Card.js +1 -0
- package/umd/DragVerify.js +1 -1
- package/umd/FunctionModal.js +3 -3
- package/umd/Modal.js +2 -2
- package/umd/PopMenu.js +2 -2
- package/umd/RangeInput.js +43 -0
- package/umd/SortBox.js +41 -0
- package/umd/Upload.js +4 -4
- package/umd/locale.js +1 -1
- package/_verture/unsupportedIterableToArray-cb478f24.js +0 -16
- /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 { _ as __rest, a as __awaiter } from '../_verture/tslib.es6-55ed4bd2.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,6 +16,7 @@ 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';
|
|
19
|
+
import { _ as _defineProperty } from '../_verture/defineProperty-6f62bb2a.js';
|
|
17
20
|
import { Radio } from '../Radio/index.js';
|
|
18
21
|
import OperateBtn from '../OperateBtn/index.js';
|
|
19
22
|
import Down from '@para-ui/icons/Down';
|
|
@@ -59,25 +62,23 @@ import '@para-ui/icons/DoubleRight';
|
|
|
59
62
|
* 发送请求
|
|
60
63
|
* @param obj {ReqProps} 请求信息
|
|
61
64
|
*/
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
data
|
|
68
|
-
} = obj,
|
|
65
|
+
var requestFunc = function requestFunc(obj) {
|
|
66
|
+
var method = obj.method,
|
|
67
|
+
url = obj.url,
|
|
68
|
+
ctx = obj.ctx,
|
|
69
|
+
data = obj.data,
|
|
69
70
|
otherProps = __rest(obj, ["method", "url", "ctx", "data"]);
|
|
70
71
|
if (method === 'Get') {
|
|
71
72
|
return Get(Object.assign({
|
|
72
73
|
url: url,
|
|
73
|
-
ctx
|
|
74
|
+
ctx: ctx
|
|
74
75
|
}, otherProps));
|
|
75
76
|
}
|
|
76
77
|
if (method === 'Post') {
|
|
77
78
|
return Post(Object.assign({
|
|
78
79
|
url: url,
|
|
79
|
-
ctx,
|
|
80
|
-
data
|
|
80
|
+
ctx: ctx,
|
|
81
|
+
data: data
|
|
81
82
|
}, otherProps));
|
|
82
83
|
}
|
|
83
84
|
};
|
|
@@ -86,23 +87,23 @@ const requestFunc = obj => {
|
|
|
86
87
|
* @param obj {ReqProps} 请求信息
|
|
87
88
|
* @return string get请求地址参数
|
|
88
89
|
*/
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
for (
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
if (
|
|
90
|
+
var handGetReqParams = function handGetReqParams(obj) {
|
|
91
|
+
var str = obj.url;
|
|
92
|
+
var params = obj.data || {};
|
|
93
|
+
var arrKey = Object.keys(params);
|
|
94
|
+
var paramsArr = [];
|
|
95
|
+
for (var i = 0, l = arrKey.length; i < l; i++) {
|
|
96
|
+
var key = arrKey[i];
|
|
97
|
+
var val = params[key];
|
|
98
|
+
if (_typeof(val) === 'object') {
|
|
98
99
|
val = encodeURIComponent(JSON.stringify(val));
|
|
99
100
|
} else {
|
|
100
101
|
val = encodeURIComponent(val);
|
|
101
102
|
}
|
|
102
103
|
paramsArr.push("".concat(key, "=").concat(val));
|
|
103
104
|
}
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
var paramsStr = paramsArr.join('&');
|
|
106
|
+
var pos = str.indexOf('?');
|
|
106
107
|
if (pos !== -1) {
|
|
107
108
|
str += (pos === str.length - 1 ? '' : '&') + paramsStr;
|
|
108
109
|
} else {
|
|
@@ -113,9 +114,9 @@ const handGetReqParams = obj => {
|
|
|
113
114
|
/**
|
|
114
115
|
* 提取字符串里面的数字
|
|
115
116
|
* */
|
|
116
|
-
|
|
117
|
+
var getStringInNumber = function getStringInNumber(str) {
|
|
117
118
|
if (typeof str === 'number') return str;
|
|
118
|
-
|
|
119
|
+
var strHand = str.replace(/[^0-9$]/gi, '');
|
|
119
120
|
return Number(strHand);
|
|
120
121
|
};
|
|
121
122
|
/**
|
|
@@ -123,23 +124,23 @@ const getStringInNumber = str => {
|
|
|
123
124
|
* @param key {string} 键值
|
|
124
125
|
* @param num {number} 过期天数
|
|
125
126
|
* */
|
|
126
|
-
|
|
127
|
+
var getLocalStorageSelectHead = function getLocalStorageSelectHead(key, num) {
|
|
127
128
|
//debugger
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
for (
|
|
132
|
-
|
|
133
|
-
|
|
129
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
130
|
+
var headJson = JSON.parse(headJsonStr);
|
|
131
|
+
var headJsonArr = Object.keys(headJson);
|
|
132
|
+
for (var i = 0, l = headJsonArr.length; i < l; i++) {
|
|
133
|
+
var keyStr = headJsonArr[i];
|
|
134
|
+
var item = headJson[i];
|
|
134
135
|
if (!item) continue;
|
|
135
|
-
|
|
136
|
-
|
|
136
|
+
var newDate = new Date().getTime(); // 当前时间
|
|
137
|
+
var endTime = item.storageTime + item.validity; // 过期时间
|
|
137
138
|
// 过期时间 小于 当前时间, 说明已经过期了, 删除当前表格列数据
|
|
138
139
|
if (endTime < newDate) {
|
|
139
140
|
delete headJson[keyStr];
|
|
140
141
|
}
|
|
141
142
|
}
|
|
142
|
-
|
|
143
|
+
var headJsonItem = headJson[key];
|
|
143
144
|
// 重置过期时间
|
|
144
145
|
if (headJsonItem) {
|
|
145
146
|
headJsonItem.storageTime = new Date().getTime();
|
|
@@ -152,9 +153,9 @@ const getLocalStorageSelectHead = (key, num) => {
|
|
|
152
153
|
* @param key {string} 键值
|
|
153
154
|
* @param val {HeadLocalStorageItem} 保存值
|
|
154
155
|
* */
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
156
|
+
var setLocalStorageSelectHead = function setLocalStorageSelectHead(key, val) {
|
|
157
|
+
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
158
|
+
var headJson = JSON.parse(headJsonStr);
|
|
158
159
|
headJson[key] = val;
|
|
159
160
|
window.localStorage.setItem('_paraui_table_head', JSON.stringify(headJson));
|
|
160
161
|
};
|
|
@@ -163,8 +164,8 @@ const setLocalStorageSelectHead = (key, val) => {
|
|
|
163
164
|
* @param el 当前元素
|
|
164
165
|
* @param selector 查找元素class
|
|
165
166
|
*/
|
|
166
|
-
|
|
167
|
-
|
|
167
|
+
var closest = function closest(el, selector) {
|
|
168
|
+
var matchesSelector = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;
|
|
168
169
|
while (el) {
|
|
169
170
|
if (matchesSelector.call(el, selector)) {
|
|
170
171
|
break;
|
|
@@ -354,49 +355,69 @@ var zh = {
|
|
|
354
355
|
};
|
|
355
356
|
|
|
356
357
|
var localeJson = {
|
|
357
|
-
zh,
|
|
358
|
-
en
|
|
358
|
+
zh: zh,
|
|
359
|
+
en: en
|
|
359
360
|
};
|
|
360
361
|
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
headData = [],
|
|
364
|
-
sortTable,
|
|
365
|
-
filter,
|
|
366
|
-
expandable,
|
|
367
|
-
check,
|
|
368
|
-
radio,
|
|
369
|
-
onRequestSort,
|
|
370
|
-
orderFieldArr =
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
362
|
+
var TableHead$1 = function TableHead(props) {
|
|
363
|
+
var _props$headData = props.headData,
|
|
364
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
365
|
+
sortTable = props.sortTable,
|
|
366
|
+
filter = props.filter,
|
|
367
|
+
expandable = props.expandable,
|
|
368
|
+
check = props.check,
|
|
369
|
+
radio = props.radio,
|
|
370
|
+
onRequestSort = props.onRequestSort,
|
|
371
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
372
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
373
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
374
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
375
|
+
selectAll = props.selectAll,
|
|
376
|
+
selectStatus = props.selectStatus,
|
|
377
|
+
align = props.align,
|
|
378
|
+
_props$showList = props.showList,
|
|
379
|
+
showList = _props$showList === void 0 ? [] : _props$showList,
|
|
380
|
+
changeShowList = props.changeShowList,
|
|
381
|
+
selectFilter = props.selectFilter,
|
|
382
|
+
changeFilter = props.changeFilter,
|
|
383
|
+
operate = props.operate,
|
|
384
|
+
showColumns = props.showColumns,
|
|
385
|
+
fixedTable = props.fixedTable,
|
|
386
|
+
fixedColumn = props.fixedColumn,
|
|
387
|
+
posFixed = props.posFixed,
|
|
388
|
+
beyondText = props.beyondText,
|
|
389
|
+
lineWidth = props.lineWidth,
|
|
390
|
+
dragColumn = props.dragColumn,
|
|
391
|
+
changeColumnWidth = props.changeColumnWidth,
|
|
392
|
+
headDataConfig = props.headDataConfig,
|
|
393
|
+
getPopupContainer = props.getPopupContainer,
|
|
394
|
+
tipMaxWidth = props.tipMaxWidth;
|
|
395
|
+
var _useState = useState(false),
|
|
396
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
397
|
+
indeterminate = _useState2[0],
|
|
398
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
399
|
+
var _useState3 = useState(false),
|
|
400
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
401
|
+
checked = _useState4[0],
|
|
402
|
+
setChecked = _useState4[1]; // 选中
|
|
403
|
+
var _useState5 = useState(null),
|
|
404
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
405
|
+
anchorElColums = _useState6[0],
|
|
406
|
+
setAnchorElColums = _useState6[1]; // 显示列定位元素
|
|
407
|
+
var _useState7 = useState({}),
|
|
408
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
409
|
+
headDataJson = _useState8[0],
|
|
410
|
+
setHeadDataJson = _useState8[1]; // 显示列json
|
|
411
|
+
var _useState9 = useState({}),
|
|
412
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
413
|
+
filterHead = _useState10[0],
|
|
414
|
+
setFilterHead = _useState10[1]; // 过滤项当前表头数据
|
|
415
|
+
var _useState11 = useState({}),
|
|
416
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
417
|
+
selectFilterCom = _useState12[0],
|
|
418
|
+
setSelectFilterCom = _useState12[1]; // 过滤项当前选中值
|
|
419
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
420
|
+
useEffect(function () {
|
|
400
421
|
// 全选
|
|
401
422
|
if (selectStatus === 'all') {
|
|
402
423
|
setChecked(true);
|
|
@@ -413,17 +434,17 @@ const TableHead$1 = props => {
|
|
|
413
434
|
setIndeterminate(false);
|
|
414
435
|
}
|
|
415
436
|
}, [selectStatus]);
|
|
416
|
-
useEffect(()
|
|
437
|
+
useEffect(function () {
|
|
417
438
|
if (headData) {
|
|
418
|
-
|
|
419
|
-
for (
|
|
420
|
-
|
|
439
|
+
var json = [];
|
|
440
|
+
for (var i = 0, l = headData.length; i < l; i++) {
|
|
441
|
+
var item = headData[i];
|
|
421
442
|
json[item.name] = item;
|
|
422
443
|
}
|
|
423
444
|
setHeadDataJson(json);
|
|
424
445
|
}
|
|
425
446
|
}, [headData]);
|
|
426
|
-
useEffect(()
|
|
447
|
+
useEffect(function () {
|
|
427
448
|
if (selectFilter) setSelectFilterCom(DeepClone(selectFilter));
|
|
428
449
|
}, [selectFilter]);
|
|
429
450
|
/**
|
|
@@ -431,28 +452,30 @@ const TableHead$1 = props => {
|
|
|
431
452
|
* @param name 排序列
|
|
432
453
|
* @param event 当前排序元素
|
|
433
454
|
*/
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
455
|
+
var createSortHandler = function createSortHandler(name, item) {
|
|
456
|
+
return function (event) {
|
|
457
|
+
// 不存在排序,不触发事件
|
|
458
|
+
if (!(sortTable && item.name && item.sort !== false)) return;
|
|
459
|
+
if (onRequestSort) onRequestSort(event, name);
|
|
460
|
+
};
|
|
438
461
|
};
|
|
439
462
|
/**
|
|
440
463
|
* 全选 / 全不选
|
|
441
464
|
* @param event 操作元素
|
|
442
465
|
* @param bol 选中 / 不选中
|
|
443
466
|
*/
|
|
444
|
-
|
|
467
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
445
468
|
if (selectAll) selectAll(event, bol);
|
|
446
469
|
};
|
|
447
470
|
/**
|
|
448
471
|
* 点击显示选择列
|
|
449
472
|
* @param event 点击元素
|
|
450
473
|
*/
|
|
451
|
-
|
|
474
|
+
var clickShowColums = function clickShowColums(event) {
|
|
452
475
|
setAnchorElColums(event.currentTarget);
|
|
453
476
|
};
|
|
454
477
|
// 点击隐藏选择列
|
|
455
|
-
|
|
478
|
+
var clickHideColums = function clickHideColums(bol) {
|
|
456
479
|
if (bol) return;
|
|
457
480
|
setAnchorElColums(null);
|
|
458
481
|
};
|
|
@@ -460,27 +483,29 @@ const TableHead$1 = props => {
|
|
|
460
483
|
* 点击显示列 列表
|
|
461
484
|
* @param item 详细
|
|
462
485
|
*/
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
486
|
+
var clickColumsList = function clickColumsList(item) {
|
|
487
|
+
return function () {
|
|
488
|
+
if (item.disabledSelection) return;
|
|
489
|
+
var name = item.name;
|
|
490
|
+
var itemHead = headDataJson[name];
|
|
491
|
+
if (itemHead) {
|
|
492
|
+
// 取消勾选
|
|
493
|
+
delete headDataJson[name];
|
|
494
|
+
var arr = Object.keys(headDataJson);
|
|
495
|
+
var arr1 = [];
|
|
496
|
+
for (var i = 0, l = arr.length; i < l; i++) {
|
|
497
|
+
var _name = arr[i];
|
|
498
|
+
arr1.push(headDataJson[_name]);
|
|
499
|
+
}
|
|
500
|
+
changeShowList && changeShowList(arr1, false, item);
|
|
501
|
+
} else {
|
|
502
|
+
headData.push(item);
|
|
503
|
+
changeShowList && changeShowList(headData, false, item);
|
|
475
504
|
}
|
|
476
|
-
|
|
477
|
-
} else {
|
|
478
|
-
headData.push(item);
|
|
479
|
-
changeShowList && changeShowList(headData, false, item);
|
|
480
|
-
}
|
|
505
|
+
};
|
|
481
506
|
};
|
|
482
507
|
// 重置显示列
|
|
483
|
-
|
|
508
|
+
var resetShowList = function resetShowList() {
|
|
484
509
|
changeShowList && changeShowList(headData, true);
|
|
485
510
|
};
|
|
486
511
|
/**
|
|
@@ -488,63 +513,69 @@ const TableHead$1 = props => {
|
|
|
488
513
|
* @param headCell 当前列信息
|
|
489
514
|
* @param event 元素
|
|
490
515
|
*/
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
516
|
+
var clickShowFilter = function clickShowFilter(headCell) {
|
|
517
|
+
return function (event) {
|
|
518
|
+
setFilterHead(headCell);
|
|
519
|
+
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
520
|
+
};
|
|
494
521
|
};
|
|
495
522
|
// 点击隐藏过滤
|
|
496
|
-
|
|
523
|
+
var clickHideFilter = function clickHideFilter(bol) {
|
|
497
524
|
if (bol) return;
|
|
498
525
|
setFilterHead({});
|
|
499
526
|
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
500
527
|
};
|
|
501
528
|
// 点击过滤
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
const filterRadio = filterHead.filterRadio;
|
|
514
|
-
if (filterRadio) {
|
|
515
|
-
// 过滤单个
|
|
516
|
-
const num = filterValue.indexOf(item.value);
|
|
517
|
-
if (num !== -1) {
|
|
518
|
-
filterValue = [filterValue[num]];
|
|
529
|
+
var clickFilter = function clickFilter(item) {
|
|
530
|
+
return function () {
|
|
531
|
+
var name = filterHead.name;
|
|
532
|
+
var filterValue = DeepClone(selectFilterCom[name] || []);
|
|
533
|
+
var index = filterValue.indexOf(item.value);
|
|
534
|
+
if (index !== -1) {
|
|
535
|
+
// 勾选 -> 不勾选
|
|
536
|
+
filterValue.splice(index, 1);
|
|
537
|
+
} else {
|
|
538
|
+
// 不勾选 -> 勾选
|
|
539
|
+
filterValue.push(item.value);
|
|
519
540
|
}
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
541
|
+
var filterRadio = filterHead.filterRadio;
|
|
542
|
+
if (filterRadio) {
|
|
543
|
+
// 过滤单个
|
|
544
|
+
var num = filterValue.indexOf(item.value);
|
|
545
|
+
if (num !== -1) {
|
|
546
|
+
filterValue = [filterValue[num]];
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
selectFilterCom[name] = filterValue;
|
|
550
|
+
setSelectFilterCom(Object.assign({}, selectFilterCom));
|
|
551
|
+
};
|
|
523
552
|
};
|
|
524
553
|
/**
|
|
525
554
|
* 重置 / 确定过滤
|
|
526
555
|
* @param type {'reset' | 'confirm'} 重置 / 确定过滤
|
|
527
556
|
*/
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
557
|
+
var filterFunc = function filterFunc(type) {
|
|
558
|
+
return function () {
|
|
559
|
+
if (type === 'confirm') {
|
|
560
|
+
// 确定
|
|
561
|
+
changeFilter && changeFilter(Object.assign({}, selectFilterCom));
|
|
562
|
+
setFilterHead({});
|
|
563
|
+
} else {
|
|
564
|
+
// 重置
|
|
565
|
+
var json = DeepClone(selectFilterCom);
|
|
566
|
+
delete json[filterHead.name];
|
|
567
|
+
setSelectFilterCom(json);
|
|
568
|
+
changeFilter && changeFilter(Object.assign({}, json));
|
|
569
|
+
setFilterHead({});
|
|
570
|
+
}
|
|
571
|
+
};
|
|
541
572
|
};
|
|
542
573
|
/**
|
|
543
574
|
* 自定义过滤确定
|
|
544
575
|
* @param val {[name: string]: any[]}
|
|
545
576
|
* */
|
|
546
|
-
|
|
547
|
-
|
|
577
|
+
var filterCustomConfirm = function filterCustomConfirm() {
|
|
578
|
+
var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
548
579
|
changeFilter && changeFilter(Object.assign({}, val));
|
|
549
580
|
setFilterHead({});
|
|
550
581
|
};
|
|
@@ -552,12 +583,12 @@ const TableHead$1 = props => {
|
|
|
552
583
|
* 处理TableCell
|
|
553
584
|
* @param item 当前列信息
|
|
554
585
|
*/
|
|
555
|
-
|
|
556
|
-
|
|
586
|
+
var handCellClass = function handCellClass(item) {
|
|
587
|
+
var str = 'table-header-box';
|
|
557
588
|
// 排序
|
|
558
589
|
if (sortTable && item.name && item.sort !== false) {
|
|
559
590
|
str += ' table-header-box-sort';
|
|
560
|
-
|
|
591
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
561
592
|
if (index !== -1) {
|
|
562
593
|
// 升序
|
|
563
594
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -576,10 +607,10 @@ const TableHead$1 = props => {
|
|
|
576
607
|
return str;
|
|
577
608
|
};
|
|
578
609
|
// 复选框memo
|
|
579
|
-
|
|
610
|
+
var TableCheckMemo = useMemo(function () {
|
|
580
611
|
if (check) {
|
|
581
|
-
|
|
582
|
-
|
|
612
|
+
var handCls = function handCls() {
|
|
613
|
+
var str = 'table-checkbox table-head-btn';
|
|
583
614
|
if (fixedColumn) {
|
|
584
615
|
str += ' table-fixed-dom-left';
|
|
585
616
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -607,10 +638,10 @@ const TableHead$1 = props => {
|
|
|
607
638
|
}
|
|
608
639
|
}, [check, indeterminate, checked, selectAll, posFixed, radio, expandable, fixedColumn]);
|
|
609
640
|
// 单选框memo
|
|
610
|
-
|
|
641
|
+
var TableRadioMemo = useMemo(function () {
|
|
611
642
|
if (radio) {
|
|
612
|
-
|
|
613
|
-
|
|
643
|
+
var handCls = function handCls() {
|
|
644
|
+
var str = 'table-radio table-head-btn';
|
|
614
645
|
if (fixedColumn) {
|
|
615
646
|
str += ' table-fixed-dom-left';
|
|
616
647
|
// 左边没有定位,没有嵌套表格
|
|
@@ -632,10 +663,10 @@ const TableHead$1 = props => {
|
|
|
632
663
|
}
|
|
633
664
|
}, [radio, posFixed, expandable, fixedColumn]);
|
|
634
665
|
// 嵌套表格memo
|
|
635
|
-
|
|
666
|
+
var TableExpandableMemo = useMemo(function () {
|
|
636
667
|
if (expandable) {
|
|
637
|
-
|
|
638
|
-
|
|
668
|
+
var handCls = function handCls() {
|
|
669
|
+
var str = 'table-expandable table-head-btn';
|
|
639
670
|
if (fixedColumn) {
|
|
640
671
|
str += ' table-fixed-dom-left';
|
|
641
672
|
// 左边没有定位,没有嵌套表格
|
|
@@ -657,21 +688,21 @@ const TableHead$1 = props => {
|
|
|
657
688
|
}
|
|
658
689
|
}, [expandable, posFixed, fixedColumn]);
|
|
659
690
|
// 过滤弹窗内容
|
|
660
|
-
|
|
661
|
-
|
|
691
|
+
var filterPopoverContent = function filterPopoverContent() {
|
|
692
|
+
var name = filterHead.name;
|
|
662
693
|
if (!name) return;
|
|
663
|
-
|
|
694
|
+
var filterValue = selectFilterCom[name] || [];
|
|
664
695
|
if (filterHead.filterRender) {
|
|
665
696
|
// 自定义渲染过滤
|
|
666
697
|
return filterHead.filterRender({
|
|
667
|
-
filterValue,
|
|
698
|
+
filterValue: filterValue,
|
|
668
699
|
selectFilter: selectFilterCom,
|
|
669
|
-
filterHead,
|
|
700
|
+
filterHead: filterHead,
|
|
670
701
|
setFilter: filterCustomConfirm
|
|
671
702
|
});
|
|
672
703
|
}
|
|
673
|
-
|
|
674
|
-
|
|
704
|
+
var arr = filterHead.enums || [];
|
|
705
|
+
var str = 'filter-select';
|
|
675
706
|
if (arr.length === 0) str += ' filter-select-none';
|
|
676
707
|
return jsx("div", Object.assign({
|
|
677
708
|
className: str
|
|
@@ -686,8 +717,8 @@ const TableHead$1 = props => {
|
|
|
686
717
|
children: [jsx("div", Object.assign({
|
|
687
718
|
className: "filter-select-box"
|
|
688
719
|
}, {
|
|
689
|
-
children: arr.map((item, index)
|
|
690
|
-
|
|
720
|
+
children: arr.map(function (item, index) {
|
|
721
|
+
var checked = filterValue.indexOf(item.value) !== -1;
|
|
691
722
|
return jsxs("div", Object.assign({
|
|
692
723
|
onClick: clickFilter(item),
|
|
693
724
|
className: checked ? 'filter-select-item filter-select-item-select' : 'filter-select-item'
|
|
@@ -726,28 +757,30 @@ const TableHead$1 = props => {
|
|
|
726
757
|
}));
|
|
727
758
|
};
|
|
728
759
|
// 表格列拖拽放下
|
|
729
|
-
|
|
730
|
-
|
|
760
|
+
var onDragDown = function onDragDown(headCell) {
|
|
761
|
+
return function (result) {
|
|
762
|
+
changeColumnWidth && changeColumnWidth(headCell, result);
|
|
763
|
+
};
|
|
731
764
|
};
|
|
732
765
|
// 获取宽度
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
766
|
+
var getWidth = function getWidth(item) {
|
|
767
|
+
var w = item.width || '';
|
|
768
|
+
var name = item.name || '';
|
|
769
|
+
var wDrag = headDataConfig[name] && headDataConfig[name].width;
|
|
737
770
|
if (wDrag) w = "".concat(wDrag, "px");
|
|
738
771
|
return w;
|
|
739
772
|
};
|
|
740
773
|
// 内容列memo
|
|
741
|
-
|
|
774
|
+
var TableContentMemo = useMemo(function () {
|
|
742
775
|
// 处理过滤的class
|
|
743
|
-
|
|
744
|
-
|
|
776
|
+
var handFilterClass = function handFilterClass(item) {
|
|
777
|
+
var str = 'table-header-filter';
|
|
745
778
|
if (filterHead.name === item.name) str += ' table-header-filter-show';
|
|
746
779
|
if (item.name && selectFilterCom[item.name] && selectFilterCom[item.name].length > 0) str += ' table-header-filter-select';
|
|
747
780
|
return str;
|
|
748
781
|
};
|
|
749
|
-
|
|
750
|
-
|
|
782
|
+
var handCls = function handCls(item) {
|
|
783
|
+
var str = '';
|
|
751
784
|
if (item.className) str += item.className;
|
|
752
785
|
if (fixedColumn && item.fixed) {
|
|
753
786
|
str += " table-fixed-dom-".concat(item.fixed);
|
|
@@ -762,8 +795,8 @@ const TableHead$1 = props => {
|
|
|
762
795
|
}
|
|
763
796
|
return str;
|
|
764
797
|
};
|
|
765
|
-
|
|
766
|
-
|
|
798
|
+
var handStyle = function handStyle(item) {
|
|
799
|
+
var json = {
|
|
767
800
|
width: getWidth(item)
|
|
768
801
|
};
|
|
769
802
|
if (fixedColumn && item.fixed && item.width) {
|
|
@@ -777,13 +810,13 @@ const TableHead$1 = props => {
|
|
|
777
810
|
return Object.assign(Object.assign({}, json), item.style);
|
|
778
811
|
};
|
|
779
812
|
// 处理拖拽
|
|
780
|
-
|
|
813
|
+
var handDrag = function handDrag(item) {
|
|
781
814
|
if (item.name === 'table-serial-number') return false; // 序号不拖拽
|
|
782
815
|
if (dragColumn && item.drag !== false) return true;
|
|
783
816
|
return false;
|
|
784
817
|
};
|
|
785
|
-
return headData.map((headCell, index)
|
|
786
|
-
|
|
818
|
+
return headData.map(function (headCell, index) {
|
|
819
|
+
var str = "".concat($prefixCls, "-filter-popover ").concat($prefixCls, "-scrollbar-small");
|
|
787
820
|
if (!headCell.filterRender) str += " ".concat($prefixCls, "-filter-popover-default");
|
|
788
821
|
return jsx(ThElement, Object.assign({
|
|
789
822
|
className: handCls(headCell),
|
|
@@ -800,7 +833,9 @@ const TableHead$1 = props => {
|
|
|
800
833
|
content: filterPopoverContent(),
|
|
801
834
|
onVisibleChange: clickHideFilter,
|
|
802
835
|
overlayClassName: str,
|
|
803
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
836
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
837
|
+
return document.body;
|
|
838
|
+
},
|
|
804
839
|
maxWidth: headCell.filterMaxWidth
|
|
805
840
|
}, {
|
|
806
841
|
children: jsxs("div", Object.assign({
|
|
@@ -845,10 +880,10 @@ const TableHead$1 = props => {
|
|
|
845
880
|
});
|
|
846
881
|
}, [headData, sortTable, filter, orderFieldArr, orderTypeArr, align, filterHead, selectFilterCom, beyondText, selectFilter, fixedColumn, lineWidth, dragColumn, changeColumnWidth, headDataConfig, getPopupContainer, tipMaxWidth]);
|
|
847
882
|
// 操作栏memo
|
|
848
|
-
|
|
883
|
+
var TableOperateMemo = useMemo(function () {
|
|
849
884
|
if (operate) {
|
|
850
|
-
|
|
851
|
-
|
|
885
|
+
var handCls = function handCls() {
|
|
886
|
+
var str = 'table-operate';
|
|
852
887
|
if (operate.operateBtnRender) str += ' table-operate-small';
|
|
853
888
|
if (fixedColumn) {
|
|
854
889
|
str += ' table-fixed-dom-right';
|
|
@@ -859,8 +894,8 @@ const TableHead$1 = props => {
|
|
|
859
894
|
}
|
|
860
895
|
return str;
|
|
861
896
|
};
|
|
862
|
-
|
|
863
|
-
|
|
897
|
+
var handStyle = function handStyle() {
|
|
898
|
+
var json = {
|
|
864
899
|
width: operate.width
|
|
865
900
|
};
|
|
866
901
|
if (fixedColumn) {
|
|
@@ -896,16 +931,16 @@ const TableHead$1 = props => {
|
|
|
896
931
|
}
|
|
897
932
|
}, [operate, align, posFixed, showColumns, posFixed, beyondText, fixedColumn, tipMaxWidth]);
|
|
898
933
|
// 显示列弹窗内容
|
|
899
|
-
|
|
934
|
+
var showListContent = function showListContent() {
|
|
900
935
|
return jsxs("div", Object.assign({
|
|
901
936
|
className: "show-colums-select"
|
|
902
937
|
}, {
|
|
903
938
|
children: [jsx("div", Object.assign({
|
|
904
939
|
className: "show-colums-select-box"
|
|
905
940
|
}, {
|
|
906
|
-
children: showList.map((item, index)
|
|
907
|
-
|
|
908
|
-
|
|
941
|
+
children: showList.map(function (item, index) {
|
|
942
|
+
var checked = Boolean(headDataJson[item.name]);
|
|
943
|
+
var str = 'show-colums-select-item';
|
|
909
944
|
if (checked) str += ' show-colums-select-item-select';
|
|
910
945
|
if (item.disabledSelection) str += ' show-colums-select-item-disabled';
|
|
911
946
|
return jsxs("div", Object.assign({
|
|
@@ -939,9 +974,9 @@ const TableHead$1 = props => {
|
|
|
939
974
|
}));
|
|
940
975
|
};
|
|
941
976
|
// 显示列memo
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
977
|
+
var TableShowList = useMemo(function () {
|
|
978
|
+
var handCls = function handCls() {
|
|
979
|
+
var str = 'show-colums table-fixed-dom-right';
|
|
945
980
|
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
946
981
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
947
982
|
str += ' table-fixed-dom-right-first';
|
|
@@ -954,7 +989,9 @@ const TableHead$1 = props => {
|
|
|
954
989
|
content: showListContent(),
|
|
955
990
|
onVisibleChange: clickHideColums,
|
|
956
991
|
overlayClassName: "".concat($prefixCls, "-table-show-colums-popover ").concat($prefixCls, "-scrollbar-small"),
|
|
957
|
-
getPopupContainer: getPopupContainer ? getPopupContainer : ()
|
|
992
|
+
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
993
|
+
return document.body;
|
|
994
|
+
}
|
|
958
995
|
}, {
|
|
959
996
|
children: jsx(ThElement, Object.assign({
|
|
960
997
|
align: "center",
|
|
@@ -971,8 +1008,8 @@ const TableHead$1 = props => {
|
|
|
971
1008
|
}));
|
|
972
1009
|
}, [showColumns, posFixed, operate, anchorElColums, showList, headDataJson, getPopupContainer, tipMaxWidth]);
|
|
973
1010
|
// 处理class
|
|
974
|
-
|
|
975
|
-
|
|
1011
|
+
var handClass = function handClass() {
|
|
1012
|
+
var str = 'table-head';
|
|
976
1013
|
if (showColumns === 'inside') str += ' table-head-inside';
|
|
977
1014
|
if (!fixedTable) str += ' table-head-scroll'; // 防止长度过长
|
|
978
1015
|
// 没有 复选框,单选框,展开 按钮
|
|
@@ -1030,71 +1067,92 @@ var TdElement = function TdElement(props) {
|
|
|
1030
1067
|
}));
|
|
1031
1068
|
};
|
|
1032
1069
|
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
rowData = [],
|
|
1038
|
-
rowKey =
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1070
|
+
var TableBody = function TableBody(props) {
|
|
1071
|
+
var url = props.url,
|
|
1072
|
+
emptyProps = props.emptyProps,
|
|
1073
|
+
_props$rowData = props.rowData,
|
|
1074
|
+
rowData = _props$rowData === void 0 ? [] : _props$rowData,
|
|
1075
|
+
_props$rowKey = props.rowKey,
|
|
1076
|
+
rowKey = _props$rowKey === void 0 ? 'key' : _props$rowKey,
|
|
1077
|
+
check = props.check,
|
|
1078
|
+
radio = props.radio,
|
|
1079
|
+
tableCell = props.tableCell,
|
|
1080
|
+
expandable = props.expandable,
|
|
1081
|
+
_props$headData = props.headData,
|
|
1082
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
1083
|
+
_props$disabledJson = props.disabledJson,
|
|
1084
|
+
disabledJson = _props$disabledJson === void 0 ? {} : _props$disabledJson,
|
|
1085
|
+
disabledArrStatus = props.disabledArrStatus,
|
|
1086
|
+
_props$checkJson = props.checkJson,
|
|
1087
|
+
checkJson = _props$checkJson === void 0 ? {} : _props$checkJson,
|
|
1088
|
+
radioValue = props.radioValue,
|
|
1089
|
+
selectCheck = props.selectCheck,
|
|
1090
|
+
selectRadio = props.selectRadio,
|
|
1091
|
+
align = props.align,
|
|
1092
|
+
operate = props.operate,
|
|
1093
|
+
showColumns = props.showColumns,
|
|
1094
|
+
fixedTable = props.fixedTable,
|
|
1095
|
+
fixedColumn = props.fixedColumn,
|
|
1096
|
+
formatter = props.formatter,
|
|
1097
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
1098
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
1099
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
1100
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
1101
|
+
sortTable = props.sortTable,
|
|
1102
|
+
loadState = props.loadState,
|
|
1103
|
+
loadMore = props.loadMore,
|
|
1104
|
+
loadMoreRender = props.loadMoreRender,
|
|
1105
|
+
onClickMore = props.onClickMore,
|
|
1106
|
+
total = props.total,
|
|
1107
|
+
page = props.page,
|
|
1108
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1109
|
+
changePage = props.changePage,
|
|
1110
|
+
loadMoreUrl = props.loadMoreUrl,
|
|
1111
|
+
_props$expandMultiple = props.expandMultiple,
|
|
1112
|
+
expandMultiple = _props$expandMultiple === void 0 ? false : _props$expandMultiple,
|
|
1113
|
+
_props$expandValue = props.expandValue,
|
|
1114
|
+
expandValue = _props$expandValue === void 0 ? [] : _props$expandValue,
|
|
1115
|
+
_props$disabledExpand = props.disabledExpand,
|
|
1116
|
+
disabledExpand = _props$disabledExpand === void 0 ? [] : _props$disabledExpand,
|
|
1117
|
+
_props$defaultExpandA = props.defaultExpandAllRows,
|
|
1118
|
+
defaultExpandAllRows = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,
|
|
1119
|
+
onExpand = props.onExpand,
|
|
1120
|
+
_onRefresh = props.onRefresh,
|
|
1121
|
+
posFixed = props.posFixed,
|
|
1122
|
+
beyondText = props.beyondText,
|
|
1123
|
+
onClickRow = props.onClickRow,
|
|
1124
|
+
rowClassMapping = props.rowClassMapping,
|
|
1125
|
+
tipMaxWidth = props.tipMaxWidth,
|
|
1126
|
+
lineHeight = props.lineHeight;
|
|
1127
|
+
var _useState = useState(0),
|
|
1128
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1129
|
+
expandableColSpan = _useState2[0],
|
|
1130
|
+
setExpandableColSpan = _useState2[1]; // 嵌套表格合并列数
|
|
1131
|
+
var _useState3 = useState({}),
|
|
1132
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1133
|
+
expandableRow = _useState4[0],
|
|
1134
|
+
setExpandableRow = _useState4[1]; // 当前哪行展开表格嵌套
|
|
1135
|
+
var _useState5 = useState(true),
|
|
1136
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
1137
|
+
showMoreBtn = _useState6[0],
|
|
1138
|
+
setShowMoreBtn = _useState6[1]; // 加载更多
|
|
1139
|
+
var _useState7 = useState({}),
|
|
1140
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
1141
|
+
disabledExpandJson = _useState8[0],
|
|
1142
|
+
setDisabledExpand = _useState8[1]; // 禁用加减部分嵌套
|
|
1143
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1086
1144
|
// 默认是否展开所有
|
|
1087
|
-
useEffect(()
|
|
1145
|
+
useEffect(function () {
|
|
1088
1146
|
if (!defaultExpandAllRows) {
|
|
1089
1147
|
setExpandableRow({});
|
|
1090
1148
|
return;
|
|
1091
1149
|
}
|
|
1092
|
-
|
|
1093
|
-
for (
|
|
1094
|
-
|
|
1095
|
-
|
|
1150
|
+
var json = {};
|
|
1151
|
+
for (var i = 0, l = rowData.length; i < l; i++) {
|
|
1152
|
+
var item = rowData[i] || {};
|
|
1153
|
+
var id = item[rowKey];
|
|
1096
1154
|
json[id] = {
|
|
1097
|
-
id,
|
|
1155
|
+
id: id,
|
|
1098
1156
|
status: 'develop'
|
|
1099
1157
|
};
|
|
1100
1158
|
}
|
|
@@ -1102,41 +1160,41 @@ const TableBody = props => {
|
|
|
1102
1160
|
}, [defaultExpandAllRows, rowData, rowKey]);
|
|
1103
1161
|
// 监听展开表格
|
|
1104
1162
|
// 如果直接写expandMultiple, expandValue会死循环
|
|
1105
|
-
useEffect(()
|
|
1163
|
+
useEffect(function () {
|
|
1106
1164
|
if (props.expandValue === undefined) return;
|
|
1107
|
-
|
|
1108
|
-
|
|
1165
|
+
var json = {};
|
|
1166
|
+
var expandValueHand = expandValue;
|
|
1109
1167
|
// 只展开一个,去第一个值
|
|
1110
1168
|
if (!expandMultiple && expandValue.length > 0) {
|
|
1111
1169
|
expandValueHand = [expandValue[0]];
|
|
1112
1170
|
}
|
|
1113
|
-
for (
|
|
1114
|
-
|
|
1171
|
+
for (var i = 0, l = expandValueHand.length; i < l; i++) {
|
|
1172
|
+
var id = expandValueHand[i];
|
|
1115
1173
|
json[id] = {
|
|
1116
|
-
id,
|
|
1174
|
+
id: id,
|
|
1117
1175
|
status: 'develop'
|
|
1118
1176
|
};
|
|
1119
1177
|
}
|
|
1120
1178
|
setExpandableRow(json);
|
|
1121
1179
|
}, [props.expandMultiple, props.expandValue, rowData]);
|
|
1122
1180
|
// 监听禁用嵌套 props.disabledExpand 防止死循环
|
|
1123
|
-
useEffect(()
|
|
1124
|
-
|
|
1125
|
-
for (
|
|
1126
|
-
|
|
1181
|
+
useEffect(function () {
|
|
1182
|
+
var json = {};
|
|
1183
|
+
for (var i = 0, l = disabledExpand.length; i < l; i++) {
|
|
1184
|
+
var id = disabledExpand[i];
|
|
1127
1185
|
json[id] = true;
|
|
1128
1186
|
}
|
|
1129
1187
|
setDisabledExpand(json);
|
|
1130
1188
|
}, [props.disabledExpand]);
|
|
1131
|
-
useEffect(()
|
|
1189
|
+
useEffect(function () {
|
|
1132
1190
|
if (loadMoreUrl) {
|
|
1133
|
-
|
|
1191
|
+
var bol = Number(total) > Number(page) * Number(currentRowsPerPage);
|
|
1134
1192
|
setShowMoreBtn(bol);
|
|
1135
1193
|
}
|
|
1136
1194
|
}, [loadMoreUrl, total, page, currentRowsPerPage]);
|
|
1137
1195
|
// 处理嵌套表格合并列数
|
|
1138
|
-
useEffect(()
|
|
1139
|
-
|
|
1196
|
+
useEffect(function () {
|
|
1197
|
+
var num = headData.length;
|
|
1140
1198
|
if (expandable) num += 1;
|
|
1141
1199
|
if (check) num += 1;
|
|
1142
1200
|
if (radio) num += 1;
|
|
@@ -1145,55 +1203,55 @@ const TableBody = props => {
|
|
|
1145
1203
|
setExpandableColSpan(num);
|
|
1146
1204
|
}, [headData, expandable, check, radio]);
|
|
1147
1205
|
// 展开/收起嵌套表格
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1206
|
+
var handClickNestTable = function handClickNestTable(row) {
|
|
1207
|
+
return function (event) {
|
|
1208
|
+
var id = row[rowKey];
|
|
1209
|
+
var expandItem = expandableRow[id] || {};
|
|
1210
|
+
var status = 'develop';
|
|
1211
|
+
if (expandItem.status === 'develop') status = 'retract';
|
|
1212
|
+
expandItem = {
|
|
1213
|
+
id: id,
|
|
1214
|
+
status: status
|
|
1215
|
+
};
|
|
1216
|
+
if (expandMultiple) {
|
|
1217
|
+
// 展开多个
|
|
1218
|
+
expandableRow[id] = expandItem;
|
|
1219
|
+
setExpandableRow(Object.assign({}, expandableRow));
|
|
1220
|
+
} else {
|
|
1221
|
+
// 展开一个
|
|
1222
|
+
setExpandableRow(_defineProperty({}, id, expandItem));
|
|
1223
|
+
}
|
|
1224
|
+
onExpand && onExpand(row, status);
|
|
1225
|
+
event.stopPropagation();
|
|
1156
1226
|
};
|
|
1157
|
-
if (expandMultiple) {
|
|
1158
|
-
// 展开多个
|
|
1159
|
-
expandableRow[id] = expandItem;
|
|
1160
|
-
setExpandableRow(Object.assign({}, expandableRow));
|
|
1161
|
-
} else {
|
|
1162
|
-
// 展开一个
|
|
1163
|
-
setExpandableRow({
|
|
1164
|
-
[id]: expandItem
|
|
1165
|
-
});
|
|
1166
|
-
}
|
|
1167
|
-
onExpand && onExpand(row, status);
|
|
1168
|
-
event.stopPropagation();
|
|
1169
1227
|
};
|
|
1170
1228
|
// 处理class
|
|
1171
|
-
|
|
1172
|
-
|
|
1229
|
+
var handClass = function handClass() {
|
|
1230
|
+
var str = 'table-body';
|
|
1173
1231
|
if (!fixedTable) str += ' table-body-scroll';
|
|
1174
1232
|
// 没有 复选框,单选框,展开 按钮
|
|
1175
1233
|
if (!check && !radio && !expandable) str += ' table-body-no-btn';
|
|
1176
1234
|
return str;
|
|
1177
1235
|
};
|
|
1178
1236
|
// 处理嵌套表格class
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1237
|
+
var handExpandClass = function handExpandClass(row) {
|
|
1238
|
+
var id = row[rowKey];
|
|
1239
|
+
var expandItem = expandableRow[id] || {};
|
|
1240
|
+
var str = 'retract';
|
|
1183
1241
|
if (expandItem.status === 'develop') {
|
|
1184
1242
|
str = 'expand';
|
|
1185
1243
|
}
|
|
1186
1244
|
return str;
|
|
1187
1245
|
};
|
|
1188
1246
|
// 点击加载更多
|
|
1189
|
-
|
|
1247
|
+
var clickMore = function clickMore() {
|
|
1190
1248
|
if (loadMoreUrl) changePage && changePage();
|
|
1191
1249
|
onClickMore && onClickMore();
|
|
1192
1250
|
};
|
|
1193
1251
|
// 暂无数据memo
|
|
1194
|
-
|
|
1252
|
+
var NodataMemo = useMemo(function () {
|
|
1195
1253
|
// 处理刷新按钮
|
|
1196
|
-
|
|
1254
|
+
var handRefreshBtn = function handRefreshBtn() {
|
|
1197
1255
|
if ((emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh) !== undefined) {
|
|
1198
1256
|
return emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh;
|
|
1199
1257
|
}
|
|
@@ -1203,8 +1261,8 @@ const TableBody = props => {
|
|
|
1203
1261
|
return false;
|
|
1204
1262
|
};
|
|
1205
1263
|
// 处理className
|
|
1206
|
-
|
|
1207
|
-
|
|
1264
|
+
var handClassNoData = function handClassNoData() {
|
|
1265
|
+
var str = 'table-no-data';
|
|
1208
1266
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size) str += " table-no-data-".concat(emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size);
|
|
1209
1267
|
return str;
|
|
1210
1268
|
};
|
|
@@ -1217,24 +1275,24 @@ const TableBody = props => {
|
|
|
1217
1275
|
}, {
|
|
1218
1276
|
children: jsx(Empty, Object.assign({}, emptyProps, {
|
|
1219
1277
|
showRefresh: handRefreshBtn(),
|
|
1220
|
-
onRefresh: event
|
|
1278
|
+
onRefresh: function onRefresh(event) {
|
|
1221
1279
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh) {
|
|
1222
1280
|
emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh(event);
|
|
1223
1281
|
return;
|
|
1224
1282
|
}
|
|
1225
|
-
|
|
1283
|
+
_onRefresh && _onRefresh();
|
|
1226
1284
|
}
|
|
1227
1285
|
}))
|
|
1228
1286
|
}))
|
|
1229
1287
|
}));
|
|
1230
|
-
}, [expandableColSpan, emptyProps, url,
|
|
1288
|
+
}, [expandableColSpan, emptyProps, url, _onRefresh]);
|
|
1231
1289
|
// 复选框useCallback
|
|
1232
|
-
|
|
1290
|
+
var TableCheckCallback = useCallback(function (row) {
|
|
1233
1291
|
if (check) {
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1292
|
+
var handId = row[rowKey];
|
|
1293
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1294
|
+
var checkHand = checkJson[handId] || false;
|
|
1295
|
+
var showCheck = true;
|
|
1238
1296
|
if (disabledHand && disabledArrStatus) {
|
|
1239
1297
|
// 选中
|
|
1240
1298
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1249,8 +1307,8 @@ const TableBody = props => {
|
|
|
1249
1307
|
showCheck = false;
|
|
1250
1308
|
}
|
|
1251
1309
|
}
|
|
1252
|
-
|
|
1253
|
-
|
|
1310
|
+
var handCls = function handCls() {
|
|
1311
|
+
var str = 'table-checkbox table-body-btn';
|
|
1254
1312
|
if (fixedColumn) {
|
|
1255
1313
|
str += ' table-fixed-dom-left';
|
|
1256
1314
|
// 左边没有定位,且没有单选,没有嵌套表格
|
|
@@ -1267,7 +1325,7 @@ const TableBody = props => {
|
|
|
1267
1325
|
children: showCheck && jsx(Checkbox, {
|
|
1268
1326
|
disabled: disabledHand,
|
|
1269
1327
|
checked: checkHand,
|
|
1270
|
-
onChange: (event, bol)
|
|
1328
|
+
onChange: function onChange(event, bol) {
|
|
1271
1329
|
event.stopPropagation();
|
|
1272
1330
|
selectCheck && selectCheck(event, bol, row[rowKey]);
|
|
1273
1331
|
}
|
|
@@ -1276,12 +1334,12 @@ const TableBody = props => {
|
|
|
1276
1334
|
}
|
|
1277
1335
|
}, [check, disabledJson, rowKey, checkJson, selectCheck, disabledArrStatus, posFixed, expandable, radio, fixedColumn]);
|
|
1278
1336
|
// 单选框useCallback
|
|
1279
|
-
|
|
1337
|
+
var TableRadioCallback = useCallback(function (row) {
|
|
1280
1338
|
if (radio) {
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1339
|
+
var handId = row[rowKey];
|
|
1340
|
+
var disabledHand = Boolean(disabledJson[handId]);
|
|
1341
|
+
var checkHand = radioValue === row[rowKey];
|
|
1342
|
+
var showRadio = true;
|
|
1285
1343
|
if (disabledHand && disabledArrStatus) {
|
|
1286
1344
|
// 选中
|
|
1287
1345
|
if (disabledArrStatus[handId] === true) {
|
|
@@ -1296,8 +1354,8 @@ const TableBody = props => {
|
|
|
1296
1354
|
showRadio = false;
|
|
1297
1355
|
}
|
|
1298
1356
|
}
|
|
1299
|
-
|
|
1300
|
-
|
|
1357
|
+
var handCls = function handCls() {
|
|
1358
|
+
var str = 'table-radio table-body-btn';
|
|
1301
1359
|
if (fixedColumn) {
|
|
1302
1360
|
str += ' table-fixed-dom-left';
|
|
1303
1361
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1314,7 +1372,7 @@ const TableBody = props => {
|
|
|
1314
1372
|
children: showRadio && jsx(Radio, {
|
|
1315
1373
|
disabled: disabledHand,
|
|
1316
1374
|
checked: checkHand,
|
|
1317
|
-
onChange: event
|
|
1375
|
+
onChange: function onChange(event) {
|
|
1318
1376
|
event.stopPropagation();
|
|
1319
1377
|
selectRadio && selectRadio(event, row[rowKey]);
|
|
1320
1378
|
}
|
|
@@ -1323,13 +1381,13 @@ const TableBody = props => {
|
|
|
1323
1381
|
}
|
|
1324
1382
|
}, [radio, disabledJson, radioValue, rowKey, selectRadio, disabledArrStatus, expandable, posFixed, fixedColumn]);
|
|
1325
1383
|
// 嵌套加减useCallback
|
|
1326
|
-
|
|
1384
|
+
var TableExpandableMemo = useCallback(function (row) {
|
|
1327
1385
|
if (!expandable) return null;
|
|
1328
|
-
|
|
1386
|
+
var expandableDemo = expandable(row);
|
|
1329
1387
|
// 禁用一行表格展开 或者 展开表格返回值为false,返回空列
|
|
1330
1388
|
if (disabledExpandJson[row[rowKey]] || expandableDemo === false) return jsx(TdElement, {});
|
|
1331
|
-
|
|
1332
|
-
|
|
1389
|
+
var handCls = function handCls() {
|
|
1390
|
+
var str = 'table-expandable table-body-btn';
|
|
1333
1391
|
if (fixedColumn) {
|
|
1334
1392
|
str += ' table-fixed-dom-left';
|
|
1335
1393
|
// 左边没有定位,没有嵌套表格
|
|
@@ -1350,17 +1408,17 @@ const TableBody = props => {
|
|
|
1350
1408
|
}));
|
|
1351
1409
|
}, [expandable, expandableRow, rowKey, disabledExpandJson, onExpand, fixedColumn]);
|
|
1352
1410
|
// 表格一行内容useCallback
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
orderFieldArr,
|
|
1356
|
-
orderTypeArr
|
|
1411
|
+
var TableContentUseCallback = useCallback(function (row, rowIndex) {
|
|
1412
|
+
var params = {
|
|
1413
|
+
orderFieldArr: orderFieldArr,
|
|
1414
|
+
orderTypeArr: orderTypeArr
|
|
1357
1415
|
};
|
|
1358
|
-
|
|
1359
|
-
|
|
1416
|
+
var handContentClass = function handContentClass(item) {
|
|
1417
|
+
var str = 'table-content-columms';
|
|
1360
1418
|
if (item.className) str += " ".concat(item.className);
|
|
1361
1419
|
// 排序
|
|
1362
1420
|
if (sortTable && item.name && item.sort !== false) {
|
|
1363
|
-
|
|
1421
|
+
var index = orderFieldArr.indexOf(item.name);
|
|
1364
1422
|
if (index !== -1) {
|
|
1365
1423
|
// 升序
|
|
1366
1424
|
if (orderTypeArr[index] === 'asc') {
|
|
@@ -1385,8 +1443,8 @@ const TableBody = props => {
|
|
|
1385
1443
|
}
|
|
1386
1444
|
return str;
|
|
1387
1445
|
};
|
|
1388
|
-
|
|
1389
|
-
|
|
1446
|
+
var handStyle = function handStyle(item) {
|
|
1447
|
+
var json = {};
|
|
1390
1448
|
if (fixedColumn && item.fixed && item.width) {
|
|
1391
1449
|
if (item.fixed === 'left') {
|
|
1392
1450
|
json.left = "".concat(item.paraui_left_width, "px");
|
|
@@ -1397,12 +1455,12 @@ const TableBody = props => {
|
|
|
1397
1455
|
}
|
|
1398
1456
|
return json;
|
|
1399
1457
|
};
|
|
1400
|
-
return tableCell ? tableCell(row, params) : headData.map((item, index)
|
|
1401
|
-
|
|
1402
|
-
|
|
1458
|
+
return tableCell ? tableCell(row, params) : headData.map(function (item, index) {
|
|
1459
|
+
var text = row[item.name];
|
|
1460
|
+
var colSpan = 1;
|
|
1403
1461
|
if (item.render) text = item.render(row, item, row[item.name], index, rowIndex);
|
|
1404
1462
|
if (formatter) text = formatter(row, item, row[item.name], index, rowIndex);
|
|
1405
|
-
|
|
1463
|
+
var itemStyle = handStyle(item);
|
|
1406
1464
|
// 存在显示列,最后一列占两格
|
|
1407
1465
|
if (showColumns === 'inside' && !operate && index === headData.length - 1) {
|
|
1408
1466
|
colSpan = 2;
|
|
@@ -1426,25 +1484,25 @@ const TableBody = props => {
|
|
|
1426
1484
|
});
|
|
1427
1485
|
}, [tableCell, headData, align, formatter, orderFieldArr, orderTypeArr, sortTable, showColumns, operate, beyondText, fixedColumn, tipMaxWidth]);
|
|
1428
1486
|
// 操作栏useCallback
|
|
1429
|
-
|
|
1487
|
+
var TableOperateUseCallback = useCallback(function (row, rowIndex) {
|
|
1430
1488
|
if (operate) {
|
|
1431
|
-
|
|
1489
|
+
var colSpan = 1;
|
|
1432
1490
|
if (showColumns === 'inside') colSpan = 2;
|
|
1433
|
-
|
|
1491
|
+
var handOperate = function handOperate() {
|
|
1434
1492
|
if (operate.render) return operate.render(row);
|
|
1435
1493
|
if (operate.operateBtnRender) {
|
|
1436
|
-
|
|
1494
|
+
var operateConfig = operate.operateBtnRender(row, rowIndex);
|
|
1437
1495
|
return jsx(OperateBtn, Object.assign({}, operateConfig));
|
|
1438
1496
|
}
|
|
1439
1497
|
};
|
|
1440
|
-
|
|
1441
|
-
|
|
1498
|
+
var handStyle = function handStyle() {
|
|
1499
|
+
var json = {
|
|
1442
1500
|
right: '0'
|
|
1443
1501
|
};
|
|
1444
1502
|
return json;
|
|
1445
1503
|
};
|
|
1446
|
-
|
|
1447
|
-
|
|
1504
|
+
var handCls = function handCls() {
|
|
1505
|
+
var str = 'table-operate';
|
|
1448
1506
|
if (fixedColumn) {
|
|
1449
1507
|
str += ' table-fixed-dom-right';
|
|
1450
1508
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
@@ -1464,11 +1522,11 @@ const TableBody = props => {
|
|
|
1464
1522
|
}
|
|
1465
1523
|
}, [operate, align, showColumns, posFixed, fixedColumn]);
|
|
1466
1524
|
// 嵌套表格useCallback
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1525
|
+
var TableExpandableContentUseCallback = useCallback(function (row) {
|
|
1526
|
+
var id = row[rowKey];
|
|
1527
|
+
var expandItem = expandableRow[id] || {};
|
|
1470
1528
|
if (expandable && expandItem.status === 'develop') {
|
|
1471
|
-
|
|
1529
|
+
var expandableDemo = expandable(row);
|
|
1472
1530
|
if (expandableDemo === false) return null; // 展开表格返回值为false,不展示这一行
|
|
1473
1531
|
return jsx(TrElement, Object.assign({
|
|
1474
1532
|
className: "table-body-expand-row"
|
|
@@ -1483,7 +1541,7 @@ const TableBody = props => {
|
|
|
1483
1541
|
}
|
|
1484
1542
|
}, [expandable, expandableRow, expandableColSpan, rowKey]);
|
|
1485
1543
|
// 加载更多
|
|
1486
|
-
|
|
1544
|
+
var MoreMemo = useMemo(function () {
|
|
1487
1545
|
if (!loadMore || !showMoreBtn) return null;
|
|
1488
1546
|
return jsx(TrElement, Object.assign({
|
|
1489
1547
|
className: "more-table-row",
|
|
@@ -1506,10 +1564,10 @@ const TableBody = props => {
|
|
|
1506
1564
|
}))
|
|
1507
1565
|
}));
|
|
1508
1566
|
}, [expandableColSpan, loadMore, loadMoreRender, onClickMore, showMoreBtn, changePage, loadMoreUrl, lineHeight]);
|
|
1509
|
-
|
|
1567
|
+
var TableBodySubjectContentMemo = useMemo(function () {
|
|
1510
1568
|
return jsx(Fragment, {
|
|
1511
|
-
children: rowData.map((row, index)
|
|
1512
|
-
|
|
1569
|
+
children: rowData.map(function (row, index) {
|
|
1570
|
+
var str = 'table-body-row';
|
|
1513
1571
|
if (rowClassMapping && rowClassMapping[row[rowKey]]) {
|
|
1514
1572
|
str += " ".concat(rowClassMapping[row[rowKey]]);
|
|
1515
1573
|
}
|
|
@@ -1519,7 +1577,7 @@ const TableBody = props => {
|
|
|
1519
1577
|
style: {
|
|
1520
1578
|
height: "".concat(lineHeight, "px")
|
|
1521
1579
|
},
|
|
1522
|
-
onClick: e
|
|
1580
|
+
onClick: function onClick(e) {
|
|
1523
1581
|
onClickRow && onClickRow(row, e);
|
|
1524
1582
|
}
|
|
1525
1583
|
}, {
|
|
@@ -1530,13 +1588,13 @@ const TableBody = props => {
|
|
|
1530
1588
|
});
|
|
1531
1589
|
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, disabledExpandJson, onExpand, disabledArrStatus, showColumns, onClickRow, rowClassMapping, tipMaxWidth, lineHeight]);
|
|
1532
1590
|
// 内容memo
|
|
1533
|
-
|
|
1591
|
+
var TableBodyContentMemo = useMemo(function () {
|
|
1534
1592
|
return jsxs(Fragment$1, {
|
|
1535
1593
|
children: [TableBodySubjectContentMemo, MoreMemo]
|
|
1536
1594
|
});
|
|
1537
1595
|
}, [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]);
|
|
1538
1596
|
// 处理内容
|
|
1539
|
-
|
|
1597
|
+
var handContent = function handContent() {
|
|
1540
1598
|
// 无数据,且不再请求,显示暂无数据
|
|
1541
1599
|
if (rowData.length === 0 && !loadState) return NodataMemo;
|
|
1542
1600
|
return TableBodyContentMemo;
|
|
@@ -1548,29 +1606,35 @@ const TableBody = props => {
|
|
|
1548
1606
|
}));
|
|
1549
1607
|
};
|
|
1550
1608
|
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
checkNumber = 0,
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1609
|
+
var TableHead = function TableHead(props) {
|
|
1610
|
+
var paginationType = props.paginationType,
|
|
1611
|
+
flippingArrow = props.flippingArrow,
|
|
1612
|
+
autoPagination = props.autoPagination,
|
|
1613
|
+
total = props.total,
|
|
1614
|
+
page = props.page,
|
|
1615
|
+
rowsPerPage = props.rowsPerPage,
|
|
1616
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1617
|
+
changePage = props.changePage,
|
|
1618
|
+
changeRowsPerPage = props.changeRowsPerPage,
|
|
1619
|
+
refreshInside = props.refreshInside,
|
|
1620
|
+
checkCount = props.checkCount,
|
|
1621
|
+
onRefresh = props.onRefresh,
|
|
1622
|
+
selectAll = props.selectAll,
|
|
1623
|
+
selectStatus = props.selectStatus,
|
|
1624
|
+
_props$checkNumber = props.checkNumber,
|
|
1625
|
+
checkNumber = _props$checkNumber === void 0 ? 0 : _props$checkNumber,
|
|
1626
|
+
_props$currentPageTot = props.currentPageTotal,
|
|
1627
|
+
currentPageTotal = _props$currentPageTot === void 0 ? 0 : _props$currentPageTot;
|
|
1628
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1629
|
+
var _useState = useState(false),
|
|
1630
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1631
|
+
indeterminate = _useState2[0],
|
|
1632
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
1633
|
+
var _useState3 = useState(false),
|
|
1634
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1635
|
+
checked = _useState4[0],
|
|
1636
|
+
setChecked = _useState4[1]; // 选中
|
|
1637
|
+
useEffect(function () {
|
|
1574
1638
|
// 全选
|
|
1575
1639
|
if (selectStatus === 'all') {
|
|
1576
1640
|
setChecked(true);
|
|
@@ -1592,23 +1656,23 @@ const TableHead = props => {
|
|
|
1592
1656
|
* @param event 操作元素
|
|
1593
1657
|
* @param bol 选中 / 不选中
|
|
1594
1658
|
*/
|
|
1595
|
-
|
|
1659
|
+
var onSelectAll = function onSelectAll(event, bol) {
|
|
1596
1660
|
if (selectAll) selectAll(event, bol);
|
|
1597
1661
|
};
|
|
1598
1662
|
// 改变页面
|
|
1599
|
-
|
|
1663
|
+
var changePageCom = function changePageCom(num) {
|
|
1600
1664
|
changePage && changePage(num);
|
|
1601
1665
|
};
|
|
1602
1666
|
// 改变每页显示条数
|
|
1603
|
-
|
|
1667
|
+
var changeRowsPerPageCom = function changeRowsPerPageCom(num) {
|
|
1604
1668
|
changeRowsPerPage && changeRowsPerPage(num);
|
|
1605
1669
|
};
|
|
1606
1670
|
// 刷新
|
|
1607
|
-
|
|
1671
|
+
var clickRefresh = function clickRefresh() {
|
|
1608
1672
|
onRefresh && onRefresh();
|
|
1609
1673
|
};
|
|
1610
1674
|
// 处理分页右侧
|
|
1611
|
-
|
|
1675
|
+
var handlePaginationRight = function handlePaginationRight() {
|
|
1612
1676
|
if (!checkCount) return null;
|
|
1613
1677
|
return jsxs("div", Object.assign({
|
|
1614
1678
|
className: 'table-pagination-right'
|
|
@@ -1631,8 +1695,8 @@ const TableHead = props => {
|
|
|
1631
1695
|
}));
|
|
1632
1696
|
};
|
|
1633
1697
|
// 处理样式
|
|
1634
|
-
|
|
1635
|
-
|
|
1698
|
+
var handleClass = function handleClass() {
|
|
1699
|
+
var str = 'table-pagination';
|
|
1636
1700
|
return str;
|
|
1637
1701
|
};
|
|
1638
1702
|
return jsxs("div", Object.assign({
|
|
@@ -1649,7 +1713,9 @@ const TableHead = props => {
|
|
|
1649
1713
|
currentRowsPerPage: currentRowsPerPage,
|
|
1650
1714
|
changePage: changePageCom,
|
|
1651
1715
|
changeRowsPerPage: changeRowsPerPageCom,
|
|
1652
|
-
getPopupContainer: ()
|
|
1716
|
+
getPopupContainer: function getPopupContainer() {
|
|
1717
|
+
return document.body;
|
|
1718
|
+
}
|
|
1653
1719
|
}), refreshInside && jsx(Button.IconButton, Object.assign({
|
|
1654
1720
|
className: 'refresh-btn',
|
|
1655
1721
|
variant: "outlined",
|
|
@@ -1663,16 +1729,14 @@ const TableHead = props => {
|
|
|
1663
1729
|
var css_248z$2 = ".table-container {\n overflow-x: auto;\n}";
|
|
1664
1730
|
styleInject(css_248z$2);
|
|
1665
1731
|
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
children
|
|
1672
|
-
} = props,
|
|
1732
|
+
var TableContainer = function TableContainer(props) {
|
|
1733
|
+
var cRef = props.cRef,
|
|
1734
|
+
className = props.className,
|
|
1735
|
+
style = props.style,
|
|
1736
|
+
children = props.children,
|
|
1673
1737
|
otherProps = __rest(props, ["cRef", "className", "style", "children"]);
|
|
1674
|
-
|
|
1675
|
-
|
|
1738
|
+
var handClass = function handClass() {
|
|
1739
|
+
var str = 'table-container';
|
|
1676
1740
|
if (className) str += " ".concat(className);
|
|
1677
1741
|
return str;
|
|
1678
1742
|
};
|
|
@@ -1688,16 +1752,14 @@ const TableContainer = props => {
|
|
|
1688
1752
|
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}";
|
|
1689
1753
|
styleInject(css_248z$1);
|
|
1690
1754
|
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
children
|
|
1697
|
-
} = props,
|
|
1755
|
+
var TableElement = function TableElement(props) {
|
|
1756
|
+
var className = props.className,
|
|
1757
|
+
style = props.style,
|
|
1758
|
+
fixedColumn = props.fixedColumn,
|
|
1759
|
+
children = props.children,
|
|
1698
1760
|
otherProps = __rest(props, ["className", "style", "fixedColumn", "children"]);
|
|
1699
|
-
|
|
1700
|
-
|
|
1761
|
+
var handClass = function handClass() {
|
|
1762
|
+
var str = 'table-element';
|
|
1701
1763
|
if (fixedColumn) str += ' table-element-fixed-column';
|
|
1702
1764
|
if (className) str += " ".concat(className);
|
|
1703
1765
|
return str;
|