@nokecy/qc-ui 0.4.7 → 0.5.0

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 (92) hide show
  1. package/dist/esm/ag-grid-plus/_utils/boolSelect.js +49 -0
  2. package/dist/esm/ag-grid-plus/ag-grid-theme-builder.css +404 -0
  3. package/dist/esm/ag-grid-plus/ag-gridPlus.js +472 -0
  4. package/dist/esm/ag-grid-plus/context/gridContext.js +6 -0
  5. package/dist/esm/ag-grid-plus/gridManager/index.js +35 -0
  6. package/dist/esm/ag-grid-plus/index.js +10 -0
  7. package/dist/esm/ag-grid-plus/index.less +7 -0
  8. package/dist/esm/ag-grid-plus/interface.js +9 -0
  9. package/dist/esm/ag-grid-plus/queryForm/index.js +175 -0
  10. package/dist/esm/ag-grid-plus/queryForm/index.less +48 -0
  11. package/dist/esm/ag-grid-plus/queryForm/queryForm.js +84 -0
  12. package/dist/esm/ag-grid-plus/setting/index.js +198 -0
  13. package/dist/esm/ag-grid-plus/settingItem/index.js +15 -0
  14. package/dist/esm/ag-grid-plus/toolBar/index.js +171 -0
  15. package/dist/esm/ag-grid-plus/utils.js +137 -0
  16. package/dist/esm/array-table/arrayAddBtn.js +56 -0
  17. package/dist/esm/array-table/arrayBase.js +217 -0
  18. package/dist/esm/array-table/index.js +145 -0
  19. package/dist/esm/array-table/interface.js +1 -0
  20. package/dist/esm/array-table/preview.js +49 -0
  21. package/dist/esm/array-table/utils.js +124 -0
  22. package/dist/esm/array-table-index/index.js +10 -0
  23. package/dist/esm/dashboard/dashboard/components/index.js +2 -0
  24. package/dist/esm/dashboard/dashboard/components/modal/index.js +15 -0
  25. package/dist/esm/dashboard/dashboard/components/toolbar/index.js +22 -0
  26. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.js +1 -0
  27. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.less +49 -0
  28. package/dist/esm/dashboard/dashboard/index.js +525 -0
  29. package/dist/esm/dashboard/dashboard/index.less +173 -0
  30. package/dist/esm/dashboard/dashboard/service.js +86 -0
  31. package/dist/esm/dashboard/dashboard/utils.js +89 -0
  32. package/dist/esm/dashboard/index.js +3 -0
  33. package/dist/esm/dashboard/utils.js +125 -0
  34. package/dist/esm/dashboard/widget/index.js +47 -0
  35. package/dist/esm/dashboard/widget/index.less +7 -0
  36. package/dist/esm/dashboard/widget/selector/index.js +234 -0
  37. package/dist/esm/dashboard/widget/selector/index.less +172 -0
  38. package/dist/esm/dashboard/widget/utils.js +89 -0
  39. package/dist/esm/dialogSelect/index.js +70 -0
  40. package/dist/esm/dialogSelect/interface.js +0 -0
  41. package/dist/esm/dialogSelect/selectModal.js +138 -0
  42. package/dist/esm/editable/index.js +241 -0
  43. package/dist/esm/editable/style.js +46 -0
  44. package/dist/esm/extensible-grid/index.js +22 -0
  45. package/dist/esm/extensible-grid/interface.js +1 -0
  46. package/dist/esm/formDesigner/FormDesigner.js +222 -0
  47. package/dist/esm/formDesigner/ProCard/index.js +21 -0
  48. package/dist/esm/formDesigner/arrayTable/arrayTableSchema.js +106 -0
  49. package/dist/esm/formDesigner/arrayTable/index.js +1 -0
  50. package/dist/esm/formDesigner/arrayTable/preview.js +390 -0
  51. package/dist/esm/formDesigner/arrayTable/styles.less +3 -0
  52. package/dist/esm/formDesigner/index.js +2 -0
  53. package/dist/esm/formDesigner/index.less +3 -0
  54. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/index.js +1 -0
  55. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/preview.js +40 -0
  56. package/dist/esm/formDesigner/preWidgets/card/index.js +1 -0
  57. package/dist/esm/formDesigner/preWidgets/card/preview.js +38 -0
  58. package/dist/esm/formDesigner/preWidgets/index.js +12 -0
  59. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.js +1 -0
  60. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.js +44 -0
  61. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.js +1 -0
  62. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.js +43 -0
  63. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.js +1 -0
  64. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.js +43 -0
  65. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.js +1 -0
  66. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.js +43 -0
  67. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.js +1 -0
  68. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.js +43 -0
  69. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.js +1 -0
  70. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.js +43 -0
  71. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.js +1 -0
  72. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.js +43 -0
  73. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.js +1 -0
  74. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.js +43 -0
  75. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.js +1 -0
  76. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.js +43 -0
  77. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.js +1 -0
  78. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.js +43 -0
  79. package/dist/esm/formDesigner/preWidgets/utils.js +219 -0
  80. package/dist/esm/formDesigner/widgets/ActionsWidget.js +29 -0
  81. package/dist/esm/formDesigner/widgets/LogoWidget.js +24 -0
  82. package/dist/esm/formDesigner/widgets/PreviewWidget.js +33 -0
  83. package/dist/esm/formDesigner/widgets/SchemaEditorWidget.js +17 -0
  84. package/dist/esm/formDesigner/widgets/index.js +4 -0
  85. package/dist/esm/formPro/context/formProContext.js +5 -0
  86. package/dist/esm/formPro/formLayoutPro.js +41 -0
  87. package/dist/esm/formPro/index.js +2 -0
  88. package/dist/esm/index.js +12 -0
  89. package/dist/esm/type.d.ts +1 -0
  90. package/dist/umd/qc-ui.min.css +1 -0
  91. package/dist/umd/qc-ui.min.js +1 -0
  92. package/package.json +2 -2
@@ -0,0 +1,472 @@
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
+ import _sumBy from "lodash/sumBy";
3
+ var _excluded = ["style", "loading", "params", "request", "dataSource", "treeKeyName", "treeParentName", "rowData", "gridRef", "headerTitle", "toolBarRender", "search", "hideTool", "onGridReady", "gridKey", "children"];
4
+ 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; }
5
+ 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; }
6
+ 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
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
8
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ 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); }
12
+ 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; }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
17
+ import { AgGridReact } from 'ag-grid-react';
18
+ import { Spin, Pagination, Card } from 'antd';
19
+ import React, { useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
20
+ import "ag-grid-enterprise";
21
+ import "./index.less";
22
+ import FormRender from "./queryForm";
23
+ import ToolBar from "./toolBar";
24
+ import SettingItem from "./settingItem";
25
+ import { RedoOutlined } from '@ant-design/icons';
26
+ import { convertFilterModel, dateTimeValueFormatter, dateValueFormatter, flatten, toTree } from "./utils";
27
+ import Setting from "./setting";
28
+ import { useGridPlusColumnState } from '.';
29
+ import { jsx as _jsx } from "react/jsx-runtime";
30
+ import { jsxs as _jsxs } from "react/jsx-runtime";
31
+ var getSort = function getSort(columnState) {
32
+ return columnState ? "".concat(columnState.colId, " ").concat(columnState.sort) : "";
33
+ };
34
+ function AgGridPlus(props) {
35
+ var style = props.style,
36
+ loadingProps = props.loading,
37
+ gridParams = props.params,
38
+ request = props.request,
39
+ dataSource = props.dataSource,
40
+ treeKeyName = props.treeKeyName,
41
+ treeParentName = props.treeParentName,
42
+ propRowData = props.rowData,
43
+ propsGridRef = props.gridRef,
44
+ headerTitle = props.headerTitle,
45
+ toolBarRender = props.toolBarRender,
46
+ search = props.search,
47
+ hideTool = props.hideTool,
48
+ onReady = props.onGridReady,
49
+ gridKey = props.gridKey,
50
+ children = props.children,
51
+ rest = _objectWithoutProperties(props, _excluded);
52
+ var _useGridPlusColumnSta = useGridPlusColumnState(),
53
+ onSaveColumnState = _useGridPlusColumnSta.onSaveColumnState,
54
+ gridPlusColumnState = _useGridPlusColumnSta.columnState,
55
+ extensibleColumns = _useGridPlusColumnSta.extensibleColumns;
56
+ var gridRef = useRef();
57
+ var apiRef = useRef();
58
+ var _useState = useState(false),
59
+ _useState2 = _slicedToArray(_useState, 2),
60
+ ready = _useState2[0],
61
+ setReady = _useState2[1];
62
+ var _useState3 = useState(loadingProps ? loadingProps : false),
63
+ _useState4 = _slicedToArray(_useState3, 2),
64
+ loading = _useState4[0],
65
+ setLoading = _useState4[1];
66
+ var _useState5 = useState(),
67
+ _useState6 = _slicedToArray(_useState5, 2),
68
+ columnState = _useState6[0],
69
+ setColumnState = _useState6[1];
70
+ var _useState7 = useState([]),
71
+ _useState8 = _slicedToArray(_useState7, 2),
72
+ rowData = _useState8[0],
73
+ setRowData = _useState8[1];
74
+ var _useState9 = useState({}),
75
+ _useState10 = _slicedToArray(_useState9, 2),
76
+ selectRow = _useState10[0],
77
+ setSelectRow = _useState10[1];
78
+ var _useState11 = useState({}),
79
+ _useState12 = _slicedToArray(_useState11, 2),
80
+ queryFilter = _useState12[0],
81
+ setQueryFilter = _useState12[1];
82
+ var _useState13 = useState(),
83
+ _useState14 = _slicedToArray(_useState13, 2),
84
+ sortColumn = _useState14[0],
85
+ setSortColumn = _useState14[1];
86
+ var _useState15 = useState({
87
+ pageSize: 200,
88
+ current: 1,
89
+ total: dataSource ? dataSource.length : 0
90
+ }),
91
+ _useState16 = _slicedToArray(_useState15, 2),
92
+ pagination = _useState16[0],
93
+ setPagination = _useState16[1];
94
+ var _useState17 = useState([]),
95
+ _useState18 = _slicedToArray(_useState17, 2),
96
+ calculateArr = _useState18[0],
97
+ setCalculateArr = _useState18[1];
98
+ useImperativeHandle(propsGridRef, function () {
99
+ return gridRef.current;
100
+ });
101
+
102
+ //默认列属性
103
+ var defaultColDef = useMemo(function () {
104
+ return {
105
+ resizable: true,
106
+ sortable: true
107
+ // headerComponentParams: {
108
+ // template:
109
+ // '<div class="ag-cell-label-container" role="presentation">' +
110
+ // // ' <span ref="eMenu" class="ag-header-icon ag-header-cell-menu-button" aria-hidden="true"></span>' +
111
+ // ' <div ref="eLabel" class="ag-header-cell-label" role="presentation">' +
112
+ // ' <span ref="eText" class="ag-header-cell-text"></span>' +
113
+ // // ' <span ref="eFilter" class="ag-header-icon ag-filter-icon"></span>' +
114
+ // // ' <span ref="eSortOrder" class="ag-header-icon ag-sort-order"></span>' +
115
+ // ' <span ref="eSortAsc" class="ag-header-icon ag-sort-ascending-icon"></span>' +
116
+ // ' <span ref="eSortDesc" class="ag-header-icon ag-sort-descending-icon"></span>' +
117
+ // ' <span ref="eSortNone" class="ag-header-icon ag-sort-none-icon"></span>' +
118
+ // ' </div>' +
119
+ // '</div>'
120
+ // }
121
+ };
122
+ }, []);
123
+ var columnTypes = useMemo(function () {
124
+ return {
125
+ // bool: {
126
+ // filter: 'boolFilter',
127
+ // cellRenderer: (params: ICellRendererParams) => {
128
+ // switch (params.value) {
129
+ // case true:
130
+ // case "0":
131
+ // return <Tag color={"success"}>是</Tag>;
132
+ // case false:
133
+ // case "1":
134
+ // return <Tag color={"error"}>否</Tag>;
135
+ // }
136
+ // }
137
+ // },
138
+ numberColumn: {
139
+ width: 130,
140
+ filter: 'agNumberColumnFilter'
141
+ },
142
+ dateColumn: {
143
+ filter: 'agDateColumnFilter',
144
+ valueFormatter: dateValueFormatter
145
+ },
146
+ dateTimeColumn: {
147
+ filter: 'agDateColumnFilter',
148
+ valueFormatter: dateTimeValueFormatter
149
+ }
150
+ };
151
+ }, []);
152
+
153
+ //请求数据
154
+ useEffect(function () {
155
+ if (ready && request) {
156
+ onRequest(queryFilter);
157
+ }
158
+ }, [ready, JSON.stringify(gridParams), JSON.stringify(sortColumn), pagination.pageSize, pagination.current]);
159
+
160
+ // 加载列方案
161
+ useEffect(function () {
162
+ if (gridPlusColumnState && gridKey && gridPlusColumnState[gridKey] && apiRef.current) {
163
+ apiRef.current.applyColumnState({
164
+ state: gridPlusColumnState[gridKey],
165
+ applyOrder: true
166
+ });
167
+ }
168
+ }, [gridPlusColumnState, apiRef.current]);
169
+ useEffect(function () {
170
+ setRowData(dataSource || propRowData || []);
171
+ }, [dataSource, propRowData]);
172
+
173
+ //外部loading
174
+ useEffect(function () {
175
+ loadingProps !== undefined && setLoading(loadingProps);
176
+ }, [loadingProps]);
177
+ var onGridReady = useCallback(function (params) {
178
+ var _apiRef$current;
179
+ apiRef.current = params.api;
180
+ onReady && onReady(params);
181
+ ///@ts-ignore
182
+ dataSource && setRowData(dataSource);
183
+ setColumnState((_apiRef$current = apiRef.current) === null || _apiRef$current === void 0 ? void 0 : _apiRef$current.getColumnState());
184
+ sortChanged(params.api);
185
+ setReady(true);
186
+ }, [dataSource]);
187
+ var onRequest = function onRequest(queryFilter) {
188
+ setLoading(true);
189
+ var filter = convertFilterModel(queryFilter);
190
+ var params = _objectSpread(_objectSpread({
191
+ filter: filter
192
+ }, gridParams), {}, {
193
+ current: pagination.current,
194
+ skipCount: pagination.current == 1 ? 0 : (pagination.current - 1) * pagination.pageSize,
195
+ maxResultCount: pagination.pageSize,
196
+ sorter: getSort(sortColumn)
197
+ });
198
+ request && request(params, undefined, queryFilter).then(function (response) {
199
+ var rowData = response.data;
200
+ var rowCount = response.total;
201
+ setRowData(rowData);
202
+ setPagination(_objectSpread(_objectSpread({}, pagination), {}, {
203
+ total: rowCount
204
+ }));
205
+ setLoading(false);
206
+ }).catch(function () {
207
+ setLoading(false);
208
+ });
209
+ };
210
+ var actionDom = toolBarRender && toolBarRender(apiRef.current, convertFilterModel(queryFilter), queryFilter);
211
+ var sortChanged = function sortChanged(columnApi) {
212
+ var sortedColumn = columnApi.getColumnState().find(function (col) {
213
+ return Boolean(col.sort);
214
+ });
215
+ setSortColumn(sortedColumn);
216
+ };
217
+ var onRefresh = function onRefresh() {
218
+ request && onRequest(queryFilter);
219
+ };
220
+ var onRowChanged = useCallback(function (e) {
221
+ props.onSelectionChanged && props.onSelectionChanged(e);
222
+ }, []);
223
+ var onRowSelected = useCallback(function (e) {
224
+ setSelectRow(e.data);
225
+ props.onRowSelected && props.onRowSelected(e);
226
+ }, []);
227
+ var onColumnStateChanged = function onColumnStateChanged(columnState) {
228
+ if (gridKey) {
229
+ onSaveColumnState && onSaveColumnState(gridKey, columnState);
230
+ }
231
+ };
232
+ useEffect(function () {
233
+ gridRef.current = {
234
+ onRefresh: onRefresh
235
+ };
236
+ }, [queryFilter, JSON.stringify(gridParams), JSON.stringify(sortColumn)]);
237
+ var isValidNumber = function isValidNumber(value) {
238
+ return typeof value === 'number' && !isNaN(value);
239
+ };
240
+ var sumFun = function sumFun(field) {
241
+ return _sumBy(rowData, function (cur) {
242
+ if (isValidNumber(cur[field])) {
243
+ return cur[field];
244
+ }
245
+ return 0;
246
+ });
247
+ };
248
+ var avgFun = function avgFun(field) {
249
+ var sum = _sumBy(rowData, function (cur) {
250
+ if (isValidNumber(cur[field]) && cur[field] !== undefined && cur[field] !== null) {
251
+ return cur[field];
252
+ }
253
+ return 0;
254
+ });
255
+ var count = rowData.filter(function (cur) {
256
+ return cur[field] !== undefined && cur[field] !== null;
257
+ });
258
+ return count ? sum / count.length : 0;
259
+ };
260
+ var standardDeviationFun = function standardDeviationFun(field) {
261
+ var validValues = rowData.filter(function (cur) {
262
+ return isValidNumber(cur[field]);
263
+ });
264
+ var count = validValues.length;
265
+ if (count === 0) return 0;
266
+ var mean = sumFun(field) / count;
267
+ var variance = _sumBy(rowData, function (cur) {
268
+ if (cur[field] !== undefined && cur[field] !== null) {
269
+ var diff = cur[field] - mean;
270
+ return diff * diff;
271
+ }
272
+ return 0;
273
+ }) / count;
274
+ return Math.sqrt(variance);
275
+ };
276
+
277
+ // sum 求和 avg 平均值 standardDeviation 标准差
278
+ var calculatefun = function calculatefun(calcColFields) {
279
+ var calculateArrCopy = [];
280
+ calcColFields.map(function (i) {
281
+ switch (i.calculateType) {
282
+ case "sum":
283
+ calculateArrCopy.push(_defineProperty({}, i.field, sumFun(i.field)));
284
+ break;
285
+ case "avg":
286
+ var a = avgFun(i.field);
287
+ calculateArrCopy.push(_defineProperty({}, i.field, a));
288
+ break;
289
+ case "standardDeviation":
290
+ calculateArrCopy.push(_defineProperty({}, i.field, standardDeviationFun(i.field)));
291
+ break;
292
+ default:
293
+ break;
294
+ }
295
+ });
296
+ return calculateArrCopy;
297
+ };
298
+ var getTableColumns = function getTableColumns() {
299
+ var columnProps = React.Children.map(children, function (child, index) {
300
+ return child.props;
301
+ });
302
+ var columnDefs = !columnProps ? props.columnDefs ? props.columnDefs : [] : columnProps;
303
+ extensibleColumns && gridKey && extensibleColumns[gridKey] && extensibleColumns[gridKey].map(function (column) {
304
+ columnDefs.push({
305
+ field: column.name,
306
+ headerName: column.displayName,
307
+ type: column.propertyType,
308
+ width: column.width
309
+ });
310
+ });
311
+ return columnDefs;
312
+ };
313
+ var colDefs = useMemo(function () {
314
+ var columnDefs = getTableColumns();
315
+ columnDefs = columnDefs.filter(function (x) {
316
+ return !x.hideInTable;
317
+ });
318
+ return columnDefs;
319
+ }, [props.columnDefs, extensibleColumns]);
320
+ var allColDefs = useMemo(function () {
321
+ return getTableColumns();
322
+ }, [props.columnDefs, extensibleColumns]);
323
+ useEffect(function () {
324
+ if (!allColDefs || rowData.length === 0) return;
325
+ var calcColFields = allColDefs.filter(function (col) {
326
+ return col.calculateType;
327
+ }).map(function (col) {
328
+ return {
329
+ field: col.field,
330
+ calculateType: col.calculateType
331
+ };
332
+ });
333
+ if (calcColFields.length > 0) {
334
+ var calculatedValues = calculatefun(calcColFields);
335
+ setCalculateArr(calculatedValues);
336
+ }
337
+ }, [allColDefs, rowData]);
338
+ var rowDataMemo = useMemo(function () {
339
+ return props.treeData ? flatten(toTree(rowData, treeKeyName !== null && treeKeyName !== void 0 ? treeKeyName : "id", treeParentName !== null && treeParentName !== void 0 ? treeParentName : "parentId"), treeKeyName !== null && treeKeyName !== void 0 ? treeKeyName : "id") : rowData;
340
+ }, [rowData, props.treeData]);
341
+ return /*#__PURE__*/_jsx(Spin, {
342
+ spinning: loading,
343
+ wrapperClassName: "grid-spin",
344
+ children: /*#__PURE__*/_jsxs("div", {
345
+ className: "grid-container",
346
+ style: {
347
+ display: "flex",
348
+ flexDirection: "column",
349
+ flex: 1,
350
+ height: "100%"
351
+ },
352
+ children: [search == false ? null : /*#__PURE__*/_jsx(FormRender, {
353
+ colDefs: allColDefs,
354
+ columnStates: columnState || [],
355
+ gridApi: apiRef.current,
356
+ onQuery: function onQuery(formValues) {
357
+ setQueryFilter(_objectSpread({}, formValues));
358
+ onRequest && onRequest(formValues);
359
+ }
360
+ }), /*#__PURE__*/_jsxs(Card, {
361
+ bordered: false,
362
+ headStyle: {
363
+ border: 0
364
+ },
365
+ bodyStyle: {
366
+ margin: 0,
367
+ padding: 12,
368
+ paddingTop: 0,
369
+ height: "100%",
370
+ display: "flex",
371
+ flexDirection: "column"
372
+ },
373
+ style: {
374
+ height: "100%"
375
+ },
376
+ children: [/*#__PURE__*/_jsxs("div", {
377
+ style: _objectSpread({
378
+ display: "flex",
379
+ flexDirection: "column",
380
+ height: "100%"
381
+ }, style),
382
+ children: [hideTool ? null : /*#__PURE__*/_jsx(ToolBar, {
383
+ title: headerTitle,
384
+ actions: actionDom,
385
+ settings: [/*#__PURE__*/_jsx(SettingItem, {
386
+ onClick: onRefresh,
387
+ icon: /*#__PURE__*/_jsx(RedoOutlined, {})
388
+ }), /*#__PURE__*/_jsx(Setting, {
389
+ gridKey: gridKey,
390
+ gridApi: apiRef.current,
391
+ onSaveColumnState: onColumnStateChanged
392
+ })]
393
+ }), /*#__PURE__*/_jsx(AgGridReact, _objectSpread(_objectSpread({
394
+ className: "ag-theme-custom"
395
+ }, rest), {}, {
396
+ gridOptions: {
397
+ enableCellTextSelection: true,
398
+ ensureDomOrder: true
399
+ },
400
+ enableRangeSelection: true,
401
+ suppressCopyRowsToClipboard: true
402
+ //指定客户端模式
403
+ ,
404
+ rowModelType: "clientSide",
405
+ maintainColumnOrder: true,
406
+ rowData: rowDataMemo,
407
+ onGridReady: onGridReady,
408
+ defaultColDef: defaultColDef,
409
+ onSortChanged: function onSortChanged(event) {
410
+ sortChanged(event.api);
411
+ props.onSortChanged && props.onSortChanged(event);
412
+ },
413
+ onSelectionChanged: onRowChanged,
414
+ onRowSelected: onRowSelected,
415
+ onDragStopped: function onDragStopped(e) {
416
+ if (apiRef.current) {
417
+ var _apiRef$current2;
418
+ var _columnState = (_apiRef$current2 = apiRef.current) === null || _apiRef$current2 === void 0 ? void 0 : _apiRef$current2.getColumnState();
419
+ setColumnState(_columnState);
420
+ onColumnStateChanged && onColumnStateChanged(_columnState);
421
+ }
422
+ }
423
+ // onColumnMoved={() => {
424
+ // if (apiRef.current) {
425
+ // setColumnState(apiRef.current?.getColumnState());
426
+ // }
427
+ // }}
428
+ ,
429
+ pinnedBottomRowData: calculateArr,
430
+ columnTypes: columnTypes,
431
+ animateRows: true
432
+ //停用默认分页组件
433
+ ,
434
+ suppressPaginationPanel: true,
435
+ columnDefs: colDefs
436
+ }))]
437
+ }), /*#__PURE__*/_jsx("div", {
438
+ style: {
439
+ marginTop: 12,
440
+ display: "flex",
441
+ justifyContent: "flex-end"
442
+ },
443
+ children: /*#__PURE__*/_jsx(Pagination, {
444
+ pageSize: pagination.pageSize,
445
+ current: pagination.current,
446
+ total: pagination.total,
447
+ onChange: function onChange(page, pageSize) {
448
+ setPagination(_objectSpread(_objectSpread({}, pagination), {}, {
449
+ pageSize: pageSize,
450
+ current: page
451
+ }));
452
+ },
453
+ onShowSizeChange: function onShowSizeChange(current, size) {
454
+ setPagination(_objectSpread(_objectSpread({}, pagination), {}, {
455
+ pageSize: size,
456
+ current: current
457
+ }));
458
+ },
459
+ size: "small",
460
+ showTotal: function showTotal(total, range) {
461
+ return "\u7B2C ".concat(range[0], "-").concat(range[1], " \u6761/\u603B\u5171 ").concat(total, " \u6761");
462
+ },
463
+ pageSizeOptions: [10, 100, 200, 500, 1000, 10000],
464
+ hideOnSinglePage: false,
465
+ showQuickJumper: false
466
+ })
467
+ })]
468
+ })]
469
+ })
470
+ });
471
+ }
472
+ export default AgGridPlus;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export var GridPlusContext = /*#__PURE__*/React.createContext({
3
+ extensibleColumns: [],
4
+ columnState: undefined,
5
+ onSaveColumnState: function onSaveColumnState(gridKey, columnState) {}
6
+ });
@@ -0,0 +1,35 @@
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 _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ 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; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ var GridManage = /*#__PURE__*/function () {
9
+ function GridManage() {
10
+ _classCallCheck(this, GridManage);
11
+ _defineProperty(this, "agGridApi", void 0);
12
+ _defineProperty(this, "rowkey", void 0);
13
+ _defineProperty(this, "columnsDefs", void 0);
14
+ }
15
+ _createClass(GridManage, [{
16
+ key: "dataSourceChanged",
17
+ value: function dataSourceChanged() {
18
+ var dataSource = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
19
+ } // if (!Array.isArray(dataSource) || !this.agGridApi) return;
20
+ // const gridDataSource: any[] = [];
21
+ // this.agGridApi.forEachNode(node => {
22
+ // if (node.data) gridDataSource.push(node.data);
23
+ // });
24
+
25
+ // if (isEqual(dataSource, gridDataSource) || isEqual(dataSource, this.agGridConfig.dataSource))
26
+ // return this.agGridApi.setRowData(dataSource);
27
+ // this.reset({
28
+ // dataSource: dataSource,
29
+ // });
30
+ // this.agGridApi.setRowData([]);
31
+ // this.agGridApi.setRowData(dataSource);
32
+ }]);
33
+ return GridManage;
34
+ }();
35
+ export { GridManage as default };
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import AgGridPlus from "./ag-gridPlus";
3
+ import { AgGridColumn } from "./interface";
4
+ import { GridPlusContext } from "./context/gridContext";
5
+ import "./ag-grid-theme-builder.css";
6
+ export var useGridPlusColumnState = function useGridPlusColumnState() {
7
+ return React.useContext(GridPlusContext);
8
+ };
9
+ export { AgGridPlus, AgGridColumn, GridPlusContext };
10
+ export { dateValueFormatter, dateTimeValueFormatter, convertFilterModel, convertSortModel, flattenTreeDeep, toTree, flatten } from "./utils";
@@ -0,0 +1,7 @@
1
+ .grid-spin {
2
+ height: 100%;
3
+
4
+ .ant-spin-container {
5
+ height: 100%;
6
+ }
7
+ }
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+
3
+ //column的行内传参
4
+
5
+ function AgGridColumn(props) {
6
+ ///@ts-ignore
7
+ return /*#__PURE__*/React.createElement(AgGridColumnClone, props);
8
+ }
9
+ export { AgGridColumn };