@hw-component/table 1.9.91 → 1.9.93
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/.eslintcache +1 -1
- package/es/HTableBody/Options/Content.d.ts +1 -1
- package/es/HTableBody/Options/Content.js +93 -85
- package/es/HTableBody/Options/ContentTree.d.ts +7 -0
- package/es/HTableBody/Options/ContentTree.js +41 -0
- package/es/HTableBody/Options/Title.d.ts +1 -1
- package/es/HTableBody/Options/hooks.d.ts +17 -0
- package/es/HTableBody/Options/hooks.js +53 -1
- package/es/HTableBody/Options/index.d.ts +1 -1
- package/es/HTableBody/Options/utils.d.ts +8 -1
- package/es/HTableBody/Options/utils.js +29 -2
- package/es/HTableBody/hooks/useColData.d.ts +2 -1
- package/es/HTableBody/hooks/useColData.js +7 -3
- package/es/HTableBody/index.js +8 -4
- package/es/Table.js +1 -1
- package/es/index.css +4 -0
- package/lib/HTableBody/Options/Content.d.ts +1 -1
- package/lib/HTableBody/Options/Content.js +91 -83
- package/lib/HTableBody/Options/ContentTree.d.ts +7 -0
- package/lib/HTableBody/Options/ContentTree.js +44 -0
- package/lib/HTableBody/Options/Title.d.ts +1 -1
- package/lib/HTableBody/Options/hooks.d.ts +17 -0
- package/lib/HTableBody/Options/hooks.js +54 -0
- package/lib/HTableBody/Options/index.d.ts +1 -1
- package/lib/HTableBody/Options/utils.d.ts +8 -1
- package/lib/HTableBody/Options/utils.js +29 -1
- package/lib/HTableBody/hooks/useColData.d.ts +2 -1
- package/lib/HTableBody/hooks/useColData.js +7 -3
- package/lib/HTableBody/index.js +8 -4
- package/lib/Table.js +1 -1
- package/lib/index.css +4 -0
- package/package.json +1 -1
- package/src/components/HTableBody/Options/Content.tsx +81 -76
- package/src/components/HTableBody/Options/ContentTree.tsx +34 -0
- package/src/components/HTableBody/Options/Title.tsx +6 -1
- package/src/components/HTableBody/Options/hooks.tsx +76 -0
- package/src/components/HTableBody/Options/index.tsx +1 -3
- package/src/components/HTableBody/Options/modal.d.ts +2 -2
- package/src/components/HTableBody/Options/utils.ts +28 -0
- package/src/components/HTableBody/hooks/useColData.tsx +12 -7
- package/src/components/HTableBody/index.tsx +11 -7
- package/src/components/Table.tsx +1 -2
- package/src/components/index.less +4 -0
- package/src/pages/Table/index.tsx +67 -6
- package/src/components/HTableBody/Options/hooks.ts +0 -24
|
@@ -78,14 +78,16 @@ export const useCols = ({
|
|
|
78
78
|
useEffect(() => {
|
|
79
79
|
setCols(changeConfigData(configData));
|
|
80
80
|
}, [configData, table, rowSelection]);
|
|
81
|
-
|
|
81
|
+
const resetCols = () => {
|
|
82
|
+
setCols(changeConfigData(configData));
|
|
83
|
+
};
|
|
82
84
|
return {
|
|
83
85
|
cols,
|
|
84
|
-
setCols
|
|
86
|
+
setCols,
|
|
87
|
+
resetCols,
|
|
85
88
|
};
|
|
86
89
|
};
|
|
87
90
|
|
|
88
|
-
|
|
89
91
|
interface useColumnsStateTypeModal {
|
|
90
92
|
columnsState?: ColumnsStateType;
|
|
91
93
|
columns: ConfigDataModal;
|
|
@@ -96,8 +98,11 @@ export const useColumnsStateType = ({
|
|
|
96
98
|
columns,
|
|
97
99
|
}: useColumnsStateTypeModal) => {
|
|
98
100
|
const { tableInstance } = useHTableContext();
|
|
99
|
-
const { persistenceType, persistenceKey, value, defaultValue, onChange } =
|
|
100
|
-
|
|
101
|
+
const { persistenceType, persistenceKey, value, defaultValue, onChange } =
|
|
102
|
+
columnsState || {};
|
|
103
|
+
const [selfValue, setSelfValue] = useState<
|
|
104
|
+
Record<string, ColumnsState> | undefined
|
|
105
|
+
>(defaultValue);
|
|
101
106
|
|
|
102
107
|
const initTableColsVal = useMemo(() => {
|
|
103
108
|
return selfValue || {};
|
|
@@ -120,7 +125,7 @@ export const useColumnsStateType = ({
|
|
|
120
125
|
onChange?.(newObj);
|
|
121
126
|
};
|
|
122
127
|
|
|
123
|
-
const
|
|
128
|
+
const resetCheckCol = () => {
|
|
124
129
|
setSelfValue(initTableColsVal);
|
|
125
130
|
};
|
|
126
131
|
return {
|
|
@@ -128,6 +133,6 @@ export const useColumnsStateType = ({
|
|
|
128
133
|
persistenceKey,
|
|
129
134
|
value: selfValue,
|
|
130
135
|
onChange: change,
|
|
131
|
-
|
|
136
|
+
resetCheckCol,
|
|
132
137
|
};
|
|
133
138
|
}; //设置选项
|
|
@@ -66,18 +66,19 @@ export default (bodyProps: HTableBodyProps) => {
|
|
|
66
66
|
const { records } = data || {};
|
|
67
67
|
const tableInstance = table || contextTableInstance;
|
|
68
68
|
|
|
69
|
-
const { cols ,
|
|
69
|
+
const { cols, setCols, resetCols } = useCols({
|
|
70
70
|
configData: bodyConfigData,
|
|
71
71
|
table: tableInstance,
|
|
72
72
|
rowSelection,
|
|
73
73
|
bordered,
|
|
74
74
|
});
|
|
75
|
-
const { value, onChange,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
75
|
+
const { value, onChange, resetCheckCol, ...selfColStatus } =
|
|
76
|
+
useColumnsStateType({
|
|
77
|
+
columnsState,
|
|
78
|
+
columns: cols,
|
|
79
|
+
});
|
|
80
80
|
useSynchronousKeys({ selectedRowKeys, records, rowKey });
|
|
81
|
+
|
|
81
82
|
const optionsNode = options && (
|
|
82
83
|
<Options
|
|
83
84
|
reload={() => {
|
|
@@ -89,7 +90,10 @@ export default (bodyProps: HTableBodyProps) => {
|
|
|
89
90
|
setSizeChange={setCuSize}
|
|
90
91
|
colStatusValue={value || {}}
|
|
91
92
|
onChange={onChange}
|
|
92
|
-
reset={
|
|
93
|
+
reset={() => {
|
|
94
|
+
resetCheckCol();
|
|
95
|
+
resetCols();
|
|
96
|
+
}}
|
|
93
97
|
onDrop={setCols}
|
|
94
98
|
/>
|
|
95
99
|
);
|
package/src/components/Table.tsx
CHANGED
|
@@ -3,7 +3,6 @@ import Body from "./HTableBody";
|
|
|
3
3
|
import useCurrentTable from "./hooks/useCurrentTable";
|
|
4
4
|
import useRowObj from "./hooks/useRowObj";
|
|
5
5
|
import { HTableContext } from "./context";
|
|
6
|
-
import { Space } from "antd";
|
|
7
6
|
import type { HTableProps } from "./modal";
|
|
8
7
|
import useReq from "./hooks/useReq";
|
|
9
8
|
import useDispatch from "./hooks/useDispatch";
|
|
@@ -85,7 +84,7 @@ export default ({
|
|
|
85
84
|
configData,
|
|
86
85
|
onFinish: (value) => {
|
|
87
86
|
rowSelectionReload();
|
|
88
|
-
return run({ ...
|
|
87
|
+
return run({ ...value, current: 1 });
|
|
89
88
|
},
|
|
90
89
|
onPageChange: tableInstance.table.reloadWithParams,
|
|
91
90
|
setSelectedRowData,
|
|
@@ -85,6 +85,10 @@
|
|
|
85
85
|
.@{ant-prefix}-hw-table-body-option-setting-content-title{
|
|
86
86
|
display: flex;
|
|
87
87
|
}
|
|
88
|
+
.@{ant-prefix}-hw-table-op-tree-content{
|
|
89
|
+
padding: 6px 6px 6px 0px;
|
|
90
|
+
width: 100%;
|
|
91
|
+
}
|
|
88
92
|
.@{ant-prefix}-hw-table-body-option-tree{
|
|
89
93
|
.@{ant-prefix}-tree-treenode{
|
|
90
94
|
width: 100%;
|
|
@@ -5,7 +5,16 @@ import {
|
|
|
5
5
|
HTableHeaderSubBtn,
|
|
6
6
|
HTableHeader,
|
|
7
7
|
} from "@/components";
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
Button,
|
|
10
|
+
Card,
|
|
11
|
+
Tooltip,
|
|
12
|
+
Typography,
|
|
13
|
+
Tag,
|
|
14
|
+
Row,
|
|
15
|
+
Space,
|
|
16
|
+
Table,
|
|
17
|
+
} from "antd";
|
|
9
18
|
import { HFormConfigProvider, HRangePicker } from "@hw-component/form";
|
|
10
19
|
import { SettingOutlined } from "@ant-design/icons";
|
|
11
20
|
import ProTable from "@ant-design/pro-table";
|
|
@@ -42,6 +51,31 @@ const Testd = (props) => {
|
|
|
42
51
|
);
|
|
43
52
|
};
|
|
44
53
|
export const configData = [
|
|
54
|
+
{
|
|
55
|
+
title: '订单编号',
|
|
56
|
+
dataIndex: 'childOrderNo',
|
|
57
|
+
showSearch: true,
|
|
58
|
+
valueType: 'copy',
|
|
59
|
+
width: 120,
|
|
60
|
+
searchType: 'selectInput',
|
|
61
|
+
name: 'selectInput',
|
|
62
|
+
itemProps: {
|
|
63
|
+
placeholder: '请输入',
|
|
64
|
+
selectProps: {
|
|
65
|
+
options:[
|
|
66
|
+
{
|
|
67
|
+
label: '订单编号',
|
|
68
|
+
value: 'orderNo',
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
label: '用户id',
|
|
72
|
+
value: 'userId',
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
style: { width: 88 },
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
},
|
|
45
79
|
{
|
|
46
80
|
title: "短信接收手机号",
|
|
47
81
|
dataIndex: "mobileList",
|
|
@@ -66,9 +100,33 @@ export const configData = [
|
|
|
66
100
|
valueType: "image",
|
|
67
101
|
valueTypeProps: {
|
|
68
102
|
fallback:
|
|
69
|
-
|
|
103
|
+
"data:image/png;base64,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",
|
|
70
104
|
},
|
|
71
105
|
},
|
|
106
|
+
{
|
|
107
|
+
title: "操作",
|
|
108
|
+
dataIndex: "op",
|
|
109
|
+
width: 120,
|
|
110
|
+
fixed: "right",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
title: "操作1",
|
|
114
|
+
dataIndex: "op1",
|
|
115
|
+
width: 120,
|
|
116
|
+
fixed: "right",
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
title: "操作2",
|
|
120
|
+
dataIndex: "op2",
|
|
121
|
+
width: 120,
|
|
122
|
+
fixed: "left",
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
title: "操作3",
|
|
126
|
+
dataIndex: "op3",
|
|
127
|
+
width: 120,
|
|
128
|
+
fixed: "left",
|
|
129
|
+
},
|
|
72
130
|
];
|
|
73
131
|
const maker = (name) => {
|
|
74
132
|
const data = [];
|
|
@@ -155,9 +213,14 @@ export default () => {
|
|
|
155
213
|
persistenceType: "localStorage",
|
|
156
214
|
}}
|
|
157
215
|
formInitValues={{
|
|
158
|
-
|
|
216
|
+
select: 'orderNo',
|
|
159
217
|
}}
|
|
218
|
+
|
|
160
219
|
dataSource={[{}, {}, {}]}
|
|
220
|
+
request={(params)=>{
|
|
221
|
+
console.log(params)
|
|
222
|
+
return Promise.resolve({});
|
|
223
|
+
}}
|
|
161
224
|
headerTitle={
|
|
162
225
|
<Space size={8}>
|
|
163
226
|
<Button
|
|
@@ -171,9 +234,7 @@ export default () => {
|
|
|
171
234
|
操作
|
|
172
235
|
</Button>
|
|
173
236
|
<div>
|
|
174
|
-
<div
|
|
175
|
-
style={{ width, height: 50, backgroundColor: "red" }}
|
|
176
|
-
/>
|
|
237
|
+
<div style={{ width, height: 50, backgroundColor: "red" }} />
|
|
177
238
|
</div>
|
|
178
239
|
</Space>
|
|
179
240
|
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { useMemo } from "react";
|
|
2
|
-
import type { IProps } from "@/components/HTableBody/Options/modal";
|
|
3
|
-
|
|
4
|
-
export const useCheckKeys = ({
|
|
5
|
-
columns,
|
|
6
|
-
colStatusValue,
|
|
7
|
-
}: Pick<IProps, "colStatusValue" | "columns">) => {
|
|
8
|
-
return useMemo(() => {
|
|
9
|
-
const keys: string[] = [];
|
|
10
|
-
columns.forEach((value) => {
|
|
11
|
-
const { dataIndex, hideInTable } = value;
|
|
12
|
-
if (hideInTable || !dataIndex) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
const dataIndexStr = dataIndex.toString();
|
|
16
|
-
const { show = true } = colStatusValue[dataIndexStr] || {};
|
|
17
|
-
if (!show) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
keys.push(dataIndexStr);
|
|
21
|
-
});
|
|
22
|
-
return keys;
|
|
23
|
-
}, [colStatusValue, columns]);
|
|
24
|
-
};
|