zmdms-webui 1.3.0 → 1.3.2

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.
Files changed (48) hide show
  1. package/dist/es/dynamicsetting/interface.d.ts +11 -3
  2. package/dist/es/modal/index.css +1 -1
  3. package/dist/es/node_modules/@ant-design/icons/es/components/AntdIcon.js +1 -2
  4. package/dist/es/node_modules/@ant-design/icons/es/icons/ArrowsAltOutlined.js +5 -2
  5. package/dist/es/node_modules/@ant-design/icons/es/icons/CaretDownOutlined.js +5 -2
  6. package/dist/es/node_modules/@ant-design/icons/es/icons/CaretUpOutlined.js +5 -2
  7. package/dist/es/node_modules/@ant-design/icons/es/icons/CheckCircleOutlined.js +5 -2
  8. package/dist/es/node_modules/@ant-design/icons/es/icons/CheckOutlined.js +5 -2
  9. package/dist/es/node_modules/@ant-design/icons/es/icons/CloseOutlined.js +5 -2
  10. package/dist/es/node_modules/@ant-design/icons/es/icons/CopyOutlined.js +5 -2
  11. package/dist/es/node_modules/@ant-design/icons/es/icons/DoubleRightOutlined.js +5 -2
  12. package/dist/es/node_modules/@ant-design/icons/es/icons/DownOutlined.js +5 -2
  13. package/dist/es/node_modules/@ant-design/icons/es/icons/DownloadOutlined.js +5 -2
  14. package/dist/es/node_modules/@ant-design/icons/es/icons/ExclamationCircleOutlined.js +5 -2
  15. package/dist/es/node_modules/@ant-design/icons/es/icons/LoadingOutlined.js +5 -2
  16. package/dist/es/node_modules/@ant-design/icons/es/icons/LogoutOutlined.js +5 -2
  17. package/dist/es/node_modules/@ant-design/icons/es/icons/MenuOutlined.js +5 -2
  18. package/dist/es/node_modules/@ant-design/icons/es/icons/MinusCircleOutlined.js +5 -2
  19. package/dist/es/node_modules/@ant-design/icons/es/icons/MinusOutlined.js +5 -2
  20. package/dist/es/node_modules/@ant-design/icons/es/icons/MinusSquareOutlined.js +5 -2
  21. package/dist/es/node_modules/@ant-design/icons/es/icons/PicRightOutlined.js +5 -2
  22. package/dist/es/node_modules/@ant-design/icons/es/icons/PlusOutlined.js +5 -2
  23. package/dist/es/node_modules/@ant-design/icons/es/icons/PlusSquareOutlined.js +5 -2
  24. package/dist/es/node_modules/@ant-design/icons/es/icons/QuestionCircleOutlined.js +5 -2
  25. package/dist/es/node_modules/@ant-design/icons/es/icons/SearchOutlined.js +5 -2
  26. package/dist/es/node_modules/@ant-design/icons/es/icons/SettingOutlined.js +5 -2
  27. package/dist/es/node_modules/@ant-design/icons/es/icons/ShrinkOutlined.js +5 -2
  28. package/dist/es/node_modules/@ant-design/icons/es/icons/SwapOutlined.js +5 -2
  29. package/dist/es/node_modules/@ant-design/icons/es/icons/UploadOutlined.js +5 -2
  30. package/dist/es/node_modules/@ant-design/icons/es/icons/UserOutlined.js +5 -2
  31. package/dist/es/node_modules/@ant-design/icons/es/icons/VerticalAlignBottomOutlined.js +5 -2
  32. package/dist/es/node_modules/@ant-design/icons/es/utils.js +1 -1
  33. package/dist/es/table/components/EnhanceBodyCell.js +27 -7
  34. package/dist/es/table/components/FilterDropdown.js +218 -0
  35. package/dist/es/table/components/PopoverIcon.js +3 -0
  36. package/dist/es/table/components/TitleOperation.js +5 -5
  37. package/dist/es/table/components/table-header-operation/CopyColumn.js +18 -0
  38. package/dist/es/table/components/{FillDown.js → table-header-operation/FillDown.js} +2 -2
  39. package/dist/es/table/hooks.js +19 -14
  40. package/dist/es/table/index.css +1 -1
  41. package/dist/es/table/interface.d.ts +75 -3
  42. package/dist/es/table/table.js +33 -25
  43. package/dist/es/table/useColumns.js +236 -54
  44. package/dist/es/table/utils.js +290 -7
  45. package/dist/index.dark.css +1 -1
  46. package/dist/index.default.css +1 -1
  47. package/package.json +2 -2
  48. package/dist/es/table/components/CopyIcon.js +0 -15
@@ -0,0 +1,218 @@
1
+ import { __assign } from '../../_virtual/_tslib.js';
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { useMemo, useEffect, useState } from 'react';
4
+ import { useLatest } from 'ahooks';
5
+ import MemoInput from '../../input/input.js';
6
+ import ButtonCom from '../../button/button.js';
7
+ import { Checkbox, Tooltip, message } from 'antd';
8
+ import QuestionCircleOutlined from '../../node_modules/@ant-design/icons/es/icons/QuestionCircleOutlined.js';
9
+
10
+ /**
11
+ * 列头过滤组件
12
+ */
13
+ var FilterDropdown = function (props) {
14
+ var dataSource = props.dataSource, filterKey = props.filterKey, filterSearchValue = props.filterSearchValue, filterSearchValueChange = props.filterSearchValueChange, defaultFilterSearchValue = props.defaultFilterSearchValue, filterSearchCheckboxValue = props.filterSearchCheckboxValue, defaultFilterSearchCheckboxValue = props.defaultFilterSearchCheckboxValue, filterSearchCheckboxValueChange = props.filterSearchCheckboxValueChange, setSelectedKeys = props.setSelectedKeys, confirm = props.confirm, clearFilters = props.clearFilters, searchValueInputRef = props.searchValueInputRef, onFilterChange = props.onFilterChange;
15
+ var lastSetSelectedKeys = useLatest(setSelectedKeys);
16
+ // 当前可选的数据
17
+ var currentData = useMemo(function () {
18
+ return getDataByKey(dataSource, filterKey);
19
+ }, [dataSource, filterKey]);
20
+ // 过滤输入框 input输入值
21
+ var _a = useControlled(props, {
22
+ value: filterSearchValue,
23
+ valueKey: "filterSearchValue",
24
+ defaultValue: defaultFilterSearchValue,
25
+ onChange: filterSearchValueChange,
26
+ parseResult: function (e) { return e.target.value; },
27
+ }), searchValue = _a.value, setSearchValue = _a.setValue, onSearchValueChange = _a.onValueChange;
28
+ // 过滤选择区 checkbox选择值
29
+ var _b = useControlled(props, {
30
+ value: filterSearchCheckboxValue,
31
+ valueKey: "filterSearchCheckboxValue",
32
+ defaultValue: defaultFilterSearchCheckboxValue,
33
+ onChange: filterSearchCheckboxValueChange,
34
+ }), searchCheckboxValue = _b.value, setSearchCheckboxValue = _b.setValue, onSearchCheckboxValueChange = _b.onValueChange;
35
+ // 输入框回车时,直接触发查询
36
+ var onSearchValuePressEnter = function () {
37
+ onFilterChange === null || onFilterChange === void 0 ? void 0 : onFilterChange({
38
+ input: searchValue,
39
+ checkbox: searchCheckboxValue,
40
+ });
41
+ confirm === null || confirm === void 0 ? void 0 : confirm();
42
+ };
43
+ // 当值发生变化时,组合数据
44
+ useEffect(function () {
45
+ var _a;
46
+ var currentSelectedKey = createFilterValue(searchValue, searchCheckboxValue);
47
+ (_a = lastSetSelectedKeys.current) === null || _a === void 0 ? void 0 : _a.call(lastSetSelectedKeys, currentSelectedKey);
48
+ }, [searchValue, searchCheckboxValue, lastSetSelectedKeys]);
49
+ // 搜索方法
50
+ var onSearchHand = function () {
51
+ onFilterChange === null || onFilterChange === void 0 ? void 0 : onFilterChange({
52
+ input: searchValue,
53
+ checkbox: searchCheckboxValue,
54
+ });
55
+ confirm === null || confirm === void 0 ? void 0 : confirm();
56
+ };
57
+ // 重置方法
58
+ var onResetHand = function () {
59
+ setSearchValue === null || setSearchValue === void 0 ? void 0 : setSearchValue("");
60
+ setSearchCheckboxValue === null || setSearchCheckboxValue === void 0 ? void 0 : setSearchCheckboxValue([]);
61
+ onFilterChange === null || onFilterChange === void 0 ? void 0 : onFilterChange({
62
+ input: "",
63
+ checkbox: [],
64
+ });
65
+ // https://github.com/ant-design/ant-design/issues/34562
66
+ // antd 4.19.0之后,必须要传递confirm: true,才会真的重置,api发生了变动
67
+ clearFilters === null || clearFilters === void 0 ? void 0 : clearFilters({
68
+ confirm: true,
69
+ closeDropdown: true,
70
+ });
71
+ };
72
+ return (jsxs("div", __assign({ className: "ztxk-table--filter", onKeyDown: function (e) { return e.stopPropagation(); } }, { children: [jsx(MemoInput, { placeholder: "\u591A\u4E2A\u6761\u4EF6\u901A\u8FC7\u9017\u53F7\u6216\u7A7A\u683C\u9694\u5F00", value: searchValue, onChange: onSearchValueChange, onPressEnter: onSearchValuePressEnter, ref: searchValueInputRef }), jsx(Checkbox.Group, __assign({ className: "ztxk-table--filter__checkbox-container", value: searchCheckboxValue, onChange: onSearchCheckboxValueChange }, { children: currentData.map(function (item) {
73
+ return (jsx(Checkbox, __assign({ value: item.value }, { children: item.value === "__null__" ? "空值" : item.value }), item.value));
74
+ }) })), jsxs("div", __assign({ className: "ztxk-table--filter__btn-container" }, { children: [jsxs(ButtonCom, __assign({ type: "primary", onClick: onSearchHand }, { children: ["\u641C\u7D22", jsx(Tooltip, __assign({ placement: "bottomLeft", title: "\u5BF9\u4E8E\u6570\u5B57\u5217\u53EF\u4EE5\u5C1D\u8BD5\u8F93\u5165\u4E00\u4E9B\u8868\u8FBE\u5F0F: $0 + 1 > 2\u3001 >= 10\u3001 $0 + 1 == 2" }, { children: jsx(QuestionCircleOutlined, {}) }))] })), jsx(ButtonCom, __assign({ onClick: onResetHand }, { children: "\u91CD\u7F6E" }))] }))] })));
75
+ };
76
+ // 获取数据
77
+ function getDataByKey(data, key) {
78
+ if (!Array.isArray(data)) {
79
+ return [];
80
+ }
81
+ if (typeof key !== "string") {
82
+ return [];
83
+ }
84
+ var newArr = data.map(function (item) {
85
+ var _a;
86
+ return (_a = item[key]) !== null && _a !== void 0 ? _a : "";
87
+ });
88
+ // 记录出现次数
89
+ var resultArr = [];
90
+ newArr
91
+ .filter(function (item) { return item !== ""; })
92
+ .forEach(function (item) {
93
+ var index = resultArr.findIndex(function (i) { return i.value === item; });
94
+ if (index === -1) {
95
+ resultArr.push({
96
+ value: item,
97
+ count: 1,
98
+ });
99
+ }
100
+ else {
101
+ resultArr[index].count++;
102
+ }
103
+ });
104
+ if (newArr.findIndex(function (item) { return item === ""; }) !== -1) {
105
+ resultArr.push({
106
+ value: NULL_SIGN,
107
+ });
108
+ }
109
+ return resultArr;
110
+ }
111
+ function useControlled(props, option) {
112
+ var valueKey = option.valueKey, value = option.value, defaultValue = option.defaultValue, onChange = option.onChange, parseResult = option.parseResult;
113
+ var isValueControlled = valueKey in props ? true : false;
114
+ var _a = useState(defaultValue), _value = _a[0], setValue = _a[1];
115
+ var onValueChange = function (v) {
116
+ if (isValueControlled && onChange) {
117
+ onChange(v);
118
+ }
119
+ else {
120
+ if (parseResult) {
121
+ setValue(parseResult(v));
122
+ }
123
+ else {
124
+ setValue(v);
125
+ }
126
+ }
127
+ };
128
+ return {
129
+ isValueControlled: isValueControlled,
130
+ value: isValueControlled ? value : _value,
131
+ setValue: isValueControlled ? onChange : setValue,
132
+ onValueChange: onValueChange,
133
+ };
134
+ }
135
+ var NULL_SIGN = "__null__";
136
+ var isMessage = false;
137
+ /**
138
+ * 过滤方法
139
+ * @param value 过滤的值
140
+ * @param record 数据源
141
+ * @param key 过滤的key
142
+ * @returns
143
+ */
144
+ function filterHandle(value, record, key) {
145
+ var _a, _b, _c, _d;
146
+ var newValue = ((_b = (_a = value === null || value === void 0 ? void 0 : value.toString) === null || _a === void 0 ? void 0 : _a.call(value)) === null || _b === void 0 ? void 0 : _b.trim()) || null;
147
+ var currentValue = record && key ? record[key] : null;
148
+ // 如果命中空值的话 能正常查出空值
149
+ if (newValue === NULL_SIGN &&
150
+ record &&
151
+ key &&
152
+ (record[key] === "" || record[key] === null)) {
153
+ return true;
154
+ }
155
+ if (currentValue != null && newValue != null) {
156
+ if (newValue.startsWith("大于等于") || newValue.startsWith(">=")) {
157
+ var subValue = Number(newValue.substring(newValue.startsWith("大于等于") ? 4 : 2));
158
+ return currentValue >= subValue;
159
+ }
160
+ if (newValue.startsWith("小于等于") || newValue.startsWith("<=")) {
161
+ var subValue = Number(newValue.substring(newValue.startsWith("小于等于") ? 4 : 2));
162
+ return currentValue <= subValue;
163
+ }
164
+ if (newValue.startsWith("大于") || newValue.startsWith(">")) {
165
+ var subValue = Number(newValue.substring(newValue.startsWith("大于") ? 2 : 1));
166
+ return currentValue > subValue;
167
+ }
168
+ if (newValue.startsWith("小于") || newValue.startsWith("<")) {
169
+ var subValue = Number(newValue.substring(newValue.startsWith("小于") ? 2 : 1));
170
+ return currentValue < subValue;
171
+ }
172
+ if (newValue.startsWith("等于") || newValue.startsWith("=")) {
173
+ var subValue = Number(newValue.substring(newValue.startsWith("等于") ? 2 : 1));
174
+ // eslint-disable-next-line eqeqeq
175
+ return currentValue == subValue;
176
+ }
177
+ // 使用eval执行代码 长度不能过长。防止
178
+ if (newValue.indexOf("$0") !== -1 && newValue.length <= 100) {
179
+ var newEvalStr = newValue.replace(/\$0/g, currentValue);
180
+ var result = null;
181
+ try {
182
+ // eslint-disable-next-line no-eval
183
+ result = eval(newEvalStr);
184
+ }
185
+ catch (err) {
186
+ console.log(err);
187
+ if (!isMessage) {
188
+ isMessage = true;
189
+ message.info("不要使用赋值语句如:1+1=2 /n 应该使用:1+1==2", 3, function () {
190
+ isMessage = false;
191
+ });
192
+ }
193
+ }
194
+ return result;
195
+ }
196
+ return (_d = (_c = currentValue === null || currentValue === void 0 ? void 0 : currentValue.toString()) === null || _c === void 0 ? void 0 : _c.toLowerCase()) === null || _d === void 0 ? void 0 : _d.includes(newValue.toLowerCase());
197
+ }
198
+ // 空值的话排除
199
+ if (currentValue == null || currentValue === "") {
200
+ return false;
201
+ }
202
+ return true;
203
+ }
204
+ /**
205
+ * 组合生成过滤数据
206
+ */
207
+ function createFilterValue(input, checkbox) {
208
+ var filteredValue = [];
209
+ if (input) {
210
+ filteredValue.push(input);
211
+ }
212
+ if (checkbox) {
213
+ filteredValue = filteredValue.concat(checkbox);
214
+ }
215
+ return filteredValue;
216
+ }
217
+
218
+ export { NULL_SIGN, createFilterValue, FilterDropdown as default, filterHandle };
@@ -8,6 +8,9 @@ var PopoverIcon = function (_a) {
8
8
  var text = _a.text;
9
9
  return (jsx(Popover, __assign({ content: jsx(PopoverIconWrap, { text: text }), trigger: "hover" }, { children: jsx(QuestionCircleOutlined, { style: { marginLeft: 4, color: "#9f9f9f" } }) })));
10
10
  };
11
+ /**
12
+ * 列头文本提示组件
13
+ */
11
14
  var PopoverIcon$1 = memo(PopoverIcon);
12
15
  var defaultStyle = {
13
16
  width: 200,
@@ -1,20 +1,20 @@
1
1
  import { __assign } from '../../_virtual/_tslib.js';
2
2
  import { jsx, Fragment } from 'react/jsx-runtime';
3
3
  import { memo } from 'react';
4
- import CopyIcon from './CopyIcon.js';
5
- import FillDown from './FillDown.js';
4
+ import FillDown from './table-header-operation/FillDown.js';
5
+ import CopyColumn from './table-header-operation/CopyColumn.js';
6
6
  import ButtonCom from '../../button/button.js';
7
7
  import { Dropdown } from 'antd';
8
8
  import DownOutlined from '../../node_modules/@ant-design/icons/es/icons/DownOutlined.js';
9
9
 
10
10
  var TitleOperation = function (_a) {
11
- var copyKey = _a.copyKey, dataSourceRef = _a.dataSourceRef, isFillDown = _a.isFillDown, dataKey = _a.dataKey, onTableChange = _a.onTableChange;
11
+ var copyKey = _a.copyKey, dataSourceRef = _a.dataSourceRef, isFillDown = _a.isFillDown, dataKey = _a.dataKey, onTableChange = _a.onTableChange, filterConfigRef = _a.filterConfigRef;
12
12
  var items = [];
13
13
  // 如果需要添加复制粘贴功能
14
14
  if (typeof copyKey === "string" || Array.isArray(copyKey)) {
15
15
  items.push({
16
16
  key: "copy",
17
- label: jsx(CopyIcon, { copyKey: copyKey, dataSourceRef: dataSourceRef }),
17
+ label: (jsx(CopyColumn, { filterConfigRef: filterConfigRef, copyKey: copyKey, dataSourceRef: dataSourceRef })),
18
18
  });
19
19
  }
20
20
  // 需要往下填充的功能
@@ -24,7 +24,7 @@ var TitleOperation = function (_a) {
24
24
  label: (jsx(FillDown, { dataKey: dataKey, isFillDown: isFillDown, dataSourceRef: dataSourceRef, onTableChange: onTableChange })),
25
25
  });
26
26
  }
27
- return (jsx(Fragment, { children: items.length > 0 ? (jsx(Dropdown, __assign({ menu: { items: items }, trigger: ["click"] }, { children: jsx(ButtonCom, { type: "link", icon: jsx(DownOutlined, {}), title: "\u4E00\u4E9B\u5DE5\u5177\u65B9\u6CD5" }) }))) : null }));
27
+ return (jsx(Fragment, { children: items.length > 0 ? (jsx(Dropdown, __assign({ menu: { items: items }, trigger: ["click"] }, { children: jsx(ButtonCom, { style: { width: 20 }, type: "link", icon: jsx(DownOutlined, {}), title: "\u4E00\u4E9B\u5DE5\u5177\u65B9\u6CD5" }) }))) : null }));
28
28
  };
29
29
  var TitleOperation$1 = memo(TitleOperation);
30
30
 
@@ -0,0 +1,18 @@
1
+ import { __assign } from '../../../_virtual/_tslib.js';
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { memo } from 'react';
4
+ import { copyColData } from '../../utils.js';
5
+ import CopyOutlined from '../../../node_modules/@ant-design/icons/es/icons/CopyOutlined.js';
6
+
7
+ var CopyIcon = function (_a) {
8
+ var copyKey = _a.copyKey, dataSourceRef = _a.dataSourceRef, filterConfigRef = _a.filterConfigRef;
9
+ return (jsxs("div", __assign({ onClick: function () {
10
+ copyColData(copyKey, {
11
+ dataSource: dataSourceRef.current,
12
+ filterConfig: filterConfigRef.current,
13
+ });
14
+ } }, { children: [jsx(CopyOutlined, { type: "icon-copy", style: { fontSize: "16px" }, className: "thead-icon" }), "\u590D\u5236\u6574\u5217"] })));
15
+ };
16
+ var CopyColumn = memo(CopyIcon);
17
+
18
+ export { CopyColumn as default };
@@ -1,7 +1,7 @@
1
- import { __assign } from '../../_virtual/_tslib.js';
1
+ import { __assign } from '../../../_virtual/_tslib.js';
2
2
  import { jsx, jsxs } from 'react/jsx-runtime';
3
3
  import { memo } from 'react';
4
- import VerticalAlignBottomOutlined from '../../node_modules/@ant-design/icons/es/icons/VerticalAlignBottomOutlined.js';
4
+ import VerticalAlignBottomOutlined from '../../../node_modules/@ant-design/icons/es/icons/VerticalAlignBottomOutlined.js';
5
5
  import { Tooltip, message } from 'antd';
6
6
 
7
7
  var FillDown = function (_a) {
@@ -19,11 +19,7 @@ function useEditChange(dataSourceRef, onTableChange) {
19
19
  }
20
20
  newDataSource[index] = record;
21
21
  onTableChange &&
22
- onTableChange(newDataSource, dataSourceRef.current, {
23
- type: "edit",
24
- currentIndex: index,
25
- field: dataIndex,
26
- });
22
+ onTableChange(newDataSource, dataSourceRef.current, __assign({ type: "edit", currentIndex: index, field: dataIndex }, otherInfo));
27
23
  }, [dataSourceRef, onTableChange]);
28
24
  return onEditableSave;
29
25
  }
@@ -178,7 +174,7 @@ function useScuRfresh() {
178
174
  * 如果排序改变了数据源,那么数据没法恢复到初始状态
179
175
  */
180
176
  function useCustomSort(dataSource, onTableChange, options) {
181
- var refreshScuCell = options.refreshScuCell, rowKey = options.rowKey, serviceOrder = options.serviceOrder;
177
+ var refreshScuCell = options.refreshScuCell, rowKey = options.rowKey, serviceOrder = options.serviceOrder, isOrderUpdateData = options.isOrderUpdateData;
182
178
  // 排序的数据
183
179
  var _a = useState(undefined), order = _a[0], setOrder = _a[1];
184
180
  var isSelfChange = useRef(false);
@@ -240,19 +236,28 @@ function useCustomSort(dataSource, onTableChange, options) {
240
236
  isSelfChange.current = true;
241
237
  // 针对配置了scu的列做处理
242
238
  refreshScuCell && refreshScuCell();
243
- if (!onTableChange) {
239
+ if (!onTableChange || !isOrderUpdateData) {
244
240
  // 更新内部数据
245
241
  setSortDataSource(newDataSource_1);
246
242
  }
247
243
  // 真实的更新数据
248
- onTableChange &&
249
- onTableChange(newDataSource_1, dataSource, {
250
- type: "sort",
251
- order: order_1,
252
- field: field_1,
253
- });
244
+ if (isOrderUpdateData) {
245
+ onTableChange &&
246
+ onTableChange(newDataSource_1, dataSource, {
247
+ type: "sort",
248
+ order: order_1,
249
+ field: field_1,
250
+ });
251
+ }
254
252
  }
255
- }, [dataSource, onTableChange, refreshScuCell, rowKey, serviceOrder]);
253
+ }, [
254
+ dataSource,
255
+ onTableChange,
256
+ refreshScuCell,
257
+ rowKey,
258
+ serviceOrder,
259
+ isOrderUpdateData,
260
+ ]);
256
261
  /**
257
262
  * 表格数据更新的时候 重置下当前排序的数据 以及 排序的方式
258
263
  * 但是如果是因为点击排序触发的表格数据更新 那么不做处理
@@ -1 +1 @@
1
- .ant-table.ant-table-middle{font-size:14px}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 40px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small{font-size:14px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 40px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #dee9f6;border-bottom:0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th:before{background-color:initial!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{border-right:1px solid #dee9f6;bottom:0;content:"";position:absolute;right:1px;top:0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #dee9f6}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #dee9f6;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper:before{content:"";display:table}.ant-table-wrapper:after{clear:both;content:"";display:table}.ant-table{font-feature-settings:"tnum";background:#fff;border-radius:2px;box-sizing:border-box;color:#000000a6;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;margin:0;padding:0;position:relative}.ant-table table{border-collapse:initial;border-radius:2px 2px 0 0;border-spacing:0;text-align:left;width:100%}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{overflow-wrap:break-word;padding:16px;position:relative}.ant-table-cell-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{background:#fafafa;color:#000000d9;padding:16px}.ant-table-thead>tr>th{background:#fafafa;border-bottom:1px solid #dee9f6;color:#000000d9;font-weight:500;position:relative;text-align:left;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{background-color:#0000000f;content:"";height:1.6em;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:background-color .3s;width:1px}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #dee9f6;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 32px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#f0f5ff;border-color:#00000008}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#e6eeff}.ant-table-summary{background:#fff;position:relative;z-index:2}div.ant-table-summary{box-shadow:0 -1px 0 #dee9f6}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #dee9f6}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{cursor:pointer;outline:none;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:#0000000a}.ant-table-thead th.ant-table-column-has-sorters:hover:before{background-color:initial!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#5b76f6}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort:before{background-color:initial!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{flex:1;position:relative;z-index:1}.ant-table-column-sorters{align-items:center;display:flex;flex:auto;justify-content:space-between}.ant-table-column-sorters:after{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;top:0;width:100%}.ant-table-column-sorter{color:#bfbfbf;font-size:0;margin-left:4px;transition:color .3s}.ant-table-column-sorter-inner{align-items:center;display:inline-flex;flex-direction:column}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#5b76f6}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{align-items:center;border-radius:2px;color:#bfbfbf;cursor:pointer;display:flex;font-size:12px;margin:-4px -8px -4px 4px;padding:0 4px;position:relative;transition:all .3s}.ant-table-filter-trigger:hover{background:#0000000a;color:#00000073}.ant-table-filter-trigger.active{color:#5b76f6}.ant-table-filter-dropdown{font-feature-settings:"tnum";background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px 0 #00000014,0 9px 28px 8px #0000000d;box-sizing:border-box;color:#000000a6;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;margin:0;min-width:120px;padding:0}.ant-table-filter-dropdown .ant-dropdown-menu{border:0;box-shadow:none;max-height:264px;overflow-x:hidden}.ant-table-filter-dropdown .ant-dropdown-menu:empty:after{color:#00000040;content:"Not Found";display:block;font-size:12px;padding:8px 0;text-align:center}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#f0f4ff}.ant-table-filter-dropdown-search{border-bottom:1px solid #dee9f6;padding:8px}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:#00000040}.ant-table-filter-dropdown-checkall{margin-bottom:4px;margin-left:4px;width:100%}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{background-color:inherit;border-top:1px solid #dee9f6;display:flex;justify-content:space-between;overflow:hidden;padding:7px 8px}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-left:8px;padding-right:8px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column:after{background-color:initial!important}.ant-table-selection{display:inline-flex;flex-direction:column;position:relative}.ant-table-selection-extra{cursor:pointer;margin-inline-start:100%;padding-inline-start:4px;position:absolute;top:0;transition:all .3s;z-index:1}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-expand-icon-cell .ant-table-row-expand-icon{display:inline-flex;float:none;vertical-align:sub}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{background:#fff;border:1px solid #dee9f6;border-radius:2px;box-sizing:border-box;color:#4285f4;color:inherit;cursor:pointer;float:left;height:17px;line-height:17px;outline:none;padding:0;position:relative;transform:scale(.94117647);transition:color .3s;transition:all .3s;-webkit-user-select:none;user-select:none;width:17px}.ant-table-row-expand-icon:focus-visible,.ant-table-row-expand-icon:hover{color:#1566d2}.ant-table-row-expand-icon:active{color:#2d66cf}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon:after,.ant-table-row-expand-icon:before{background:currentcolor;content:"";position:absolute;transition:transform .3s ease-out}.ant-table-row-expand-icon:before{height:1px;left:3px;right:3px;top:7px}.ant-table-row-expand-icon:after{bottom:3px;left:7px;top:3px;transform:rotate(90deg);width:1px}.ant-table-row-expand-icon-collapsed:before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed:after{transform:rotate(0deg)}.ant-table-row-expand-icon-spaced{background:#0000;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced:after,.ant-table-row-expand-icon-spaced:before{content:none;display:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-right:8px;margin-top:2.5005px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{margin:-16px;padding:16px;position:relative}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:#00000040}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{background:#fff;position:sticky!important;z-index:2}.ant-table-cell-fix-left-first:after,.ant-table-cell-fix-left-last:after{bottom:-1px;content:"";pointer-events:none;position:absolute;right:0;top:0;transform:translateX(100%);transition:box-shadow .3s;width:30px}.ant-table-cell-fix-left-all:after{display:none}.ant-table-cell-fix-right-first:after,.ant-table-cell-fix-right-last:after{bottom:-1px;content:"";left:0;pointer-events:none;position:absolute;top:0;transform:translateX(-100%);transition:box-shadow .3s;width:30px}.ant-table .ant-table-container:after,.ant-table .ant-table-container:before{bottom:0;content:"";pointer-events:none;position:absolute;top:0;transition:box-shadow .3s;width:30px;z-index:4}.ant-table .ant-table-container:before{left:0}.ant-table .ant-table-container:after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left)>.ant-table-container{position:relative}.ant-table-ping-left .ant-table-cell-fix-left-first:after,.ant-table-ping-left .ant-table-cell-fix-left-last:after,.ant-table-ping-left:not(.ant-table-has-fix-left)>.ant-table-container:before{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-last:before{background-color:initial!important}.ant-table-ping-right:not(.ant-table-has-fix-right)>.ant-table-container{position:relative}.ant-table-ping-right .ant-table-cell-fix-right-first:after,.ant-table-ping-right .ant-table-cell-fix-right-last:after,.ant-table-ping-right:not(.ant-table-has-fix-right)>.ant-table-container:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-sticky-holder,.ant-table-sticky-scroll{background:#fff;position:sticky;z-index:3}.ant-table-sticky-scroll{align-items:center;border-top:1px solid #dee9f6;bottom:0;display:flex;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{background-color:#00000059;border-radius:4px;height:8px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:#000c}@media (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last:after,.ant-table-ping-right .ant-table-cell-fix-right-first:after{box-shadow:none!important}}.ant-table-title{border-radius:2px 2px 0 0}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table,.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container{border-top-right-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-rtl,.ant-table-wrapper-rtl{direction:rtl}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{left:0;right:auto}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-left:0;margin-right:4px}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:0;padding-right:8px}.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-left:8px;margin-right:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon:after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:after{transform:rotate(0deg)}.ztxk-table .ant-table-thead>tr>th{background:#eff5fe}.ztxk-table .ant-table-thead>tr>th .ant-table-column-sorters{padding:0}.ztxk-table .ant-table-tbody>tr>td button{overflow-wrap:break-word;white-space:pre-wrap;word-break:break-all}.ztxk-table .ant-table-tbody>tr.ant-table-row:hover>td{background-color:#ebf3fe}.ztxk-table .ant-table-tbody>tr.ant-table-row>td.ztxk-table--info-td{background-color:#fcecc8}.ztxk-table .ant-table-tbody>tr.ant-table-row>td.ztxk-table--error-td{background-color:#f66}.ztxk-table .ant-table-tbody>tr.ztxk-table--differences,.ztxk-table .ant-table-tbody>tr.ztxk-table--differences:hover>td,.ztxk-table .ant-table-tbody>tr.ztxk-table--differences>td{background-color:#fcecc8}.ztxk-table .react-resizable{background-clip:padding-box;position:relative}.ztxk-table .react-resizable-handle{bottom:0;cursor:col-resize;height:100%;position:absolute;right:-5px;width:10px;z-index:1}.ztxk-table .react-resizable-handle.active:before{border-left:3px dotted #40a9ff;bottom:0;content:"";left:50%;position:absolute;top:0}.ztxk-table .ant-table-body .ant-table-expanded-row-fixed{margin:0;padding:0}.ztxk-table .ant-table-summary>tr>td,.ztxk-table .ant-table-tbody>tr>td,.ztxk-table .ant-table-thead>tr>th{color:#333;height:36px;padding:0 5px;vertical-align:middle}.ztxk-table .ant-table-summary>tr>td .ant-select,.ztxk-table .ant-table-tbody>tr>td .ant-select,.ztxk-table .ant-table-thead>tr>th .ant-select{width:100%}.ztxk-table .ant-table-tbody>tr>td{word-break:break-all}.ztxk-table .ant-table-summary>tr>td{font-weight:700;text-align:left}.ztxk-table .ant-table-summary>tr>td:first-child{text-align:center}.ztxk-table .ztxk-column--adddel-icon{color:#4285f4;font-size:13px;line-height:13px}.ztxk-table .ztxk-column--adddel-icon:hover{color:#1566d2}.ztxk-table .ztxk-column--adddel-icon:first-child{margin-bottom:4px}.ztxk-table .ztxk-column--adddel-icon:last-child{margin-bottom:0}.ztxk-table td.error-td{background:#f88!important;border:1px solid #f88!important}.ztxk-table .thead-icon{cursor:pointer}.ztxk-table .ztxk-table__enhance-cell{font-size:13px;margin:0}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper,.ztxk-table .ztxk-table__enhance-cell .ant-input-number,.ztxk-table .ztxk-table__enhance-cell .ant-select-selector,.ztxk-table .ztxk-table__enhance-cell input{border:none;width:100%}.ztxk-table .ztxk-table__enhance-cell .ant-form-item-control-input{min-height:auto}.ztxk-table .ztxk-table__enhance-cell .ant-input-number{min-height:30px}.ztxk-table .ztxk-table__enhance-cell .ant-input-number input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper{min-height:30px;padding:0 11px}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-select-selector,.ztxk-table .ztxk-table__enhance-cell .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{min-height:30px}.ztxk-table .ztxk-table__enhance-cell .ant-select-selector input,.ztxk-table .ztxk-table__enhance-cell .ant-select-single:not(.ant-select-customize-input) .ant-select-selector input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-input-number-input{text-align:left!important}.ztxk-table .ztxk-table__enhance-cell-wrap{border:1px solid #d9d9d9;cursor:pointer;min-height:30px;padding:4px}.ztxk-table .ztxk-table__enhance-cell-wrap:hover{border-color:#40a9ff}.ztxk-table .ztxk-table__enhance-cell-wrap--disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;color:#00000040;cursor:not-allowed;opacity:1}.ztxk-table .ztxk-table__enhance-cell-wrap--disabled:hover{border-color:#d9d9d9}.ztxk-table .ztxk-table__enhance-row:hover .ztxk-table__enhance-cell-wrap{border-radius:2px}.ztxk-table .ztxk-table__enhance-row.drop-over-downward td{border-bottom:2px dashed #1890ff}.ztxk-table .ztxk-table__enhance-row.drop-over-upward td{border-top:2px dashed #1890ff}.ztxk-table .zt-btn-link{margin-right:5px;padding:0}.ztxk-table .ant-dropdown-trigger{margin-right:0}.ztxk-table.ztxk-table--flex,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table{height:100%}.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table>.ant-table-container{display:flex;flex-direction:column;height:100%}.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table>.ant-table-container>.ant-table-body{flex:1;max-height:none!important}.ztxk-table .ztxk-column--required,.ztxk-table .ztxk-table--title-stress{color:#f88;font-style:normal}.ztxk-table .ztxk-table--sorter{align-items:center;display:flex;flex:1;justify-content:space-between}.ztxk-table .ztxk-table--sorter .ztxk-table--sorter-title{flex-grow:1}.ztxk-table .ztxk-table--sorter .ztxk-table--sorter-icon{align-items:center;color:#bfbfbf;cursor:pointer;display:inline-flex;flex-direction:column;font-size:0}.error-popover .ant-popover-inner-content{color:#f88;padding:6px 10px}
1
+ .ant-table.ant-table-middle{font-size:14px}.ant-table.ant-table-middle .ant-table-footer,.ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table.ant-table-middle .ant-table-title,.ant-table.ant-table-middle tfoot>tr>td,.ant-table.ant-table-middle tfoot>tr>th{padding:12px 8px}.ant-table.ant-table-middle .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px}.ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-12px -8px -12px 40px}.ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-small{font-size:14px}.ant-table.ant-table-small .ant-table-footer,.ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table.ant-table-small .ant-table-title,.ant-table.ant-table-small tfoot>tr>td,.ant-table.ant-table-small tfoot>tr>th{padding:8px}.ant-table.ant-table-small .ant-table-filter-trigger{margin-right:-4px}.ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px}.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin:-8px -8px -8px 40px}.ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px}.ant-table.ant-table-bordered>.ant-table-title{border:1px solid #dee9f6;border-bottom:0}.ant-table.ant-table-bordered>.ant-table-container{border-left:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>td,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th{border-right:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr:not(:last-child)>th,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr:not(:last-child)>th{border-bottom:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>th:before,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>th:before{background-color:initial!important}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>thead>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tfoot>tr>.ant-table-cell-fix-right-first:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>thead>tr>.ant-table-cell-fix-right-first:after{border-right:1px solid #dee9f6}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-16px -17px}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table>tbody>tr>td>.ant-table-expanded-row-fixed:after,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-summary>table>tbody>tr>td>.ant-table-expanded-row-fixed:after{border-right:1px solid #dee9f6;bottom:0;content:"";position:absolute;right:1px;top:0}.ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table,.ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{border-top:1px solid #dee9f6}.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-expanded-row>td,.ant-table.ant-table-bordered.ant-table-scroll-horizontal>.ant-table-container>.ant-table-body>table>tbody>tr.ant-table-placeholder>td{border-right:0}.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-middle>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-12px -9px}.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-body>table>tbody>tr>td>.ant-table-expanded-row-fixed,.ant-table.ant-table-bordered.ant-table-small>.ant-table-container>.ant-table-content>table>tbody>tr>td>.ant-table-expanded-row-fixed{margin:-8px -9px}.ant-table.ant-table-bordered>.ant-table-footer{border:1px solid #dee9f6;border-top:0}.ant-table-cell .ant-table-container:first-child{border-top:0}.ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #fafafa}.ant-table-wrapper{clear:both;max-width:100%}.ant-table-wrapper:before{content:"";display:table}.ant-table-wrapper:after{clear:both;content:"";display:table}.ant-table{font-feature-settings:"tnum";background:#fff;border-radius:2px;box-sizing:border-box;color:#000000a6;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;margin:0;padding:0;position:relative}.ant-table table{border-collapse:initial;border-radius:2px 2px 0 0;border-spacing:0;text-align:left;width:100%}.ant-table tfoot>tr>td,.ant-table tfoot>tr>th,.ant-table-tbody>tr>td,.ant-table-thead>tr>th{overflow-wrap:break-word;padding:16px;position:relative}.ant-table-cell-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:keep-all}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible}.ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis}.ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all}.ant-table-title{padding:16px}.ant-table-footer{background:#fafafa;color:#000000d9;padding:16px}.ant-table-thead>tr>th{background:#fafafa;border-bottom:1px solid #dee9f6;color:#000000d9;font-weight:500;position:relative;text-align:left;transition:background .3s ease}.ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{background-color:#0000000f;content:"";height:1.6em;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:background-color .3s;width:1px}.ant-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ant-table-tbody>tr>td{border-bottom:1px solid #dee9f6;transition:background .3s}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table{margin:-16px -16px -16px 32px}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td{border-bottom:0}.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:first-child,.ant-table-tbody>tr>td>.ant-table-wrapper:only-child .ant-table-tbody>tr:last-child>td:last-child{border-radius:0}.ant-table-tbody>tr.ant-table-row:hover>td,.ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#fafafa}.ant-table-tbody>tr.ant-table-row-selected>td{background:#f0f5ff;border-color:#00000008}.ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#e6eeff}.ant-table-summary{background:#fff;position:relative;z-index:2}div.ant-table-summary{box-shadow:0 -1px 0 #dee9f6}.ant-table-summary>tr>td,.ant-table-summary>tr>th{border-bottom:1px solid #dee9f6}.ant-table-pagination.ant-pagination{margin:16px 0}.ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px}.ant-table-pagination>*{flex:none}.ant-table-pagination-left{justify-content:flex-start}.ant-table-pagination-center{justify-content:center}.ant-table-pagination-right{justify-content:flex-end}.ant-table-thead th.ant-table-column-has-sorters{cursor:pointer;outline:none;transition:all .3s}.ant-table-thead th.ant-table-column-has-sorters:hover{background:#0000000a}.ant-table-thead th.ant-table-column-has-sorters:hover:before{background-color:initial!important}.ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#5b76f6}.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover,.ant-table-thead th.ant-table-column-sort{background:#f5f5f5}.ant-table-thead th.ant-table-column-sort:before{background-color:initial!important}td.ant-table-column-sort{background:#fafafa}.ant-table-column-title{flex:1;position:relative;z-index:1}.ant-table-column-sorters{align-items:center;display:flex;flex:auto;justify-content:space-between}.ant-table-column-sorters:after{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;top:0;width:100%}.ant-table-column-sorter{color:#bfbfbf;font-size:0;margin-left:4px;transition:color .3s}.ant-table-column-sorter-inner{align-items:center;display:inline-flex;flex-direction:column}.ant-table-column-sorter-down,.ant-table-column-sorter-up{font-size:11px}.ant-table-column-sorter-down.active,.ant-table-column-sorter-up.active{color:#5b76f6}.ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-.3em}.ant-table-column-sorters:hover .ant-table-column-sorter{color:#a6a6a6}.ant-table-filter-column{display:flex;justify-content:space-between}.ant-table-filter-trigger{align-items:center;border-radius:2px;color:#bfbfbf;cursor:pointer;display:flex;font-size:12px;margin:-4px -8px -4px 4px;padding:0 4px;position:relative;transition:all .3s}.ant-table-filter-trigger:hover{background:#0000000a;color:#00000073}.ant-table-filter-trigger.active{color:#5b76f6}.ant-table-filter-dropdown{font-feature-settings:"tnum";background-color:#fff;border-radius:2px;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px 0 #00000014,0 9px 28px 8px #0000000d;box-sizing:border-box;color:#000000a6;font-size:14px;font-variant:tabular-nums;line-height:1.5715;list-style:none;margin:0;min-width:120px;padding:0}.ant-table-filter-dropdown .ant-dropdown-menu{border:0;box-shadow:none;max-height:264px;overflow-x:hidden}.ant-table-filter-dropdown .ant-dropdown-menu:empty:after{color:#00000040;content:"Not Found";display:block;font-size:12px;padding:8px 0;text-align:center}.ant-table-filter-dropdown-tree{padding:8px 8px 0}.ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5}.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#f0f4ff}.ant-table-filter-dropdown-search{border-bottom:1px solid #dee9f6;padding:8px}.ant-table-filter-dropdown-search-input input{min-width:140px}.ant-table-filter-dropdown-search-input .anticon{color:#00000040}.ant-table-filter-dropdown-checkall{margin-bottom:4px;margin-left:4px;width:100%}.ant-table-filter-dropdown-submenu>ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto}.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:8px}.ant-table-filter-dropdown-btns{background-color:inherit;border-top:1px solid #dee9f6;display:flex;justify-content:space-between;overflow:hidden;padding:7px 8px}.ant-table-selection-col{width:32px}.ant-table-bordered .ant-table-selection-col{width:50px}table tr td.ant-table-selection-column,table tr th.ant-table-selection-column{padding-left:8px;padding-right:8px;text-align:center}table tr td.ant-table-selection-column .ant-radio-wrapper,table tr th.ant-table-selection-column .ant-radio-wrapper{margin-right:0}table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3}table tr th.ant-table-selection-column:after{background-color:initial!important}.ant-table-selection{display:inline-flex;flex-direction:column;position:relative}.ant-table-selection-extra{cursor:pointer;margin-inline-start:100%;padding-inline-start:4px;position:absolute;top:0;transition:all .3s;z-index:1}.ant-table-selection-extra .anticon{color:#bfbfbf;font-size:10px}.ant-table-selection-extra .anticon:hover{color:#a6a6a6}.ant-table-expand-icon-col{width:48px}.ant-table-row-expand-icon-cell{text-align:center}.ant-table-row-expand-icon-cell .ant-table-row-expand-icon{display:inline-flex;float:none;vertical-align:sub}.ant-table-row-indent{float:left;height:1px}.ant-table-row-expand-icon{background:#fff;border:1px solid #dee9f6;border-radius:2px;box-sizing:border-box;color:#4285f4;color:inherit;cursor:pointer;float:left;height:17px;line-height:17px;outline:none;padding:0;position:relative;transform:scale(.94117647);transition:color .3s;transition:all .3s;-webkit-user-select:none;user-select:none;width:17px}.ant-table-row-expand-icon:focus-visible,.ant-table-row-expand-icon:hover{color:#1566d2}.ant-table-row-expand-icon:active{color:#2d66cf}.ant-table-row-expand-icon:active,.ant-table-row-expand-icon:focus,.ant-table-row-expand-icon:hover{border-color:currentcolor}.ant-table-row-expand-icon:after,.ant-table-row-expand-icon:before{background:currentcolor;content:"";position:absolute;transition:transform .3s ease-out}.ant-table-row-expand-icon:before{height:1px;left:3px;right:3px;top:7px}.ant-table-row-expand-icon:after{bottom:3px;left:7px;top:3px;transform:rotate(90deg);width:1px}.ant-table-row-expand-icon-collapsed:before{transform:rotate(-180deg)}.ant-table-row-expand-icon-collapsed:after{transform:rotate(0deg)}.ant-table-row-expand-icon-spaced{background:#0000;border:0;visibility:hidden}.ant-table-row-expand-icon-spaced:after,.ant-table-row-expand-icon-spaced:before{content:none;display:none}.ant-table-row-indent+.ant-table-row-expand-icon{margin-right:8px;margin-top:2.5005px}tr.ant-table-expanded-row:hover>td,tr.ant-table-expanded-row>td{background:#fbfbfb}tr.ant-table-expanded-row .ant-descriptions-view{display:flex}tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto}.ant-table .ant-table-expanded-row-fixed{margin:-16px;padding:16px;position:relative}.ant-table-tbody>tr.ant-table-placeholder{text-align:center}.ant-table-empty .ant-table-tbody>tr.ant-table-placeholder{color:#00000040}.ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#fff}.ant-table-cell-fix-left,.ant-table-cell-fix-right{background:#fff;position:sticky!important;z-index:2}.ant-table-cell-fix-left-first:after,.ant-table-cell-fix-left-last:after{bottom:-1px;content:"";pointer-events:none;position:absolute;right:0;top:0;transform:translateX(100%);transition:box-shadow .3s;width:30px}.ant-table-cell-fix-left-all:after{display:none}.ant-table-cell-fix-right-first:after,.ant-table-cell-fix-right-last:after{bottom:-1px;content:"";left:0;pointer-events:none;position:absolute;top:0;transform:translateX(-100%);transition:box-shadow .3s;width:30px}.ant-table .ant-table-container:after,.ant-table .ant-table-container:before{bottom:0;content:"";pointer-events:none;position:absolute;top:0;transition:box-shadow .3s;width:30px;z-index:4}.ant-table .ant-table-container:before{left:0}.ant-table .ant-table-container:after{right:0}.ant-table-ping-left:not(.ant-table-has-fix-left)>.ant-table-container{position:relative}.ant-table-ping-left .ant-table-cell-fix-left-first:after,.ant-table-ping-left .ant-table-cell-fix-left-last:after,.ant-table-ping-left:not(.ant-table-has-fix-left)>.ant-table-container:before{box-shadow:inset 10px 0 8px -8px #00000026}.ant-table-ping-left .ant-table-cell-fix-left-last:before{background-color:initial!important}.ant-table-ping-right:not(.ant-table-has-fix-right)>.ant-table-container{position:relative}.ant-table-ping-right .ant-table-cell-fix-right-first:after,.ant-table-ping-right .ant-table-cell-fix-right-last:after,.ant-table-ping-right:not(.ant-table-has-fix-right)>.ant-table-container:after{box-shadow:inset -10px 0 8px -8px #00000026}.ant-table-sticky-holder,.ant-table-sticky-scroll{background:#fff;position:sticky;z-index:3}.ant-table-sticky-scroll{align-items:center;border-top:1px solid #dee9f6;bottom:0;display:flex;opacity:.6}.ant-table-sticky-scroll:hover{transform-origin:center bottom}.ant-table-sticky-scroll-bar{background-color:#00000059;border-radius:4px;height:8px}.ant-table-sticky-scroll-bar-active,.ant-table-sticky-scroll-bar:hover{background-color:#000c}@media (-ms-high-contrast:none){.ant-table-ping-left .ant-table-cell-fix-left-last:after,.ant-table-ping-right .ant-table-cell-fix-right-first:after{box-shadow:none!important}}.ant-table-title{border-radius:2px 2px 0 0}.ant-table-title+.ant-table-container{border-top-left-radius:0;border-top-right-radius:0}.ant-table-title+.ant-table-container table,.ant-table-title+.ant-table-container table>thead>tr:first-child th:first-child,.ant-table-title+.ant-table-container table>thead>tr:first-child th:last-child{border-radius:0}.ant-table-container{border-top-right-radius:2px}.ant-table-container,.ant-table-container table>thead>tr:first-child th:first-child{border-top-left-radius:2px}.ant-table-container table>thead>tr:first-child th:last-child{border-top-right-radius:2px}.ant-table-footer{border-radius:0 0 2px 2px}.ant-table-rtl,.ant-table-wrapper-rtl{direction:rtl}.ant-table-wrapper-rtl .ant-table table{text-align:right}.ant-table-wrapper-rtl .ant-table-thead>tr>th[colspan]:not([colspan="1"]){text-align:center}.ant-table-wrapper-rtl .ant-table-thead>tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan]):before{left:0;right:auto}.ant-table-wrapper-rtl .ant-table-thead>tr>th{text-align:right}.ant-table-tbody>tr .ant-table-wrapper:only-child .ant-table.ant-table-rtl{margin:-16px 33px -16px -16px}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end}.ant-table-wrapper.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start}.ant-table-wrapper-rtl .ant-table-column-sorter{margin-left:0;margin-right:4px}.ant-table-wrapper-rtl .ant-table-filter-column-title{padding:16px 16px 16px 2.3em}.ant-table-rtl .ant-table-thead tr th.ant-table-column-has-sorters .ant-table-filter-column-title{padding:0 0 0 2.3em}.ant-table-wrapper-rtl .ant-table-filter-trigger{margin:-4px 4px -4px -8px}.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-menu-submenu-rtl.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-dropdown-rtl .ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-left:0;padding-right:8px}.ant-table-wrapper-rtl .ant-table-selection{text-align:center}.ant-table-wrapper-rtl .ant-table-row-expand-icon,.ant-table-wrapper-rtl .ant-table-row-indent{float:right}.ant-table-wrapper-rtl .ant-table-row-indent+.ant-table-row-expand-icon{margin-left:8px;margin-right:0}.ant-table-wrapper-rtl .ant-table-row-expand-icon:after{transform:rotate(-90deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:before{transform:rotate(180deg)}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed:after{transform:rotate(0deg)}.ztxk-table .ant-table-thead>tr>th{background:#eff5fe}.ztxk-table .ant-table-thead>tr>th .ant-table-column-sorters{padding:0}.ztxk-table .ant-table-tbody>tr>td button{overflow-wrap:break-word;white-space:pre-wrap;word-break:break-all}.ztxk-table .ant-table-tbody>tr.ant-table-row:hover>td{background-color:#ebf3fe}.ztxk-table .ant-table-tbody>tr.ant-table-row>td.ztxk-table--info-td{background-color:#fcecc8}.ztxk-table .ant-table-tbody>tr.ant-table-row>td.ztxk-table--error-td{background-color:#f66}.ztxk-table .ant-table-tbody>tr.ztxk-table--differences,.ztxk-table .ant-table-tbody>tr.ztxk-table--differences:hover>td,.ztxk-table .ant-table-tbody>tr.ztxk-table--differences>td{background-color:#fcecc8}.ztxk-table .react-resizable{background-clip:padding-box;position:relative}.ztxk-table .react-resizable-handle{bottom:0;cursor:col-resize;height:100%;position:absolute;right:-5px;width:10px;z-index:1}.ztxk-table .react-resizable-handle.active:before{border-left:3px dotted #40a9ff;bottom:0;content:"";left:50%;position:absolute;top:0}.ztxk-table .ant-table-body .ant-table-expanded-row-fixed{margin:0;padding:0}.ztxk-table .ant-table-summary>tr>td,.ztxk-table .ant-table-tbody>tr>td,.ztxk-table .ant-table-thead>tr>th{color:#333;height:36px;padding:0 5px;vertical-align:middle}.ztxk-table .ant-table-summary>tr>td .ant-select,.ztxk-table .ant-table-tbody>tr>td .ant-select,.ztxk-table .ant-table-thead>tr>th .ant-select{width:100%}.ztxk-table .ant-table-tbody>tr>td{word-break:break-all}.ztxk-table .ant-table-summary>tr>td{font-weight:700;text-align:left}.ztxk-table .ant-table-summary>tr>td:first-child{text-align:center}.ztxk-table .ztxk-column--adddel-icon{color:#4285f4;font-size:13px;line-height:13px}.ztxk-table .ztxk-column--adddel-icon:hover{color:#1566d2}.ztxk-table .ztxk-column--adddel-icon:first-child{margin-bottom:4px}.ztxk-table .ztxk-column--adddel-icon:last-child{margin-bottom:0}.ztxk-table td.error-td{background:#f88!important;border:1px solid #f88!important}.ztxk-table .thead-icon{cursor:pointer}.ztxk-table .ztxk-table__enhance-cell{font-size:13px;margin:0}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper,.ztxk-table .ztxk-table__enhance-cell .ant-input-number,.ztxk-table .ztxk-table__enhance-cell .ant-select-selector,.ztxk-table .ztxk-table__enhance-cell input{border:none;width:100%}.ztxk-table .ztxk-table__enhance-cell .ant-form-item-control-input{min-height:auto}.ztxk-table .ztxk-table__enhance-cell .ant-input-number{min-height:30px}.ztxk-table .ztxk-table__enhance-cell .ant-input-number input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper{min-height:30px;padding:0 11px}.ztxk-table .ztxk-table__enhance-cell .ant-input-affix-wrapper input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-select-selector,.ztxk-table .ztxk-table__enhance-cell .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{min-height:30px}.ztxk-table .ztxk-table__enhance-cell .ant-select-selector input,.ztxk-table .ztxk-table__enhance-cell .ant-select-single:not(.ant-select-customize-input) .ant-select-selector input{min-height:28px}.ztxk-table .ztxk-table__enhance-cell .ant-input-number-input{text-align:left!important}.ztxk-table .ztxk-table__enhance-cell-wrap{border:1px solid #d9d9d9;cursor:pointer;min-height:30px;padding:4px}.ztxk-table .ztxk-table__enhance-cell-wrap:hover{border-color:#40a9ff}.ztxk-table .ztxk-table__enhance-cell-wrap--disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;color:#00000040;cursor:not-allowed;opacity:1}.ztxk-table .ztxk-table__enhance-cell-wrap--disabled:hover{border-color:#d9d9d9}.ztxk-table .ztxk-table__enhance-row:hover .ztxk-table__enhance-cell-wrap{border-radius:2px}.ztxk-table .ztxk-table__enhance-row.drop-over-downward td{border-bottom:2px dashed #1890ff}.ztxk-table .ztxk-table__enhance-row.drop-over-upward td{border-top:2px dashed #1890ff}.ztxk-table .zt-btn-link{margin-right:5px;padding:0}.ztxk-table .ant-dropdown-trigger{margin-right:0}.ztxk-table.ztxk-table--flex,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container,.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table{height:100%}.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table>.ant-table-container{display:flex;flex-direction:column;height:100%}.ztxk-table.ztxk-table--flex>.ant-spin-nested-loading>.ant-spin-container>.ant-table>.ant-table-container>.ant-table-body{flex:1;max-height:none!important}.ztxk-table .ztxk-column--required,.ztxk-table .ztxk-table--title-stress{color:#f88;font-style:normal}.ztxk-table .ztxk-table--sorter{align-items:center;display:flex;flex:1;justify-content:space-between}.ztxk-table .ztxk-table--sorter .ztxk-table--sorter-title{flex-grow:1}.ztxk-table .ztxk-table--sorter .ztxk-table--sorter-icon{align-items:center;color:#bfbfbf;cursor:pointer;display:inline-flex;flex-direction:column;font-size:0}.ztxk-table .ant-table-filter-trigger{margin:0}.error-popover .ant-popover-inner-content{color:#f88;padding:6px 10px}.ztxk-table--filter{max-width:220px;padding:6px}.ztxk-table--filter input::placeholder{font-size:12px}.ztxk-table--filter .ztxk-table--filter__checkbox-container{display:flex;flex-direction:column;margin-bottom:8px;margin-top:8px;max-height:200px;overflow-y:auto;width:200px}.ztxk-table--filter .ztxk-table--filter__checkbox-container .ant-checkbox-wrapper{margin-left:0}.ztxk-table--filter .ztxk-table--filter__checkbox-container .ant-checkbox+span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ztxk-table--filter .ztxk-table--filter__btn-container button{margin-right:10px}.ztxk-table--filter .ztxk-table--filter__btn-container button:last-child{margin-right:0}.ztxk-table--filter .ztxk-table--filter__btn-container button .anticon{line-height:inherit}
@@ -3,6 +3,7 @@ import { TableProps, TablePaginationConfig, ColumnType } from 'antd/lib/table';
3
3
  import { TextAreaProps } from 'antd/es/input/TextArea';
4
4
  import { IInputProps } from '../input/input.js';
5
5
  import { IInputNumberProps } from '../inputnumber/inputNumber.js';
6
+ import { IDynamicItem } from '../dynamicsetting/interface.js';
6
7
  import _default from './components/TitleDirectionColumn.js';
7
8
 
8
9
  type IEditableConfigOtherProps = IInputProps & IInputNumberProps & TextAreaProps;
@@ -46,7 +47,11 @@ interface ValidateErrorObject {
46
47
  /** 其他任何值,当你需要的时候 */
47
48
  [props: string]: any;
48
49
  }
49
- interface IColumnType<RecordType> extends ColumnType<RecordType> {
50
+ interface IColumnType<RecordType> extends Omit<ColumnType<RecordType>, "render"> {
51
+ /**
52
+ * 内部属性。如果要记录过滤等信息,需要从一个地方去取
53
+ */
54
+ __dynamicItem__?: IDynamicItem;
50
55
  /**
51
56
  * 是否禁止取消显示
52
57
  */
@@ -57,6 +62,9 @@ interface IColumnType<RecordType> extends ColumnType<RecordType> {
57
62
  defaultUnChecked?: boolean;
58
63
  /**
59
64
  * 是否添加复制整列功能
65
+ * @description
66
+ * 如果是一个boolean值。代表需不需要复制列的功能。复制列会以当前列配置的key为准
67
+ * 如果传递的是一个字符串或者字符串数组。那么复制列会用传入的值当前key来做复制
60
68
  */
61
69
  isCopy?: boolean | string | string[];
62
70
  /**
@@ -78,6 +86,11 @@ interface IColumnType<RecordType> extends ColumnType<RecordType> {
78
86
  */
79
87
  editable?: ((record: any) => boolean) | boolean;
80
88
  editableConfig?: IEditableConfig;
89
+ /**
90
+ * 如果你不想使用表格内部提供的编辑功能,但是又想粘贴execl中的数据时,实现数据替换
91
+ * 可以添加这个属性
92
+ */
93
+ isPaste?: boolean;
81
94
  /**
82
95
  * 开启验证
83
96
  */
@@ -123,6 +136,7 @@ interface IColumnType<RecordType> extends ColumnType<RecordType> {
123
136
  /**
124
137
  * 开启往下填充
125
138
  * 会在表头添加一个 向下的箭头。点击箭头将第一行的数据 往下填充
139
+ * 如果传入一个方法。那么该方法需要返回处理过后的数据
126
140
  */
127
141
  isFillDown?: boolean | ((info: {
128
142
  index: number;
@@ -131,8 +145,16 @@ interface IColumnType<RecordType> extends ColumnType<RecordType> {
131
145
  }) => any);
132
146
  /**
133
147
  * 是否开启自定义排序
148
+ * 排序的数据默认实际不会影响源数据,是一份新的数据。
149
+ * 如果想影响源数据,需要传入:onTableChange方法。
150
+ * 排序时,会触发这个方法。会把排序后数据、源数据以及排序信息传出给开发自行处理。
151
+ * 如果想实现服务端排序:需要传入:serviceOrder方法。
134
152
  */
135
153
  isOrder?: boolean;
154
+ /**
155
+ * 是否开启过滤功能
156
+ */
157
+ isFilter?: boolean;
136
158
  /**
137
159
  * 是否强调字段
138
160
  */
@@ -146,6 +168,46 @@ interface IColumnType<RecordType> extends ColumnType<RecordType> {
146
168
  * 气泡提示框
147
169
  */
148
170
  popoverText?: string;
171
+ /**
172
+ * 代理render方法
173
+ * options里面会提供一些内部方法以供外部调用。
174
+ * @example 1. insertTableFromClipboard 将粘贴板中的数据插入到表格中。
175
+ * {
176
+ * key: 'key1',
177
+ * dataIndex: 'key1',
178
+ * title: '测试',
179
+ * render(text, record, index, options) {
180
+ * const { insertTableFromClipboard } = options;
181
+ * return <Input onPaste={async (e) => {
182
+ * const result = await insertTableFromClipboard(e, {
183
+ * index,
184
+ * // 传true 表格如果传入了 onTableChange的话会直接调用这个方法。false则不会调用。
185
+ * // 你可以自行通过result的结果处理数据
186
+ * isUpdate: true,
187
+ * })
188
+ * }} />
189
+ * }
190
+ * }
191
+ */
192
+ render?: (text: any, record: any, index: number, options: IRenderOptions) => any;
193
+ }
194
+ interface IRenderOptions {
195
+ insertTableFromClipboard: IFuncInsertTableFromClipboard;
196
+ }
197
+ interface IInserTableFromClipboard {
198
+ index: number;
199
+ isUpdate?: boolean;
200
+ }
201
+ interface IFuncInsertTableFromClipboardReturn {
202
+ /** 新数据 */
203
+ newDataSource: any;
204
+ /** 老数据 */
205
+ oldDataSource: any;
206
+ /** 粘贴规则。按照列对应key 以及插入到哪一行建立了对应关系 */
207
+ pasteConfig: any;
208
+ }
209
+ interface IFuncInsertTableFromClipboard {
210
+ (e: any, options: IInserTableFromClipboard): Promise<IFuncInsertTableFromClipboardReturn>;
149
211
  }
150
212
  interface IColumnGroupType<RecordType> extends Omit<IColumnType<RecordType>, "dataIndex"> {
151
213
  children: IColumnsType<RecordType>;
@@ -198,6 +260,16 @@ interface ITableProps<RecordType> extends Omit<TableProps<RecordType>, "columns"
198
260
  * 是否开启动态列配置
199
261
  */
200
262
  dynamicKey?: string;
263
+ /**
264
+ * 增加了column的表头过滤功能;如果想要过滤功能持久化,可以配置这个属性
265
+ * 同时也需要配置dynamicKey配置。
266
+ */
267
+ isRemeberFilter?: boolean;
268
+ /**
269
+ * 表格列的排序是否更新源数据。即是否触发onTableChange事件
270
+ * 变成受控模式
271
+ */
272
+ isOrderUpdateData?: boolean;
201
273
  /**
202
274
  * 如果想要开启动态列配置,但是不想要页面出现操作按钮
203
275
  * 一般场景用于记录宽度的变化
@@ -218,7 +290,7 @@ interface ITableProps<RecordType> extends Omit<TableProps<RecordType>, "columns"
218
290
  currentIndex?: number;
219
291
  dragIndex?: number;
220
292
  hoverIndex?: number;
221
- type?: "edit" | "move" | "add" | "del" | "delAll" | "fillDown" | "sort" | "custom";
293
+ type?: "paste" | "edit" | "move" | "add" | "del" | "delAll" | "fillDown" | "sort" | "custom";
222
294
  field?: string;
223
295
  [prop: string]: any;
224
296
  }) => void;
@@ -380,4 +452,4 @@ interface IOrder {
380
452
  order: "ascend" | "descend" | undefined;
381
453
  }
382
454
 
383
- export { IColumnGroupType, IColumnType, IColumnsType, IColumnsTypeProp, IEditableConfig, IFields, IOrder, ISummaryConfig, ITableProps, ITableRefHandel, TableComponent, ValidateErrorObject };
455
+ export { IColumnGroupType, IColumnType, IColumnsType, IColumnsTypeProp, IEditableConfig, IFields, IFuncInsertTableFromClipboard, IOrder, ISummaryConfig, ITableProps, ITableRefHandel, TableComponent, ValidateErrorObject };