@nokecy/qc-ui 1.0.39 → 1.0.41
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/dist/cjs/ag-grid-plus/_utils/processColumnGroups.js +36 -19
- package/dist/cjs/ag-grid-plus/_utils/processFormColumnState.d.ts +2 -0
- package/dist/cjs/ag-grid-plus/_utils/processFormColumnState.js +28 -0
- package/dist/cjs/ag-grid-plus/ag-gridPlus.js +5 -4
- package/dist/cjs/ag-grid-plus/queryForm/index.d.ts +1 -0
- package/dist/cjs/ag-grid-plus/queryForm/index.js +5 -2
- package/dist/cjs/ag-grid-plus/setting/diySetting/index.d.ts +1 -0
- package/dist/cjs/ag-grid-plus/setting/diySetting/index.js +42 -27
- package/dist/cjs/ag-grid-plus/setting/index.d.ts +1 -0
- package/dist/cjs/ag-grid-plus/setting/index.js +3 -1
- package/dist/cjs/array-table/index.js +66 -4
- package/dist/esm/ag-grid-plus/_utils/processColumnGroups.js +36 -19
- package/dist/esm/ag-grid-plus/_utils/processFormColumnState.d.ts +2 -0
- package/dist/esm/ag-grid-plus/_utils/processFormColumnState.js +22 -0
- package/dist/esm/ag-grid-plus/ag-gridPlus.js +5 -4
- package/dist/esm/ag-grid-plus/queryForm/index.d.ts +1 -0
- package/dist/esm/ag-grid-plus/queryForm/index.js +5 -2
- package/dist/esm/ag-grid-plus/setting/diySetting/index.d.ts +1 -0
- package/dist/esm/ag-grid-plus/setting/diySetting/index.js +42 -27
- package/dist/esm/ag-grid-plus/setting/index.d.ts +1 -0
- package/dist/esm/ag-grid-plus/setting/index.js +3 -1
- package/dist/esm/array-table/index.js +66 -4
- package/dist/umd/qc-ui.min.js +1 -1
- package/package.json +1 -1
|
@@ -5,6 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
8
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
13
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
8
14
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
15
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10
16
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -13,10 +19,27 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
13
19
|
var processColumnGroups = function processColumnGroups(columns) {
|
|
14
20
|
var groupMap = new Map();
|
|
15
21
|
var result = [];
|
|
16
|
-
|
|
17
|
-
// 第一次遍历:创建分组结构
|
|
22
|
+
var ungrouped = [];
|
|
18
23
|
columns.forEach(function (col) {
|
|
19
|
-
|
|
24
|
+
var headerName = col.headerName;
|
|
25
|
+
if (col.children) {
|
|
26
|
+
if (!groupMap.has(headerName)) {
|
|
27
|
+
groupMap.set(headerName, {
|
|
28
|
+
headerName: headerName,
|
|
29
|
+
field: "".concat(headerName, "header"),
|
|
30
|
+
children: []
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// 合并并去重 children
|
|
34
|
+
var group = groupMap.get(headerName);
|
|
35
|
+
col.children.forEach(function (child) {
|
|
36
|
+
if (!group.children.some(function (c) {
|
|
37
|
+
return c.field === child.field;
|
|
38
|
+
})) {
|
|
39
|
+
group.children.push(child);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
} else if (col.groupName) {
|
|
20
43
|
if (!groupMap.has(col.groupName)) {
|
|
21
44
|
groupMap.set(col.groupName, {
|
|
22
45
|
headerName: col.groupName,
|
|
@@ -24,27 +47,21 @@ var processColumnGroups = function processColumnGroups(columns) {
|
|
|
24
47
|
children: []
|
|
25
48
|
});
|
|
26
49
|
}
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
// 第二次遍历:按原始顺序处理列
|
|
31
|
-
columns.forEach(function (col) {
|
|
32
|
-
if (col.groupName) {
|
|
33
50
|
var groupCol = _objectSpread({}, col);
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
51
|
+
delete groupCol.groupName;
|
|
52
|
+
var _group = groupMap.get(col.groupName);
|
|
53
|
+
if (!_group.children.some(function (c) {
|
|
54
|
+
return c.field === groupCol.field;
|
|
55
|
+
})) {
|
|
56
|
+
_group.children.push(groupCol);
|
|
39
57
|
}
|
|
40
|
-
|
|
41
|
-
// 将列添加到对应的组中
|
|
42
|
-
groupMap.get(col.groupName).children.push(groupCol);
|
|
43
58
|
} else {
|
|
44
|
-
|
|
45
|
-
result.push(col);
|
|
59
|
+
ungrouped.push(col);
|
|
46
60
|
}
|
|
47
61
|
});
|
|
62
|
+
|
|
63
|
+
// 直接从 groupMap 和 ungrouped 生成结果
|
|
64
|
+
result.push.apply(result, _toConsumableArray(Array.from(groupMap.values())).concat(ungrouped));
|
|
48
65
|
return result;
|
|
49
66
|
};
|
|
50
67
|
var _default = exports.default = processColumnGroups;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var flattenColumnState = function flattenColumnState(columnState) {
|
|
8
|
+
var result = [];
|
|
9
|
+
var processColumn = function processColumn(column) {
|
|
10
|
+
// 如果有children属性且不为空,递归处理
|
|
11
|
+
if (column.children && column.children.length > 0) {
|
|
12
|
+
// 处理子列
|
|
13
|
+
column.children.forEach(function (child) {
|
|
14
|
+
processColumn(child);
|
|
15
|
+
});
|
|
16
|
+
} else {
|
|
17
|
+
// 没有children的列直接添加到结果中
|
|
18
|
+
result.push(column);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
// 处理每一列
|
|
23
|
+
columnState.forEach(function (column) {
|
|
24
|
+
processColumn(column);
|
|
25
|
+
});
|
|
26
|
+
return result;
|
|
27
|
+
};
|
|
28
|
+
var _default = exports.default = flattenColumnState;
|
|
@@ -22,6 +22,7 @@ var _setting = _interopRequireDefault(require("./setting"));
|
|
|
22
22
|
var _ = require(".");
|
|
23
23
|
var _customGroupCellRenderer = _interopRequireDefault(require("./_utils/customGroupCellRenderer"));
|
|
24
24
|
var _processColumnGroups = _interopRequireDefault(require("./_utils/processColumnGroups"));
|
|
25
|
+
var _processFormColumnState = _interopRequireDefault(require("./_utils/processFormColumnState"));
|
|
25
26
|
var _excluded = ["style", "loading", "params", "request", "dataSource", "treeKeyName", "treeParentName", "rowData", "gridRef", "headerTitle", "toolBarRender", "search", "hideTool", "onGridReady", "gridKey", "children", "defaultSearchExpand", "overlayNoRowsTemplateText", "queryDefaultRows"];
|
|
26
27
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
27
28
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -247,7 +248,6 @@ function AgGridPlus(props) {
|
|
|
247
248
|
}
|
|
248
249
|
});
|
|
249
250
|
}
|
|
250
|
-
console.log('record1 columnState 3', cellMap);
|
|
251
251
|
return cellMap;
|
|
252
252
|
};
|
|
253
253
|
var sortChanged = function sortChanged(columnApi) {
|
|
@@ -382,7 +382,6 @@ function AgGridPlus(props) {
|
|
|
382
382
|
return _objectSpread({}, child.props);
|
|
383
383
|
});
|
|
384
384
|
var columnDefs = !columnProps ? props.columnDefs ? props.columnDefs : [] : columnProps;
|
|
385
|
-
console.log('record1 columnDefs 2', columnDefs);
|
|
386
385
|
columnDefs = columnDefs.map(function (col) {
|
|
387
386
|
var dataType = getDataType(data, col.field);
|
|
388
387
|
if (col.type || typeof col.cellRenderer == "string") {
|
|
@@ -475,7 +474,6 @@ function AgGridPlus(props) {
|
|
|
475
474
|
return !x.hideInTable;
|
|
476
475
|
});
|
|
477
476
|
var processedColumns = (0, _processColumnGroups.default)(columnDefs);
|
|
478
|
-
console.log('record1 columnDefs 1', processedColumns);
|
|
479
477
|
return processedColumns;
|
|
480
478
|
}, [children === null || children === void 0 ? void 0 : children.length, props.columnDefs, extensibleColumns, columnCellClass]);
|
|
481
479
|
var allColDefs = (0, _react.useMemo)(function () {
|
|
@@ -505,7 +503,7 @@ function AgGridPlus(props) {
|
|
|
505
503
|
height: "100%"
|
|
506
504
|
}
|
|
507
505
|
}, search == false ? null : /*#__PURE__*/_react.default.createElement(_queryForm.default, {
|
|
508
|
-
colDefs: allColDefs,
|
|
506
|
+
colDefs: (0, _processFormColumnState.default)(allColDefs),
|
|
509
507
|
defaultRows: queryDefaultRows,
|
|
510
508
|
columnStates: columnState || [],
|
|
511
509
|
defaultExpand: defaultSearchExpand,
|
|
@@ -521,6 +519,9 @@ function AgGridPlus(props) {
|
|
|
521
519
|
onRequest && onRequest(formValues);
|
|
522
520
|
return prev;
|
|
523
521
|
});
|
|
522
|
+
},
|
|
523
|
+
onInit: function onInit(defaultValues) {
|
|
524
|
+
setQueryFilter(defaultValues);
|
|
524
525
|
}
|
|
525
526
|
}), /*#__PURE__*/_react.default.createElement(_antd.Card, {
|
|
526
527
|
bordered: false,
|
|
@@ -57,6 +57,9 @@ var FormRender = function FormRender(props) {
|
|
|
57
57
|
}
|
|
58
58
|
});
|
|
59
59
|
}, []);
|
|
60
|
+
(0, _react2.useEffect)(function () {
|
|
61
|
+
props.onInit && props.onInit(form.values);
|
|
62
|
+
}, []);
|
|
60
63
|
var SchemaField = (0, _react2.useMemo)(function () {
|
|
61
64
|
return (0, _react.createSchemaField)({
|
|
62
65
|
components: {
|
|
@@ -144,12 +147,12 @@ var FormRender = function FormRender(props) {
|
|
|
144
147
|
//表单自定义组件
|
|
145
148
|
var component = getComponent(colDef);
|
|
146
149
|
if (colDef.filter != false) {
|
|
147
|
-
var _colDef$searchCompone, _colDef$searchCompone2;
|
|
150
|
+
var _colDef$searchCompone, _colDef$searchCompone2, _colDef$searchCompone3;
|
|
148
151
|
var filedSchema = {
|
|
149
152
|
type: 'string',
|
|
150
153
|
title: headerName,
|
|
151
154
|
required: (colDef === null || colDef === void 0 || (_colDef$searchCompone = colDef.searchComponentProps) === null || _colDef$searchCompone === void 0 ? void 0 : _colDef$searchCompone.required) || false,
|
|
152
|
-
default: colDef === null || colDef === void 0 || (_colDef$searchCompone2 = colDef.searchComponentProps) === null || _colDef$searchCompone2 === void 0 ? void 0 : _colDef$searchCompone2.default,
|
|
155
|
+
default: (colDef === null || colDef === void 0 || (_colDef$searchCompone2 = colDef.searchComponentProps) === null || _colDef$searchCompone2 === void 0 ? void 0 : _colDef$searchCompone2.default) || (colDef === null || colDef === void 0 || (_colDef$searchCompone3 = colDef.searchComponentProps) === null || _colDef$searchCompone3 === void 0 ? void 0 : _colDef$searchCompone3.defaultValue),
|
|
153
156
|
enum: colDef === null || colDef === void 0 ? void 0 : colDef.enum,
|
|
154
157
|
"x-component": component,
|
|
155
158
|
"x-component-props": _objectSpread({
|
|
@@ -3,6 +3,7 @@ import React from "react";
|
|
|
3
3
|
declare const DiySetting: (props: {
|
|
4
4
|
gridKey?: string | undefined;
|
|
5
5
|
gridApi?: GridApi<any> | undefined;
|
|
6
|
+
type?: string | undefined;
|
|
6
7
|
gridApiState?: GridApi<any> | undefined;
|
|
7
8
|
onSaveColumnState: (state: any) => void;
|
|
8
9
|
}) => React.JSX.Element | null;
|
|
@@ -53,21 +53,35 @@ var DiySetting = function DiySetting(props) {
|
|
|
53
53
|
var getColumnData = function getColumnData() {
|
|
54
54
|
var columnStates = gridApi.getColumnState();
|
|
55
55
|
var columnRowData = [];
|
|
56
|
-
|
|
57
|
-
var colDef = gridApi === null || gridApi === void 0 ? void 0 : gridApi.getColumnDef(columnState.colId);
|
|
56
|
+
var columnDefs = (gridApi === null || gridApi === void 0 ? void 0 : gridApi.getColumnDefs()) || [];
|
|
58
57
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
58
|
+
// 递归处理列定义
|
|
59
|
+
var processColumns = function processColumns(columns, parentGroup) {
|
|
60
|
+
columns.forEach(function (column) {
|
|
61
|
+
if (column.children && column.children.length > 0) {
|
|
62
|
+
// 处理子列,将当前headerName作为分组名传递下去
|
|
63
|
+
processColumns(column.children, column.headerName);
|
|
64
|
+
} else {
|
|
65
|
+
// 找到对应的columnState
|
|
66
|
+
var columnState = columnStates.find(function (state) {
|
|
67
|
+
return state.colId === column.field;
|
|
68
|
+
});
|
|
69
|
+
if (columnState) {
|
|
70
|
+
columnRowData.push(_objectSpread({
|
|
71
|
+
id: (0, _uniqueId2.default)(),
|
|
72
|
+
field: column.field,
|
|
73
|
+
headerName: column.headerName,
|
|
74
|
+
width: columnState.width,
|
|
75
|
+
hide: columnState.hide,
|
|
76
|
+
cellClass: column.cellClass,
|
|
77
|
+
suppressHeaderFilterButton: !column.suppressHeaderFilterButton,
|
|
78
|
+
groupName: parentGroup
|
|
79
|
+
}, columnState));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
processColumns(columnDefs);
|
|
71
85
|
return columnRowData;
|
|
72
86
|
};
|
|
73
87
|
var portalId = "workProcedure".concat((0, _uniqueId2.default)());
|
|
@@ -120,7 +134,7 @@ var DiySetting = function DiySetting(props) {
|
|
|
120
134
|
})), /*#__PURE__*/_react2.default.createElement(SchemaField.Void, {
|
|
121
135
|
"x-component": "ArrayTable.Column",
|
|
122
136
|
"x-component-props": {
|
|
123
|
-
width:
|
|
137
|
+
width: 180,
|
|
124
138
|
title: "列名"
|
|
125
139
|
}
|
|
126
140
|
}, /*#__PURE__*/_react2.default.createElement(SchemaField.String, {
|
|
@@ -128,6 +142,16 @@ var DiySetting = function DiySetting(props) {
|
|
|
128
142
|
"x-decorator": "FormItem",
|
|
129
143
|
"x-component": "Input",
|
|
130
144
|
"x-read-pretty": true
|
|
145
|
+
})), /*#__PURE__*/_react2.default.createElement(SchemaField.Void, {
|
|
146
|
+
"x-component": "ArrayTable.Column",
|
|
147
|
+
"x-component-props": {
|
|
148
|
+
width: 120,
|
|
149
|
+
title: "分组名称"
|
|
150
|
+
}
|
|
151
|
+
}, /*#__PURE__*/_react2.default.createElement(SchemaField.String, {
|
|
152
|
+
name: "groupName",
|
|
153
|
+
"x-decorator": "FormItem",
|
|
154
|
+
"x-component": "Input"
|
|
131
155
|
})), /*#__PURE__*/_react2.default.createElement(SchemaField.Void, {
|
|
132
156
|
"x-component": "ArrayTable.Column",
|
|
133
157
|
"x-component-props": {
|
|
@@ -216,24 +240,15 @@ var DiySetting = function DiySetting(props) {
|
|
|
216
240
|
name: "hide",
|
|
217
241
|
"x-decorator": "FormItem",
|
|
218
242
|
"x-component": "Switch"
|
|
219
|
-
})), /*#__PURE__*/_react2.default.createElement(SchemaField.Void, {
|
|
220
|
-
"x-component": "ArrayTable.Column",
|
|
221
|
-
"x-component-props": {
|
|
222
|
-
width: 180,
|
|
223
|
-
title: "分组名称"
|
|
224
|
-
}
|
|
225
|
-
}, /*#__PURE__*/_react2.default.createElement(SchemaField.String, {
|
|
226
|
-
name: "groupName",
|
|
227
|
-
"x-decorator": "FormItem",
|
|
228
|
-
"x-component": "Input"
|
|
229
243
|
})))))));
|
|
230
244
|
});
|
|
231
245
|
formDialog.forConfirm(function (payload, next) {
|
|
232
246
|
var values = payload.values;
|
|
233
247
|
onSaveColumnState && onSaveColumnState(values.items);
|
|
234
248
|
var processedColumns = (0, _processColumnGroups.default)(values.items);
|
|
235
|
-
|
|
236
|
-
|
|
249
|
+
if (props.type !== 'formArrayTable') {
|
|
250
|
+
gridApi.setGridOption("columnDefs", processedColumns);
|
|
251
|
+
}
|
|
237
252
|
setTimeout(function () {
|
|
238
253
|
gridApi.applyColumnState({
|
|
239
254
|
state: processedColumns,
|
|
@@ -4,6 +4,7 @@ declare const Setting: (props: {
|
|
|
4
4
|
gridKey?: string | undefined;
|
|
5
5
|
gridApi?: GridApi<any> | undefined;
|
|
6
6
|
gridApiState?: GridApi<any> | undefined;
|
|
7
|
+
type?: string | undefined;
|
|
7
8
|
onSaveColumnState: (state: any) => void;
|
|
8
9
|
}) => React.JSX.Element | null;
|
|
9
10
|
export default Setting;
|
|
@@ -32,6 +32,7 @@ var Setting = function Setting(props) {
|
|
|
32
32
|
gridApiState = props.gridApiState,
|
|
33
33
|
onSaveColumnState = props.onSaveColumnState;
|
|
34
34
|
var _useGridPlusColumnSta = (0, _.useGridPlusColumnState)(),
|
|
35
|
+
extensibleColumns = _useGridPlusColumnSta.extensibleColumns,
|
|
35
36
|
applyToGlobal = _useGridPlusColumnSta.applyToGlobal,
|
|
36
37
|
resetCurrent = _useGridPlusColumnSta.resetCurrent,
|
|
37
38
|
resetAll = _useGridPlusColumnSta.resetAll;
|
|
@@ -89,7 +90,8 @@ var Setting = function Setting(props) {
|
|
|
89
90
|
label: /*#__PURE__*/_react2.default.createElement(_diySetting.default, {
|
|
90
91
|
gridKey: gridKey,
|
|
91
92
|
gridApi: gridApi,
|
|
92
|
-
onSaveColumnState: onSaveColumnState
|
|
93
|
+
onSaveColumnState: onSaveColumnState,
|
|
94
|
+
type: props.type
|
|
93
95
|
})
|
|
94
96
|
}, {
|
|
95
97
|
key: '2',
|
|
@@ -61,13 +61,74 @@ var ArrayTable = (0, _react2.observer)(function (props) {
|
|
|
61
61
|
gridPlusColumnState = _useGridPlusColumnSta.columnState,
|
|
62
62
|
extensibleColumns = _useGridPlusColumnSta.extensibleColumns;
|
|
63
63
|
// const teststyle = '[{\"id\":\"18\",\"field\":\"xdxcp47tycp\",\"headerName\":\"A1\",\"width\":800,\"hide\":false,\"colId\":\"a1\",\"pinned\":null,\"sort\":null,\"sortIndex\":null,\"aggFunc\":null,\"rowGroup\":false,\"rowGroupIndex\":null,\"pivot\":false,\"pivotIndex\":null,\"flex\":null},{\"id\":\"19\",\"field\":\"nvhezzkyak9\",\"headerName\":\"Operations\",\"width\":60,\"hide\":false,\"colId\":\"nvhezzkyak9\",\"pinned\":null,\"sort\":null,\"sortIndex\":null,\"aggFunc\":null,\"rowGroup\":false,\"rowGroupIndex\":null,\"pivot\":false,\"pivotIndex\":null,\"flex\":null}]'
|
|
64
|
+
// const teststyle = [
|
|
65
|
+
// {
|
|
66
|
+
// "id": "5",
|
|
67
|
+
// "field": "NO_NAME_FIELD_$1",
|
|
68
|
+
// "headerName": "Index",
|
|
69
|
+
// "width": 80,
|
|
70
|
+
// "hide": false,
|
|
71
|
+
// "cellClass": "custom-cell-left",
|
|
72
|
+
// "suppressHeaderFilterButton": true,
|
|
73
|
+
// "colId": "NO_NAME_FIELD_$1",
|
|
74
|
+
// "pinned": null,
|
|
75
|
+
// "sort": null,
|
|
76
|
+
// "sortIndex": null,
|
|
77
|
+
// "aggFunc": null,
|
|
78
|
+
// "rowGroup": false,
|
|
79
|
+
// "rowGroupIndex": null,
|
|
80
|
+
// "pivot": false,
|
|
81
|
+
// "pivotIndex": null,
|
|
82
|
+
// "flex": null
|
|
83
|
+
// },
|
|
84
|
+
// {
|
|
85
|
+
// "id": "6",
|
|
86
|
+
// "field": "a1",
|
|
87
|
+
// "headerName": "A1",
|
|
88
|
+
// "width": 1200,
|
|
89
|
+
// "hide": false,
|
|
90
|
+
// "cellClass": "custom-cell-left",
|
|
91
|
+
// "suppressHeaderFilterButton": true,
|
|
92
|
+
// "colId": "a1",
|
|
93
|
+
// "pinned": null,
|
|
94
|
+
// "sort": null,
|
|
95
|
+
// "sortIndex": null,
|
|
96
|
+
// "aggFunc": null,
|
|
97
|
+
// "rowGroup": false,
|
|
98
|
+
// "rowGroupIndex": null,
|
|
99
|
+
// "pivot": false,
|
|
100
|
+
// "pivotIndex": null,
|
|
101
|
+
// "flex": null
|
|
102
|
+
// },
|
|
103
|
+
// {
|
|
104
|
+
// "id": "7",
|
|
105
|
+
// "field": "operations",
|
|
106
|
+
// "headerName": "Operations",
|
|
107
|
+
// "width": 80,
|
|
108
|
+
// "hide": false,
|
|
109
|
+
// "cellClass": "custom-cell-left",
|
|
110
|
+
// "suppressHeaderFilterButton": true,
|
|
111
|
+
// "colId": "operations",
|
|
112
|
+
// "pinned": "right",
|
|
113
|
+
// "sort": null,
|
|
114
|
+
// "sortIndex": null,
|
|
115
|
+
// "aggFunc": null,
|
|
116
|
+
// "rowGroup": false,
|
|
117
|
+
// "rowGroupIndex": null,
|
|
118
|
+
// "pivot": false,
|
|
119
|
+
// "pivotIndex": null,
|
|
120
|
+
// "flex": null
|
|
121
|
+
// }
|
|
122
|
+
// ]
|
|
64
123
|
|
|
65
124
|
(0, _react.useEffect)(function () {
|
|
66
125
|
if (props.gridKey && gridPlusColumnState && gridPlusColumnState[props.gridKey] && apiRef.current) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
126
|
+
setTimeout(function () {
|
|
127
|
+
apiRef.current.applyColumnState({
|
|
128
|
+
state: gridPlusColumnState[props.gridKey],
|
|
129
|
+
applyOrder: true
|
|
130
|
+
});
|
|
131
|
+
}, 10);
|
|
71
132
|
}
|
|
72
133
|
}, [gridPlusColumnState, apiRef.current, dataSource]);
|
|
73
134
|
|
|
@@ -138,6 +199,7 @@ var ArrayTable = (0, _react2.observer)(function (props) {
|
|
|
138
199
|
gridKey: props.gridKey,
|
|
139
200
|
gridApi: apiRef.current,
|
|
140
201
|
gridApiState: gridApiState,
|
|
202
|
+
type: 'formArrayTable',
|
|
141
203
|
onSaveColumnState: onColumnStateChanged
|
|
142
204
|
})), /*#__PURE__*/_react.default.createElement(_agGridReact.AgGridReact, {
|
|
143
205
|
onGridReady: function onGridReady(params) {
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
3
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
5
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
6
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
2
8
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
9
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
10
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -7,10 +13,27 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
7
13
|
var processColumnGroups = function processColumnGroups(columns) {
|
|
8
14
|
var groupMap = new Map();
|
|
9
15
|
var result = [];
|
|
10
|
-
|
|
11
|
-
// 第一次遍历:创建分组结构
|
|
16
|
+
var ungrouped = [];
|
|
12
17
|
columns.forEach(function (col) {
|
|
13
|
-
|
|
18
|
+
var headerName = col.headerName;
|
|
19
|
+
if (col.children) {
|
|
20
|
+
if (!groupMap.has(headerName)) {
|
|
21
|
+
groupMap.set(headerName, {
|
|
22
|
+
headerName: headerName,
|
|
23
|
+
field: "".concat(headerName, "header"),
|
|
24
|
+
children: []
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
// 合并并去重 children
|
|
28
|
+
var group = groupMap.get(headerName);
|
|
29
|
+
col.children.forEach(function (child) {
|
|
30
|
+
if (!group.children.some(function (c) {
|
|
31
|
+
return c.field === child.field;
|
|
32
|
+
})) {
|
|
33
|
+
group.children.push(child);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
} else if (col.groupName) {
|
|
14
37
|
if (!groupMap.has(col.groupName)) {
|
|
15
38
|
groupMap.set(col.groupName, {
|
|
16
39
|
headerName: col.groupName,
|
|
@@ -18,27 +41,21 @@ var processColumnGroups = function processColumnGroups(columns) {
|
|
|
18
41
|
children: []
|
|
19
42
|
});
|
|
20
43
|
}
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
// 第二次遍历:按原始顺序处理列
|
|
25
|
-
columns.forEach(function (col) {
|
|
26
|
-
if (col.groupName) {
|
|
27
44
|
var groupCol = _objectSpread({}, col);
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
45
|
+
delete groupCol.groupName;
|
|
46
|
+
var _group = groupMap.get(col.groupName);
|
|
47
|
+
if (!_group.children.some(function (c) {
|
|
48
|
+
return c.field === groupCol.field;
|
|
49
|
+
})) {
|
|
50
|
+
_group.children.push(groupCol);
|
|
33
51
|
}
|
|
34
|
-
|
|
35
|
-
// 将列添加到对应的组中
|
|
36
|
-
groupMap.get(col.groupName).children.push(groupCol);
|
|
37
52
|
} else {
|
|
38
|
-
|
|
39
|
-
result.push(col);
|
|
53
|
+
ungrouped.push(col);
|
|
40
54
|
}
|
|
41
55
|
});
|
|
56
|
+
|
|
57
|
+
// 直接从 groupMap 和 ungrouped 生成结果
|
|
58
|
+
result.push.apply(result, _toConsumableArray(Array.from(groupMap.values())).concat(ungrouped));
|
|
42
59
|
return result;
|
|
43
60
|
};
|
|
44
61
|
export default processColumnGroups;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var flattenColumnState = function flattenColumnState(columnState) {
|
|
2
|
+
var result = [];
|
|
3
|
+
var processColumn = function processColumn(column) {
|
|
4
|
+
// 如果有children属性且不为空,递归处理
|
|
5
|
+
if (column.children && column.children.length > 0) {
|
|
6
|
+
// 处理子列
|
|
7
|
+
column.children.forEach(function (child) {
|
|
8
|
+
processColumn(child);
|
|
9
|
+
});
|
|
10
|
+
} else {
|
|
11
|
+
// 没有children的列直接添加到结果中
|
|
12
|
+
result.push(column);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// 处理每一列
|
|
17
|
+
columnState.forEach(function (column) {
|
|
18
|
+
processColumn(column);
|
|
19
|
+
});
|
|
20
|
+
return result;
|
|
21
|
+
};
|
|
22
|
+
export default flattenColumnState;
|
|
@@ -31,6 +31,7 @@ import Setting from "./setting";
|
|
|
31
31
|
import { useGridPlusColumnState } from '.';
|
|
32
32
|
import CustomGroupCellRenderer from "./_utils/customGroupCellRenderer";
|
|
33
33
|
import processColumnGroups from "./_utils/processColumnGroups";
|
|
34
|
+
import flattenColumnState from "./_utils/processFormColumnState";
|
|
34
35
|
var Paragraph = Typography.Paragraph,
|
|
35
36
|
Text = Typography.Text;
|
|
36
37
|
var getSort = function getSort(columnState) {
|
|
@@ -238,7 +239,6 @@ function AgGridPlus(props) {
|
|
|
238
239
|
}
|
|
239
240
|
});
|
|
240
241
|
}
|
|
241
|
-
console.log('record1 columnState 3', cellMap);
|
|
242
242
|
return cellMap;
|
|
243
243
|
};
|
|
244
244
|
var sortChanged = function sortChanged(columnApi) {
|
|
@@ -373,7 +373,6 @@ function AgGridPlus(props) {
|
|
|
373
373
|
return _objectSpread({}, child.props);
|
|
374
374
|
});
|
|
375
375
|
var columnDefs = !columnProps ? props.columnDefs ? props.columnDefs : [] : columnProps;
|
|
376
|
-
console.log('record1 columnDefs 2', columnDefs);
|
|
377
376
|
columnDefs = columnDefs.map(function (col) {
|
|
378
377
|
var dataType = getDataType(data, col.field);
|
|
379
378
|
if (col.type || typeof col.cellRenderer == "string") {
|
|
@@ -466,7 +465,6 @@ function AgGridPlus(props) {
|
|
|
466
465
|
return !x.hideInTable;
|
|
467
466
|
});
|
|
468
467
|
var processedColumns = processColumnGroups(columnDefs);
|
|
469
|
-
console.log('record1 columnDefs 1', processedColumns);
|
|
470
468
|
return processedColumns;
|
|
471
469
|
}, [children === null || children === void 0 ? void 0 : children.length, props.columnDefs, extensibleColumns, columnCellClass]);
|
|
472
470
|
var allColDefs = useMemo(function () {
|
|
@@ -496,7 +494,7 @@ function AgGridPlus(props) {
|
|
|
496
494
|
height: "100%"
|
|
497
495
|
}
|
|
498
496
|
}, search == false ? null : /*#__PURE__*/React.createElement(FormRender, {
|
|
499
|
-
colDefs: allColDefs,
|
|
497
|
+
colDefs: flattenColumnState(allColDefs),
|
|
500
498
|
defaultRows: queryDefaultRows,
|
|
501
499
|
columnStates: columnState || [],
|
|
502
500
|
defaultExpand: defaultSearchExpand,
|
|
@@ -512,6 +510,9 @@ function AgGridPlus(props) {
|
|
|
512
510
|
onRequest && onRequest(formValues);
|
|
513
511
|
return prev;
|
|
514
512
|
});
|
|
513
|
+
},
|
|
514
|
+
onInit: function onInit(defaultValues) {
|
|
515
|
+
setQueryFilter(defaultValues);
|
|
515
516
|
}
|
|
516
517
|
}), /*#__PURE__*/React.createElement(Card, {
|
|
517
518
|
bordered: false,
|
|
@@ -49,6 +49,9 @@ var FormRender = function FormRender(props) {
|
|
|
49
49
|
}
|
|
50
50
|
});
|
|
51
51
|
}, []);
|
|
52
|
+
useEffect(function () {
|
|
53
|
+
props.onInit && props.onInit(form.values);
|
|
54
|
+
}, []);
|
|
52
55
|
var SchemaField = useMemo(function () {
|
|
53
56
|
return createSchemaField({
|
|
54
57
|
components: {
|
|
@@ -136,12 +139,12 @@ var FormRender = function FormRender(props) {
|
|
|
136
139
|
//表单自定义组件
|
|
137
140
|
var component = getComponent(colDef);
|
|
138
141
|
if (colDef.filter != false) {
|
|
139
|
-
var _colDef$searchCompone, _colDef$searchCompone2;
|
|
142
|
+
var _colDef$searchCompone, _colDef$searchCompone2, _colDef$searchCompone3;
|
|
140
143
|
var filedSchema = {
|
|
141
144
|
type: 'string',
|
|
142
145
|
title: headerName,
|
|
143
146
|
required: (colDef === null || colDef === void 0 || (_colDef$searchCompone = colDef.searchComponentProps) === null || _colDef$searchCompone === void 0 ? void 0 : _colDef$searchCompone.required) || false,
|
|
144
|
-
default: colDef === null || colDef === void 0 || (_colDef$searchCompone2 = colDef.searchComponentProps) === null || _colDef$searchCompone2 === void 0 ? void 0 : _colDef$searchCompone2.default,
|
|
147
|
+
default: (colDef === null || colDef === void 0 || (_colDef$searchCompone2 = colDef.searchComponentProps) === null || _colDef$searchCompone2 === void 0 ? void 0 : _colDef$searchCompone2.default) || (colDef === null || colDef === void 0 || (_colDef$searchCompone3 = colDef.searchComponentProps) === null || _colDef$searchCompone3 === void 0 ? void 0 : _colDef$searchCompone3.defaultValue),
|
|
145
148
|
enum: colDef === null || colDef === void 0 ? void 0 : colDef.enum,
|
|
146
149
|
"x-component": component,
|
|
147
150
|
"x-component-props": _objectSpread({
|
|
@@ -3,6 +3,7 @@ import React from "react";
|
|
|
3
3
|
declare const DiySetting: (props: {
|
|
4
4
|
gridKey?: string | undefined;
|
|
5
5
|
gridApi?: GridApi<any> | undefined;
|
|
6
|
+
type?: string | undefined;
|
|
6
7
|
gridApiState?: GridApi<any> | undefined;
|
|
7
8
|
onSaveColumnState: (state: any) => void;
|
|
8
9
|
}) => React.JSX.Element | null;
|