@ccs-ui/rc-pro 2.3.6-alpha-8 → 2.3.6-alpha-10

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/es/ccs.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ButtonProps, PaginationProps } from 'antd';
2
2
  import { Rule } from 'antd/es/form';
3
+ import { NamePath } from 'antd/es/form/interface';
3
4
  import { CSSProperties, MutableRefObject, ReactElement, ReactNode } from 'react';
4
5
  import { TableColumn } from './pro-table/table';
5
6
  type MenuType = {
@@ -93,11 +94,11 @@ type ShowDependType = {
93
94
  name: string;
94
95
  value: any;
95
96
  };
96
- export type TableFormItem = {
97
+ type FormItemType = {
97
98
  /** label 标题 */
98
99
  label?: string;
99
100
  /** form name */
100
- name: string;
101
+ name?: string;
101
102
  /** form item element */
102
103
  value: ReactElement;
103
104
  /** 数据依赖、依赖项对应的name数组 */
@@ -108,7 +109,14 @@ export type TableFormItem = {
108
109
  rules?: Rule[];
109
110
  /** 在发起请求时调用方法,格式化值 */
110
111
  onFormat?: (e: any) => any;
112
+ /** 组表单项名称 */
113
+ groupItemNames?: NamePath[];
111
114
  };
115
+ export type TableFormItem = ({
116
+ name: string;
117
+ } & Partial<FormItemType>) | ({
118
+ groupItemNames: NamePath[];
119
+ } & Partial<FormItemType>);
112
120
  type TableFormItems = TableFormItem[];
113
121
  type TableInstanceRef<T = any> = MutableRefObject<TableInstance<T> | undefined> | React.RefObject<TableInstance<T>>;
114
122
  type TableColumns<RecordType = any> = TableColumn<RecordType>[];
@@ -0,0 +1,11 @@
1
+ import { FormItemProps } from 'antd';
2
+ import { NamePath } from 'antd/es/form/interface';
3
+ export type GroupFormItemProps = FormItemProps & {
4
+ /** 组表单项名称 */
5
+ groupItemNames: NamePath[];
6
+ };
7
+ declare function GroupFormItem({ groupItemNames, name, ...formItemProps }: GroupFormItemProps): import("react/jsx-runtime").JSX.Element;
8
+ declare namespace GroupFormItem {
9
+ var displayName: string;
10
+ }
11
+ export default GroupFormItem;
@@ -0,0 +1,124 @@
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
+ var _excluded = ["groupItemNames", "name"];
3
+ 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; }
4
+ 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; }
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
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
+ 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."); }
10
+ 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; } }
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+ 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; }
13
+ 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; }
14
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
+ 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."); }
16
+ 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); }
17
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
19
+ 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; }
20
+ import { useUpdateEffect } from 'ahooks';
21
+ import { Form } from 'antd';
22
+ import { useEffect, useState } from 'react';
23
+ import { getDataFromFields } from "../select";
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import { Fragment as _Fragment } from "react/jsx-runtime";
26
+ import { jsxs as _jsxs } from "react/jsx-runtime";
27
+ var FormUpdateItem = function FormUpdateItem(_ref) {
28
+ var name = _ref.name,
29
+ getFieldsValue = _ref.getFieldsValue,
30
+ setFieldValue = _ref.setFieldValue,
31
+ getFieldValue = _ref.getFieldValue,
32
+ groupItemNames = _ref.groupItemNames;
33
+ var nameValue = getFieldValue(name);
34
+ useEffect(function () {
35
+ // 初始值
36
+ var initialValues = getFieldsValue(true);
37
+ var initNameValue = [];
38
+
39
+ // 根据子项初始值设置name的默认值
40
+ groupItemNames.forEach(function (item) {
41
+ initNameValue.push(getDataFromFields(initialValues, Array.isArray(item) ? item : [item]));
42
+ });
43
+
44
+ // 如果子项有初始值,则设置name的默认值
45
+ if (initNameValue.filter(function (n) {
46
+ return n !== undefined;
47
+ }).length > 0) {
48
+ setFieldValue(name, initNameValue);
49
+ return;
50
+ }
51
+
52
+ // 如果子项没有初始值,主项有初始值
53
+ var groupNameValue = getDataFromFields(initialValues, Array.isArray(name) ? name : [name]);
54
+ if (Array.isArray(groupNameValue)) {
55
+ groupItemNames.forEach(function (item, index) {
56
+ setFieldValue(item, groupNameValue[index]);
57
+ });
58
+ }
59
+ }, []);
60
+
61
+ // 依赖主字段变更,更新子项属性值
62
+ useUpdateEffect(function () {
63
+ setTimeout(function () {
64
+ groupItemNames.forEach(function (item, index) {
65
+ setFieldValue(item, Array.isArray(nameValue) ? nameValue[index] : undefined);
66
+ });
67
+ }, 1);
68
+ }, [nameValue]);
69
+ return null;
70
+ };
71
+ function onGetNameValue() {
72
+ var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
73
+ var name = arguments.length > 1 ? arguments[1] : undefined;
74
+ if (!obj) return undefined;
75
+ if (Array.isArray(name)) {
76
+ var names = _toConsumableArray(name);
77
+ var newName = names.shift();
78
+ if (names.length === 0) return obj[newName];
79
+ return onGetNameValue(obj[newName], names);
80
+ }
81
+ return obj[name];
82
+ }
83
+ function GroupFormItem(_ref2) {
84
+ var groupItemNames = _ref2.groupItemNames,
85
+ name = _ref2.name,
86
+ formItemProps = _objectWithoutProperties(_ref2, _excluded);
87
+ var _useState = useState(name || "_".concat(JSON.stringify(groupItemNames).replace(/[^a-zA-Z]/g, ''), "_")),
88
+ _useState2 = _slicedToArray(_useState, 1),
89
+ itemName = _useState2[0];
90
+ return /*#__PURE__*/_jsxs(_Fragment, {
91
+ children: [/*#__PURE__*/_jsx(Form.Item, _objectSpread({
92
+ name: itemName
93
+ }, formItemProps)), groupItemNames && groupItemNames.length > 0 && /*#__PURE__*/_jsxs(_Fragment, {
94
+ children: [/*#__PURE__*/_jsx(Form.Item, {
95
+ noStyle: true,
96
+ shouldUpdate: function shouldUpdate(l, r) {
97
+ return onGetNameValue(l, itemName) !== onGetNameValue(r, itemName);
98
+ },
99
+ children: function children(_ref3) {
100
+ var getFieldsValue = _ref3.getFieldsValue,
101
+ setFieldValue = _ref3.setFieldValue,
102
+ getFieldValue = _ref3.getFieldValue;
103
+ return /*#__PURE__*/_jsx(FormUpdateItem, {
104
+ getFieldsValue: getFieldsValue,
105
+ setFieldValue: setFieldValue,
106
+ getFieldValue: getFieldValue,
107
+ groupItemNames: groupItemNames,
108
+ name: itemName
109
+ });
110
+ }
111
+ }), groupItemNames.map(function (item, index) {
112
+ return /*#__PURE__*/_jsx(Form.Item, {
113
+ noStyle: true,
114
+ name: item,
115
+ hidden: true
116
+ }, index);
117
+ })]
118
+ })]
119
+ });
120
+ }
121
+ if (process.env.NODE_ENV !== 'production') {
122
+ GroupFormItem.displayName = 'CcsGroupFormItem';
123
+ }
124
+ export default GroupFormItem;
package/es/index.d.ts CHANGED
@@ -9,6 +9,7 @@ export { default as CcsDialog } from './dialog';
9
9
  export { default as CcsEditor } from './editor';
10
10
  export { default as CcsEllipsis } from './ellipsis';
11
11
  export { default as CcsFullScreenButton } from './full-screen';
12
+ export { default as CcsGroupFormItem } from './group-form-item';
12
13
  export { default as useAppConfig } from './hooks/use-app';
13
14
  export { default as useCcsOnceEvent } from './hooks/use-once-event';
14
15
  export { default as useCcsPage } from './hooks/use-page';
package/es/index.js CHANGED
@@ -9,6 +9,7 @@ export { default as CcsDialog } from "./dialog";
9
9
  export { default as CcsEditor } from "./editor";
10
10
  export { default as CcsEllipsis } from "./ellipsis";
11
11
  export { default as CcsFullScreenButton } from "./full-screen";
12
+ export { default as CcsGroupFormItem } from "./group-form-item";
12
13
  export { default as useAppConfig } from "./hooks/use-app";
13
14
  export { default as useCcsOnceEvent } from "./hooks/use-once-event";
14
15
  export { default as useCcsPage } from "./hooks/use-page";
@@ -3,5 +3,5 @@ import { CcsProTableProps } from './table';
3
3
  type PropsType = TableFormItem & {
4
4
  dependParam?: any;
5
5
  } & Pick<CcsProTableProps<any>, 'formItemLabelWidth'>;
6
- export default function HeadFormItem({ label, name, rules, value, dependParam, formItemLabelWidth, }: PropsType): import("react/jsx-runtime").JSX.Element;
6
+ export default function HeadFormItem({ label, name, rules, value, dependParam, groupItemNames, formItemLabelWidth, }: PropsType): import("react/jsx-runtime").JSX.Element;
7
7
  export {};
@@ -1,5 +1,12 @@
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 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
+ 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
+ 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; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ 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); }
1
7
  import { Form } from 'antd';
2
8
  import { cloneElement } from 'react';
9
+ import { CcsGroupFormItem } from '..';
3
10
  import { classPrefix } from "./table";
4
11
  import { jsx as _jsx } from "react/jsx-runtime";
5
12
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -9,19 +16,28 @@ export default function HeadFormItem(_ref) {
9
16
  rules = _ref.rules,
10
17
  value = _ref.value,
11
18
  dependParam = _ref.dependParam,
19
+ groupItemNames = _ref.groupItemNames,
12
20
  formItemLabelWidth = _ref.formItemLabelWidth;
21
+ var props = {
22
+ name: name,
23
+ rules: rules,
24
+ className: "".concat(classPrefix, "-form-label"),
25
+ label: formItemLabelWidth ? /*#__PURE__*/_jsx("div", {
26
+ style: {
27
+ width: formItemLabelWidth
28
+ },
29
+ children: label
30
+ }) : label
31
+ };
32
+ if (groupItemNames) {
33
+ return /*#__PURE__*/_jsx(CcsGroupFormItem, _objectSpread(_objectSpread({}, props), {}, {
34
+ groupItemNames: groupItemNames,
35
+ children: dependParam ? /*#__PURE__*/cloneElement(value, dependParam) : value
36
+ }));
37
+ }
13
38
  return /*#__PURE__*/_jsx(_Fragment, {
14
- children: /*#__PURE__*/_jsx(Form.Item, {
15
- name: name,
16
- rules: rules,
17
- className: "".concat(classPrefix, "-form-label"),
18
- label: formItemLabelWidth ? /*#__PURE__*/_jsx("div", {
19
- style: {
20
- width: formItemLabelWidth
21
- },
22
- children: label
23
- }) : label,
39
+ children: /*#__PURE__*/_jsx(Form.Item, _objectSpread(_objectSpread({}, props), {}, {
24
40
  children: dependParam ? /*#__PURE__*/cloneElement(value, dependParam) : value
25
- })
41
+ }))
26
42
  });
27
43
  }
@@ -105,39 +105,44 @@ function HeadComponent(_ref) {
105
105
  }), toolbar ? null : tableOperation]
106
106
  });
107
107
  var renderFormItems = function renderFormItems() {
108
- return allFormItems.map(function (item) {
109
- if (item.depends || item.showDepends) {
108
+ return allFormItems.map(function (_ref2, index) {
109
+ var depends = _ref2.depends,
110
+ showDepends = _ref2.showDepends,
111
+ name = _ref2.name,
112
+ groupItemNames = _ref2.groupItemNames,
113
+ label = _ref2.label,
114
+ rules = _ref2.rules,
115
+ value = _ref2.value;
116
+ if (depends || showDepends) {
110
117
  return /*#__PURE__*/_jsx(React.Fragment, {
111
118
  children: /*#__PURE__*/_jsx(Form.Item, {
112
119
  noStyle: true,
113
120
  shouldUpdate: function shouldUpdate(l, n) {
114
- var _item$depends, _item$showDepends;
115
- return ((_item$depends = item.depends) === null || _item$depends === void 0 ? void 0 : _item$depends.some(function (i) {
121
+ return (depends === null || depends === void 0 ? void 0 : depends.some(function (i) {
116
122
  return l[i] !== n[i];
117
- })) || ((_item$showDepends = item.showDepends) === null || _item$showDepends === void 0 ? void 0 : _item$showDepends.some(function (i) {
123
+ })) || (showDepends === null || showDepends === void 0 ? void 0 : showDepends.some(function (i) {
118
124
  return l[i.name] !== n[i.name];
119
125
  })) || false;
120
126
  },
121
- children: function children(_ref2) {
122
- var _item$depends2;
123
- var getFieldValue = _ref2.getFieldValue;
127
+ children: function children(_ref3) {
128
+ var getFieldValue = _ref3.getFieldValue;
124
129
  var dependParam = {};
125
- (_item$depends2 = item.depends) === null || _item$depends2 === void 0 || _item$depends2.forEach(function (i) {
130
+ depends === null || depends === void 0 || depends.forEach(function (i) {
126
131
  var value = getFieldValue(i);
127
132
  dependParam[i] = value;
128
133
  });
129
134
  var isShow = true;
130
- if (item.showDepends && item.showDepends.length > 0) {
131
- var _item$showDepends2;
132
- isShow = (_item$showDepends2 = item.showDepends) === null || _item$showDepends2 === void 0 ? void 0 : _item$showDepends2.every(function (i) {
135
+ if (showDepends && showDepends.length > 0) {
136
+ isShow = showDepends === null || showDepends === void 0 ? void 0 : showDepends.every(function (i) {
133
137
  return getFieldValue(i.name) === i.value;
134
138
  });
135
139
  }
136
140
  var itemContent = /*#__PURE__*/_jsx(HeadFormItem, {
137
- name: item.name,
138
- label: item.label,
139
- rules: item.rules,
140
- value: item.value,
141
+ name: name,
142
+ groupItemNames: groupItemNames,
143
+ label: label,
144
+ rules: rules,
145
+ value: value,
141
146
  dependParam: dependParam,
142
147
  formItemLabelWidth: formItemLabelWidth
143
148
  });
@@ -145,18 +150,19 @@ function HeadComponent(_ref) {
145
150
  return itemContent;
146
151
  }
147
152
  })
148
- }, item.name);
153
+ }, name);
149
154
  }
150
155
  var itemContent = /*#__PURE__*/_jsx(HeadFormItem, {
151
- name: item.name,
152
- value: item.value,
153
- rules: item.rules,
154
- label: item.label,
156
+ groupItemNames: groupItemNames,
157
+ name: name,
158
+ value: value,
159
+ rules: rules,
160
+ label: label,
155
161
  formItemLabelWidth: formItemLabelWidth
156
162
  });
157
163
  return /*#__PURE__*/_jsx(React.Fragment, {
158
164
  children: itemContent
159
- }, item.name);
165
+ }, index);
160
166
  });
161
167
  };
162
168
  var formStyles = {
@@ -13,14 +13,16 @@ export type ShowDependType = {
13
13
  value: any;
14
14
  };
15
15
  export declare enum TableEvent {
16
- Search = "search",
17
- Reset = "reset",
18
- Reload = "reload",
19
- ChangePage = "changePage",
20
- InitSearch = "initSearch",
21
- FullScreen = "fullScreen",
22
- ColumnFilter = "columnFilter",
23
- SelectedRows = "SelectedRows"
16
+ Search = "search",// 查询
17
+ Reset = "reset",// 重置
18
+ Reload = "reload",// 刷新
19
+ ChangePage = "changePage",// 分页
20
+ InitSearch = "initSearch",// 初始化查询
21
+ FullScreen = "fullScreen",// 全屏
22
+ ColumnFilter = "columnFilter",// 列过滤
23
+ SelectedRows = "SelectedRows",// 选中行
24
+ Expand = "Expand",// 异步树展开
25
+ PartialReload = "PartialReload"
24
26
  }
25
27
  export type TableColumn<RecordType = any> = (Omit<ColumnGroupType<RecordType>, 'ellipsis'> | Omit<ColumnType<RecordType>, 'ellipsis'>) & {
26
28
  dataIndex?: keyof RecordType;
@@ -55,8 +55,10 @@ export var TableEvent = /*#__PURE__*/function (TableEvent) {
55
55
  TableEvent["FullScreen"] = "fullScreen";
56
56
  TableEvent["ColumnFilter"] = "columnFilter";
57
57
  TableEvent["SelectedRows"] = "SelectedRows";
58
+ TableEvent["Expand"] = "Expand";
59
+ TableEvent["PartialReload"] = "PartialReload";
58
60
  return TableEvent;
59
- }({});
61
+ }({}); // 异步树局部刷新
60
62
  export var classPrefix = 'ccs-pl';
61
63
 
62
64
  /**
@@ -169,7 +171,7 @@ var InternalProTable = function InternalProTable(props) {
169
171
  var getFormValues = /*#__PURE__*/function () {
170
172
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
171
173
  var _formRef$current;
172
- var formValues;
174
+ var formValues, _delField;
173
175
  return _regeneratorRuntime().wrap(function _callee$(_context) {
174
176
  while (1) switch (_context.prev = _context.next) {
175
177
  case 0:
@@ -177,8 +179,19 @@ var InternalProTable = function InternalProTable(props) {
177
179
  return (_formRef$current = formRef.current) === null || _formRef$current === void 0 ? void 0 : _formRef$current.validateFields();
178
180
  case 2:
179
181
  formValues = _context.sent;
180
- // 格式化条件
182
+ // 删除无意义字段
183
+ if (formValues) {
184
+ _delField = Object.keys(formValues).filter(function (k) {
185
+ return k.startsWith('_') && k.endsWith('_');
186
+ });
187
+ if (_delField.length > 0) {
188
+ _delField.forEach(function (d) {
189
+ return delete formValues[d];
190
+ });
191
+ }
192
+ }
181
193
  if (formatFormItems.length) {
194
+ // 格式化条件
182
195
  Object.keys(formValues).forEach(function (k) {
183
196
  if (formValues[k] !== undefined) {
184
197
  var s = formatFormItems.find(function (f) {
@@ -189,7 +202,7 @@ var InternalProTable = function InternalProTable(props) {
189
202
  });
190
203
  }
191
204
  return _context.abrupt("return", _objectSpread(_objectSpread(_objectSpread({}, requestParam), formInitValues), formValues));
192
- case 5:
205
+ case 6:
193
206
  case "end":
194
207
  return _context.stop();
195
208
  }
@@ -274,9 +287,10 @@ var InternalProTable = function InternalProTable(props) {
274
287
  _context2.next = 19;
275
288
  break;
276
289
  }
277
- (_treeRef$current = treeRef.current) === null || _treeRef$current === void 0 || _treeRef$current.onRequestTree(params.query, record);
290
+ (_treeRef$current = treeRef.current) === null || _treeRef$current === void 0 || _treeRef$current.onRequestTree(eventType, params.query, record);
278
291
  return _context2.abrupt("return");
279
292
  case 19:
293
+ // 事件回调,请求中
280
294
  onEvent === null || onEvent === void 0 || onEvent(eventType, {
281
295
  loading: true,
282
296
  params: params
@@ -292,6 +306,7 @@ var InternalProTable = function InternalProTable(props) {
292
306
  return httpRequest(params);
293
307
  case 23:
294
308
  requestResult = _context2.sent;
309
+ // 事件回调,请求完成
295
310
  onEvent === null || onEvent === void 0 || onEvent(eventType, {
296
311
  loading: false,
297
312
  params: params,
@@ -367,7 +382,7 @@ var InternalProTable = function InternalProTable(props) {
367
382
  var ids = getAllChildrenId(treeNode.children || [], rowKey);
368
383
  // 局部重载
369
384
  (_treeRef$current2 = treeRef.current) === null || _treeRef$current2 === void 0 || _treeRef$current2.onExpandKeys(ids);
370
- (_treeRef$current3 = treeRef.current) === null || _treeRef$current3 === void 0 || _treeRef$current3.onRequestTree({}, treeNode);
385
+ (_treeRef$current3 = treeRef.current) === null || _treeRef$current3 === void 0 || _treeRef$current3.onRequestTree(TableEvent.PartialReload, {}, treeNode);
371
386
  };
372
387
  useEffect(function () {
373
388
  // 判断是否在弹出框中
@@ -547,6 +562,7 @@ var InternalProTable = function InternalProTable(props) {
547
562
  sticky: stickyRef.current || true,
548
563
  parentFieldName: parentFieldName,
549
564
  setData: setData,
565
+ onEvent: onEvent,
550
566
  handlePageChange: handlePageChange
551
567
  });
552
568
  }
@@ -4,12 +4,12 @@ import { RefObject } from 'react';
4
4
  import CCS from '..';
5
5
  import { CcsFieldNamesType } from '../context';
6
6
  import { TableRefType } from '../table';
7
- import { CcsProTableProps } from './table';
7
+ import { CcsProTableProps, TableEvent } from './table';
8
8
  export type TreeInstance<T> = {
9
- onRequestTree: (query: any, record: T | any) => void;
9
+ onRequestTree: (eventType: TableEvent, query: any, record: T | any) => void;
10
10
  onExpandKeys: (ids: string[]) => void;
11
11
  };
12
- type TreeTableProps<T> = Pick<CcsProTableProps<T>, 'table' | 'parentFieldName' | 'leafNode'> & {
12
+ type TreeTableProps<T> = Pick<CcsProTableProps<T>, 'table' | 'parentFieldName' | 'leafNode' | 'onEvent'> & {
13
13
  data: CCS.TableData<T>;
14
14
  sticky: boolean | TableSticky;
15
15
  tableRowSize: TableProps['size'];
@@ -22,6 +22,7 @@ import { useImperativeHandle, useState } from 'react';
22
22
  import { CcsTable } from '..';
23
23
  import { useProTableTreeFields } from "../hooks/use-app";
24
24
  import { getDataFromFields } from "../select";
25
+ import { TableEvent } from "./table";
25
26
  import { jsx as _jsx } from "react/jsx-runtime";
26
27
  var TableTree = function TableTree(props) {
27
28
  var data = props.data,
@@ -34,7 +35,8 @@ var TableTree = function TableTree(props) {
34
35
  tableContentRef = props.tableContentRef,
35
36
  parentFieldName = props.parentFieldName,
36
37
  handlePageChange = props.handlePageChange,
37
- setData = props.setData;
38
+ setData = props.setData,
39
+ onEvent = props.onEvent;
38
40
  // async tree expand key
39
41
  var _useState = useState([]),
40
42
  _useState2 = _slicedToArray(_useState, 2),
@@ -53,8 +55,8 @@ var TableTree = function TableTree(props) {
53
55
  var fieldNames = _objectSpread(_objectSpread({}, globalFieldNames), props.fieldNames);
54
56
 
55
57
  // 获取数据
56
- var _onRequestTree = /*#__PURE__*/function () {
57
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
58
+ var onRequestTree = /*#__PURE__*/function () {
59
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(eventType) {
58
60
  var query,
59
61
  record,
60
62
  params,
@@ -64,13 +66,18 @@ var TableTree = function TableTree(props) {
64
66
  return _regeneratorRuntime().wrap(function _callee$(_context) {
65
67
  while (1) switch (_context.prev = _context.next) {
66
68
  case 0:
67
- query = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
68
- record = _args.length > 1 ? _args[1] : undefined;
69
+ query = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
70
+ record = _args.length > 2 ? _args[2] : undefined;
69
71
  params = query;
70
72
  if (record) {
71
73
  params[parentFieldName] = record[rowKey];
72
74
  }
73
75
 
76
+ // 事件回调,请求中
77
+ onEvent === null || onEvent === void 0 || onEvent(eventType, {
78
+ loading: true,
79
+ params: params
80
+ });
74
81
  // 发起请求
75
82
  setData(function (d) {
76
83
  return _objectSpread(_objectSpread({}, d), {}, {
@@ -79,15 +86,21 @@ var TableTree = function TableTree(props) {
79
86
  });
80
87
  _context.t0 = httpRequest;
81
88
  if (!_context.t0) {
82
- _context.next = 10;
89
+ _context.next = 11;
83
90
  break;
84
91
  }
85
- _context.next = 9;
92
+ _context.next = 10;
86
93
  return httpRequest(params);
87
- case 9:
88
- _context.t0 = _context.sent;
89
94
  case 10:
95
+ _context.t0 = _context.sent;
96
+ case 11:
90
97
  requestResult = _context.t0;
98
+ onEvent === null || onEvent === void 0 || onEvent(eventType, {
99
+ loading: true,
100
+ params: params,
101
+ data: requestResult
102
+ });
103
+
91
104
  // 请求结果
92
105
  if (requestResult) {
93
106
  // 获取table数据
@@ -126,21 +139,19 @@ var TableTree = function TableTree(props) {
126
139
  });
127
140
  });
128
141
  }
129
- case 12:
142
+ case 14:
130
143
  case "end":
131
144
  return _context.stop();
132
145
  }
133
146
  }, _callee);
134
147
  }));
135
- return function onRequestTree() {
148
+ return function onRequestTree(_x) {
136
149
  return _ref2.apply(this, arguments);
137
150
  };
138
151
  }();
139
152
  useImperativeHandle(treeRef, function () {
140
153
  return {
141
- onRequestTree: function onRequestTree(query, record) {
142
- _onRequestTree(query, record);
143
- },
154
+ onRequestTree: onRequestTree,
144
155
  onExpandKeys: function onExpandKeys(ids) {
145
156
  setExpandKeys(expandKeys.filter(function (e) {
146
157
  return !ids.includes(e);
@@ -158,7 +169,7 @@ var TableTree = function TableTree(props) {
158
169
  var _record$childrenColum;
159
170
  expandKeys.push(expandId);
160
171
  if (((_record$childrenColum = record[childrenColumnName]) === null || _record$childrenColum === void 0 ? void 0 : _record$childrenColum.length) > 0) return;
161
- _onRequestTree({}, record);
172
+ onRequestTree(TableEvent.Expand, {}, record);
162
173
  } else {
163
174
  setExpandKeys(expandKeys.filter(function (e) {
164
175
  return e !== expandId;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ccs-ui/rc-pro",
3
- "version": "2.3.6-alpha-8",
3
+ "version": "2.3.6-alpha-10",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "author": {