@zat-design/sisyphus-react 3.3.2-beta.8 → 3.3.3-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/index.esm.css +0 -3
  2. package/es/ProConfigProvider/index.js +0 -1
  3. package/es/ProEditLabel/index.js +2 -3
  4. package/es/ProEditTable/components/ActionButton/index.js +6 -6
  5. package/es/ProEditTable/components/RenderField/index.js +5 -5
  6. package/es/ProEditTable/style/index.less +0 -1
  7. package/es/ProEditTable/utils/index.js +2 -4
  8. package/es/ProForm/components/ProFormGroup/index.d.ts +13 -0
  9. package/es/ProForm/components/ProFormGroup/index.js +27 -0
  10. package/es/ProForm/components/base/Switch/index.js +0 -1
  11. package/es/ProForm/components/combination/FormList/components/ActionButton.js +2 -2
  12. package/es/ProForm/components/combination/ProCombination/index.js +0 -1
  13. package/es/ProForm/components/combination/ProModalSelect/index.js +1 -2
  14. package/es/ProForm/components/render/Render.js +3 -4
  15. package/es/ProForm/index.js +27 -7
  16. package/es/ProForm/propsType.d.ts +1 -0
  17. package/es/ProForm/utils/index.js +4 -0
  18. package/es/ProForm/utils/useForm.js +49 -75
  19. package/es/ProStep/index.js +0 -1
  20. package/es/ProThemeTools/index.js +0 -1
  21. package/es/ProThemeTools/utils/index.js +0 -1
  22. package/es/ProTree/components/Tree.js +0 -1
  23. package/es/ProTreeSelect/index.js +2 -4
  24. package/es/ProUpload/index.js +0 -1
  25. package/es/index.d.ts +1 -0
  26. package/es/index.js +1 -0
  27. package/es/old/ProEditableTable/index.js +1 -1
  28. package/lib/ProConfigProvider/index.js +0 -1
  29. package/lib/ProEditLabel/index.js +2 -3
  30. package/lib/ProEditTable/components/ActionButton/index.js +6 -6
  31. package/lib/ProEditTable/components/RenderField/index.js +5 -5
  32. package/lib/ProEditTable/style/index.less +0 -1
  33. package/lib/ProEditTable/utils/index.js +2 -4
  34. package/lib/ProForm/components/ProFormGroup/index.d.ts +13 -0
  35. package/lib/ProForm/components/ProFormGroup/index.js +35 -0
  36. package/lib/ProForm/components/combination/FormList/components/ActionButton.js +2 -2
  37. package/lib/ProForm/components/combination/ProCombination/index.js +0 -1
  38. package/lib/ProForm/components/combination/ProModalSelect/index.js +1 -2
  39. package/lib/ProForm/components/old/InputRange/index.js +1 -0
  40. package/lib/ProForm/components/render/Render.js +3 -4
  41. package/lib/ProForm/index.js +24 -4
  42. package/lib/ProForm/propsType.d.ts +1 -0
  43. package/lib/ProForm/utils/index.js +4 -0
  44. package/lib/ProForm/utils/useForm.js +49 -75
  45. package/lib/ProStep/index.js +0 -1
  46. package/lib/ProThemeTools/index.js +0 -1
  47. package/lib/ProThemeTools/utils/index.js +0 -1
  48. package/lib/ProTree/components/Tree.js +0 -1
  49. package/lib/ProTree/index.js +1 -0
  50. package/lib/ProTreeSelect/index.js +2 -4
  51. package/lib/ProUpload/index.js +0 -1
  52. package/lib/index.d.ts +1 -0
  53. package/lib/index.js +15 -0
  54. package/lib/old/ProEditableTable/index.js +1 -1
  55. package/package.json +1 -1
@@ -4220,9 +4220,6 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
4220
4220
  position: absolute;
4221
4221
  bottom: var(--zaui-space-size-md, 16px);
4222
4222
  }
4223
- .pro-edit-table-toolbar {
4224
- margin-top: var(--zaui-space-size-md, 16px);
4225
- }
4226
4223
  .pro-edit-table-toolbar .ant-space {
4227
4224
  gap: var(--zaui-space-size-sm, 8px);
4228
4225
  }
@@ -26,7 +26,6 @@ var antdLangMap = {
26
26
  'zh-CN': zhCN,
27
27
  'en-US': enUS // en-US
28
28
  };
29
-
30
29
  var reducer = function reducer(state, action) {
31
30
  var _state$ProEnum;
32
31
  switch (action.type) {
@@ -22,7 +22,6 @@ import { omit } from 'lodash';
22
22
  import RenderProForm from './components/RenderProForm';
23
23
  import { matchFormValue } from './utils';
24
24
  var ProEditLabel = function ProEditLabel(_ref) {
25
- var _classnames;
26
25
  var _ref$open = _ref.open,
27
26
  open = _ref$open === void 0 ? false : _ref$open,
28
27
  _ref$disabled = _ref.disabled,
@@ -128,9 +127,9 @@ var ProEditLabel = function ProEditLabel(_ref) {
128
127
  }
129
128
  }
130
129
  }, [confirmValue, mode]);
131
- var cls = classnames((_classnames = {
130
+ var cls = classnames(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({
132
131
  'pro-edit-label': true
133
- }, _defineProperty(_classnames, "trigger-".concat(trigger), trigger), _defineProperty(_classnames, 'pro-edit-label-small', size === 'small'), _defineProperty(_classnames, 'pro-edit-label-middle', size === 'middle'), _defineProperty(_classnames, 'pro-edit-label-large', size === 'large'), _defineProperty(_classnames, "".concat(className), className), _classnames));
132
+ }, "trigger-".concat(trigger), trigger), 'pro-edit-label-small', size === 'small'), 'pro-edit-label-middle', size === 'middle'), 'pro-edit-label-large', size === 'large'), "".concat(className), className));
134
133
  /**
135
134
  * pop确认回调
136
135
  */
@@ -82,24 +82,24 @@ var ActionButton = function ActionButton(_ref) {
82
82
  disabled: isDisabled,
83
83
  okText: locale.ProEditTable.confirm,
84
84
  cancelText: locale.ProEditTable.cancel,
85
- children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
85
+ children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? ( /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
86
86
  record: record,
87
87
  index: index,
88
88
  disabled: isDisabled
89
- })) : _jsx(_Button, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
89
+ }))) : _jsx(_Button, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
90
90
  disabled: isDisabled,
91
91
  type: "link",
92
92
  children: btnConfig.label
93
93
  }))
94
94
  }) : _jsx(_Fragment, {
95
- children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
95
+ children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? ( /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
96
96
  record: record,
97
97
  index: index,
98
98
  disabled: isDisabled,
99
99
  onClick: function onClick() {
100
100
  btnConfig.onEvent(record, index);
101
101
  }
102
- })) : _jsx(_Button, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
102
+ }))) : _jsx(_Button, _objectSpread(_objectSpread({}, omit(delBtnProps, ['buttonProps', 'isEditable'])), {}, {
103
103
  disabled: isDisabled,
104
104
  type: "link",
105
105
  onClick: function onClick() {
@@ -109,10 +109,10 @@ var ActionButton = function ActionButton(_ref) {
109
109
  }))
110
110
  })
111
111
  }) : _jsx(_Fragment, {
112
- children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(actionBtnProps, ['buttonProps', 'isEditable'])), {}, {
112
+ children: /*#__PURE__*/React.isValidElement(btnConfig.label) ? ( /*#__PURE__*/React.cloneElement(btnConfig.label, _objectSpread(_objectSpread({}, omit(actionBtnProps, ['buttonProps', 'isEditable'])), {}, {
113
113
  record: record,
114
114
  index: index
115
- })) : _jsx(_Button, _objectSpread(_objectSpread({
115
+ }))) : _jsx(_Button, _objectSpread(_objectSpread({
116
116
  className: "action-button"
117
117
  }, omit(actionBtnProps, ['buttonProps', 'isEditable'])), {}, {
118
118
  type: "link",
@@ -30,7 +30,7 @@ import useRules from '../../../ProForm/utils/useRules';
30
30
  import { isSelect } from '../../../ProForm/utils';
31
31
  import locale from '../../../locale';
32
32
  var RenderField = function RenderField(_ref) {
33
- var _type, _type$replace, _fieldProps2, _fieldProps3, _fieldProps4, _names, _formItemChildProps$p, _TargetComponent4, _classNames;
33
+ var _type, _type$replace, _fieldProps2, _fieldProps3, _fieldProps4, _names, _formItemChildProps$p, _TargetComponent4;
34
34
  var value = _ref.text,
35
35
  record = _ref.record,
36
36
  index = _ref.index,
@@ -506,13 +506,13 @@ var RenderField = function RenderField(_ref) {
506
506
  if (!isEditing) {
507
507
  delete _formItemProps.rules;
508
508
  }
509
- var _className = classNames((_classNames = {}, _defineProperty(_classNames, className, className), _defineProperty(_classNames, 'pro-form-item-changed', changed), _classNames));
509
+ var _className = classNames(_defineProperty(_defineProperty({}, className, className), 'pro-form-item-changed', changed));
510
510
  var originalTitle = originalTip ? _jsxs(_Space, {
511
- children: ["\u521D\u59CB\u503C\uFF1A", /*#__PURE__*/React.isValidElement(TargetComponent) ? /*#__PURE__*/React.cloneElement(TargetComponent, _objectSpread(_objectSpread({}, omit(componentProps, ['onFieldChange'])), {}, {
511
+ children: ["\u521D\u59CB\u503C\uFF1A", /*#__PURE__*/React.isValidElement(TargetComponent) ? ( /*#__PURE__*/React.cloneElement(TargetComponent, _objectSpread(_objectSpread({}, omit(componentProps, ['onFieldChange'])), {}, {
512
512
  isView: true,
513
513
  value: originalValue,
514
514
  checked: type === 'Switch' ? originalValue : undefined
515
- })) : _jsx(TargetComponent, _objectSpread(_objectSpread({}, omit(componentProps, ['onFieldChange'])), {}, {
515
+ }))) : _jsx(TargetComponent, _objectSpread(_objectSpread({}, omit(componentProps, ['onFieldChange'])), {}, {
516
516
  isView: true,
517
517
  value: originalValue,
518
518
  checked: type === 'Switch' ? originalValue : undefined
@@ -523,7 +523,7 @@ var RenderField = function RenderField(_ref) {
523
523
  }, omit(_formItemProps, ['render', 'cache', 'key', 'width', 'hiddenNames', 'name'])), {}, {
524
524
  className: _className,
525
525
  name: cellName,
526
- children: /*#__PURE__*/React.isValidElement(TargetComponent) ? /*#__PURE__*/React.cloneElement(TargetComponent, _objectSpread({}, omit(componentProps, ['onFieldChange']))) : _jsx(TargetComponent, _objectSpread({}, omit(componentProps, ['onFieldChange'])))
526
+ children: /*#__PURE__*/React.isValidElement(TargetComponent) ? ( /*#__PURE__*/React.cloneElement(TargetComponent, _objectSpread({}, omit(componentProps, ['onFieldChange'])))) : _jsx(TargetComponent, _objectSpread({}, omit(componentProps, ['onFieldChange'])))
527
527
  })) : _jsx(Container, {
528
528
  viewEmpty: viewEmpty
529
529
  });
@@ -313,7 +313,6 @@
313
313
  }
314
314
 
315
315
  .pro-edit-table-toolbar {
316
- margin-top: var(--zaui-space-size-md, 16px);
317
316
  .@{ant-prefix}-space {
318
317
  gap: var(--zaui-space-size-sm, 8px);
319
318
 
@@ -217,9 +217,9 @@ export var transformColumns = function transformColumns() {
217
217
  children: [columnTitle, _jsx(_Tooltip, _objectSpread(_objectSpread({
218
218
  title: tooltipTitle !== null && tooltipTitle !== void 0 ? tooltipTitle : tooltip
219
219
  }, resetProps), {}, {
220
- children: icon ? /*#__PURE__*/React.cloneElement(icon, {
220
+ children: icon ? ( /*#__PURE__*/React.cloneElement(icon, {
221
221
  className: 'icon-tip'
222
- }) : _jsx(ReactSVG, {
222
+ })) : _jsx(ReactSVG, {
223
223
  className: "icon-tip",
224
224
  src: tipSvg
225
225
  })
@@ -336,7 +336,6 @@ export var transformColumns = function transformColumns() {
336
336
  })
337
337
  });
338
338
  };
339
-
340
339
  item.render = _render;
341
340
  });
342
341
  if (disabled || isView) {
@@ -359,7 +358,6 @@ export var transformColumns = function transformColumns() {
359
358
  var actionColumn = getActionColumn(_objectSpread(_objectSpread({}, config), {}, {
360
359
  validateKeys: validateKeys // 需要校验的单元格的formItem的name
361
360
  }));
362
-
363
361
  actionColumn && _columns.push(actionColumn);
364
362
  }
365
363
  // cacheMap 用来存储缓存值,若有值后不再请求
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { FormInstance } from 'antd';
3
+ interface FormGroup {
4
+ [K: string]: FormInstance | undefined;
5
+ }
6
+ type ContextType = [FormGroup, (forms: FormGroup) => void];
7
+ export declare const groupContext: React.Context<ContextType>;
8
+ interface Props {
9
+ formGroup?: FormGroup;
10
+ }
11
+ export declare const useProFormGroup: () => FormGroup;
12
+ export declare const ProFormGroup: React.FC<Props>;
13
+ export {};
@@ -0,0 +1,27 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ import React, { useContext, useMemo, useState } from 'react';
5
+ export var groupContext = /*#__PURE__*/React.createContext([{}, function () {
6
+ return undefined;
7
+ }]);
8
+ export var useProFormGroup = function useProFormGroup() {
9
+ var formGroup = useContext(groupContext);
10
+ return formGroup[0];
11
+ };
12
+ export var ProFormGroup = function ProFormGroup(props) {
13
+ var formGroup = props.formGroup,
14
+ children = props.children;
15
+ var Provider = groupContext.Provider;
16
+ var initialFormGroup = useMemo(function () {
17
+ return formGroup ? _objectSpread({}, formGroup) : {};
18
+ }, [formGroup]);
19
+ var _useState = useState(initialFormGroup),
20
+ _useState2 = _slicedToArray(_useState, 2),
21
+ forms = _useState2[0],
22
+ setForms = _useState2[1];
23
+ return _jsx(Provider, {
24
+ value: [forms, setForms],
25
+ children: children
26
+ });
27
+ };
@@ -38,5 +38,4 @@ var Switch = function Switch(props) {
38
38
  id: "switch_only" // 解决点击label联动的问题
39
39
  }));
40
40
  };
41
-
42
41
  export default Switch;
@@ -225,13 +225,13 @@ var ActionButton = function ActionButton(props) {
225
225
  },
226
226
  children: label
227
227
  }))
228
- }), "".concat(item === null || item === void 0 ? void 0 : item.actionType).concat(index)) : /*#__PURE__*/_createElement(_Button, _objectSpread(_objectSpread({}, rest), {}, {
228
+ }), "".concat(item === null || item === void 0 ? void 0 : item.actionType).concat(index)) : ( /*#__PURE__*/_createElement(_Button, _objectSpread(_objectSpread({}, rest), {}, {
229
229
  key: "".concat(item === null || item === void 0 ? void 0 : item.actionType).concat(index),
230
230
  onClick: function onClick(e) {
231
231
  e.stopPropagation();
232
232
  handleClick(_onClick, index);
233
233
  }
234
- }), label);
234
+ }), label));
235
235
  })
236
236
  });
237
237
  };
@@ -83,7 +83,6 @@ export var ProCombination = function ProCombination(props) {
83
83
  _handleChange(_values, rest === null || rest === void 0 ? void 0 : rest[0], form);
84
84
  (_childProps$index = childProps[index]) === null || _childProps$index === void 0 ? void 0 : (_childProps$index$onC = _childProps$index.onChange) === null || _childProps$index$onC === void 0 ? void 0 : _childProps$index$onC.call(_childProps$index, value, rest === null || rest === void 0 ? void 0 : rest[0], form); // 支持子组件分别传入onChange
85
85
  };
86
-
87
86
  var className = classNames({
88
87
  'pro-combination': true,
89
88
  'pro-combination-view': isView
@@ -548,8 +548,7 @@ var ProModalSelect = function ProModalSelect(props, ref) {
548
548
  _value: value
549
549
  });
550
550
  } else if (Object.prototype.toString.call(value) === '[object Object]') {
551
- var _initialValue;
552
- var initialValue = (_initialValue = {}, _defineProperty(_initialValue, valueKey, value[valueKey]), _defineProperty(_initialValue, labelKey, value[labelKey]), _initialValue);
551
+ var initialValue = _defineProperty(_defineProperty({}, valueKey, value[valueKey]), labelKey, value[labelKey]);
553
552
  setState({
554
553
  selectedRowKeys: [value],
555
554
  selectedRows: [initialValue],
@@ -33,7 +33,7 @@ import tipSvg from '../../../assets/tip.svg';
33
33
  import useRules from '../../utils/useRules';
34
34
  // 这个组件只管渲染, 参数的整理在外部处理
35
35
  var Render = function Render(props) {
36
- var _ref2, _classNames, _otherProps$names2;
36
+ var _ref2, _otherProps$names2;
37
37
  var component = props.component,
38
38
  originComponent = props.originComponent,
39
39
  _props$formItemProps = props.formItemProps,
@@ -171,7 +171,7 @@ var Render = function Render(props) {
171
171
  var lastComponentProps = _objectSpread(_objectSpread(_objectSpread({}, componentProps), _fieldProps), {}, {
172
172
  disabled: lastDisabled
173
173
  });
174
- var _className = classNames((_classNames = {}, _defineProperty(_classNames, className, className), _defineProperty(_classNames, 'pro-form-item-changed', changed), _defineProperty(_classNames, 'pro-form-item-width-auto', ['Switch'].includes(type)), _classNames));
174
+ var _className = classNames(_defineProperty(_defineProperty(_defineProperty({}, className, className), 'pro-form-item-changed', changed), 'pro-form-item-width-auto', ['Switch'].includes(type)));
175
175
  if (formItemProps.hidden === true || _show === false) {
176
176
  // 为了监听shouldUpdate 必须存在一个FormItem, 空Input解决 【[antd: Form.Item] `name` is only used for validate React element】
177
177
  return _jsx(_Form.Item, {
@@ -344,7 +344,7 @@ var Render = function Render(props) {
344
344
  if (originComponent) {
345
345
  delete childProps.otherProps;
346
346
  }
347
- var child = /*#__PURE__*/React.isValidElement(AutoComponent) ? /*#__PURE__*/React.cloneElement(AutoComponent, childProps) : _jsx(AutoComponent, _objectSpread(_objectSpread({}, omit(lastComponentProps, ['onFieldChange', 'disabledStrictly'])), {}, {
347
+ var child = /*#__PURE__*/React.isValidElement(AutoComponent) ? ( /*#__PURE__*/React.cloneElement(AutoComponent, childProps)) : _jsx(AutoComponent, _objectSpread(_objectSpread({}, omit(lastComponentProps, ['onFieldChange', 'disabledStrictly'])), {}, {
348
348
  otherProps: _objectSpread(_objectSpread({}, otherProps), {}, {
349
349
  show: show,
350
350
  disabled: lastDisabled,
@@ -390,7 +390,6 @@ var Render = function Render(props) {
390
390
  span: 24 // 默认占一行
391
391
  });
392
392
  }
393
-
394
393
  var orgFormItem = _jsx(_Form.Item, _objectSpread(_objectSpread({}, omit(_otherFormItemProps, filterFormItemKey)), {}, {
395
394
  // @ts-ignore
396
395
  _internalItemRender: internalItemRender,
@@ -1,22 +1,22 @@
1
1
  import _toArray from "@babel/runtime/helpers/esm/toArray";
2
2
  import "antd/es/row/style";
3
3
  import _Row from "antd/es/row";
4
- import "antd/es/form/style";
5
- import _Form from "antd/es/form";
6
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
7
4
  import "antd/es/col/style";
8
5
  import _Col from "antd/es/col";
9
6
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
10
7
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
11
8
  import "antd/es/space/style";
12
9
  import _Space from "antd/es/space";
10
+ import "antd/es/form/style";
11
+ import _Form from "antd/es/form";
12
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
13
13
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
14
14
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
15
- var _excluded = ["mode", "span", "disabled", "isView", "columns", "footer", "onOk", "okText", "onCancel", "confirmLoading", "cancelText", "form", "children", "rowProps", "className", "expand", "expandOpen", "expandOpenChange", "viewEmpty", "labelAlign", "labelWidth", "onValuesChange", "onFinish", "originalValues", "submitOnEnter", "clearNotShow", "initialValues", "requiredOnView", "formId", "required", "originalTip"];
15
+ var _excluded = ["mode", "span", "disabled", "isView", "columns", "footer", "onOk", "okText", "onCancel", "confirmLoading", "cancelText", "form", "children", "rowProps", "className", "expand", "expandOpen", "expandOpenChange", "viewEmpty", "labelAlign", "labelWidth", "onValuesChange", "onFinish", "originalValues", "submitOnEnter", "clearNotShow", "initialValues", "requiredOnView", "formId", "required", "originalTip", "groupName"];
16
16
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
17
  import { DoubleLeftOutlined } from '@ant-design/icons';
18
18
  import classnames from 'classnames';
19
- import React, { forwardRef, useImperativeHandle, useMemo } from 'react';
19
+ import React, { forwardRef, useContext, useImperativeHandle, useMemo } from 'react';
20
20
  import { isObject, isString, merge } from 'lodash';
21
21
  import { FormFooter, InputRange, ProAddress, ProAddressBar, ProCertNo, ProCertValidity, ProCombination, ProModalSelect, ProNumberRange, ProRangeBox, ProTimeLimit, transferAddressInfoToRegion, ProUpload, ProTreeSelect, ProTreeModal, ProTree, EnumSelect } from './components';
22
22
  import RenderFields from './components/render/RenderFields';
@@ -25,8 +25,9 @@ import { getLayout, splitNameStr, useControlled, initialValuesToNames } from './
25
25
  import { useForm } from './utils/useForm';
26
26
  import { useFieldProps } from './utils/useFieldProps';
27
27
  import locale from '../locale';
28
+ import { groupContext } from './components/ProFormGroup';
28
29
  var ProForm = function ProForm(props, ref) {
29
- var _localStorage;
30
+ var _groupForm$groupName, _localStorage;
30
31
  var _props$mode = props.mode,
31
32
  mode = _props$mode === void 0 ? 'search' : _props$mode,
32
33
  span = props.span,
@@ -65,8 +66,13 @@ var ProForm = function ProForm(props, ref) {
65
66
  required = props.required,
66
67
  _props$originalTip = props.originalTip,
67
68
  originalTip = _props$originalTip === void 0 ? true : _props$originalTip,
69
+ groupName = props.groupName,
68
70
  otherProps = _objectWithoutProperties(props, _excluded);
69
- var _useForm = useForm(originForm),
71
+ var _ref = useContext(groupContext) || [],
72
+ _ref2 = _slicedToArray(_ref, 2),
73
+ groupForm = _ref2[0],
74
+ setGroupForm = _ref2[1];
75
+ var _useForm = useForm((_groupForm$groupName = groupForm[groupName]) !== null && _groupForm$groupName !== void 0 ? _groupForm$groupName : originForm),
70
76
  _useForm2 = _slicedToArray(_useForm, 1),
71
77
  form = _useForm2[0];
72
78
  var _useControlled = useControlled({
@@ -77,6 +83,20 @@ var ProForm = function ProForm(props, ref) {
77
83
  openState = _useControlled2[0],
78
84
  setOpenState = _useControlled2[1];
79
85
  var config = useProConfig('ProForm');
86
+ // 把表单实例存入表单组
87
+ useMemo(function () {
88
+ if (groupName && groupForm[groupName] !== form) {
89
+ groupForm[groupName] = form;
90
+ setGroupForm(_objectSpread({}, groupForm));
91
+ }
92
+ // 销毁
93
+ return function () {
94
+ if (groupName && groupForm[groupName]) {
95
+ delete _Form[groupName];
96
+ setGroupForm(_objectSpread({}, groupForm));
97
+ }
98
+ };
99
+ }, [groupName, form]);
80
100
  var _getLayout = getLayout({
81
101
  span: span,
82
102
  form: form
@@ -43,6 +43,7 @@ export interface ProFormOtherProps {
43
43
  export interface ProFormProps<Values = any> extends FormProps<Values> {
44
44
  disabled?: boolean;
45
45
  mode?: ModeEnum;
46
+ groupName?: string;
46
47
  /** 是否查看 */
47
48
  isView?: boolean;
48
49
  span?: number;
@@ -134,6 +134,10 @@ export var splitNameStr = function splitNameStr(name) {
134
134
  // 过滤掉字段名中包含 '-' 的字段
135
135
  export var filterInternalFields = function filterInternalFields(values) {
136
136
  var nextValues = values;
137
+ // fix: braft-editor对象不可遍历
138
+ if (values === null || values === void 0 ? void 0 : values._immutable) {
139
+ return nextValues;
140
+ }
137
141
  if (Array.isArray(nextValues)) {
138
142
  nextValues.forEach(function (item) {
139
143
  filterInternalFields(item);
@@ -3,86 +3,60 @@ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
3
  import "antd/es/form/style";
4
4
  import _Form from "antd/es/form";
5
5
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
6
- import { useMemo } from 'react';
7
- import { merge } from 'lodash';
8
- import { HOOK_MARK } from 'rc-field-form/es/FieldContext';
9
- import { deleteForPath } from '.';
6
+ import { filterInternalFields } from './index';
10
7
  export var useForm = function useForm(originForm) {
11
8
  var _Form$useForm = _Form.useForm(originForm),
12
9
  _Form$useForm2 = _slicedToArray(_Form$useForm, 1),
13
10
  form = _Form$useForm2[0];
14
11
  var getFieldsValue = form.getFieldsValue,
15
- validateFields = form.validateFields,
16
- getFieldValue = form.getFieldValue;
17
- useMemo(function () {
18
- var _getFieldsValue = function _getFieldsValue() {
19
- var firstProps = !(arguments.length <= 0 ? undefined : arguments[0]) ? true : arguments.length <= 0 ? undefined : arguments[0];
20
- var values = getFieldsValue(firstProps, arguments.length <= 1 ? undefined : arguments[1]);
21
- if ((arguments.length <= 0 ? undefined : arguments[0]) === undefined) {
22
- var result = merge({}, values);
23
- // @ts-ignore
24
- var internalHooks = form.getInternalHooks(HOOK_MARK);
25
- var fields = internalHooks.getFields();
26
- var deletePath = [];
27
- // 找到带'-'的name
28
- fields.forEach(function (field) {
29
- var name = field.name;
30
- if (Array.isArray(name)) {
31
- var index = name.findIndex(function (item) {
32
- return typeof item === 'string' && item.includes('-');
33
- });
34
- if (index !== -1) deletePath.push(name);
35
- }
36
- if (typeof name === 'string' && name.includes('-')) {
37
- deletePath.push(name);
38
- }
39
- });
40
- // 执行删除操作
41
- deletePath.forEach(function (item) {
42
- deleteForPath(result, item);
43
- });
44
- return result;
45
- }
46
- return values;
12
+ validateFields = form.validateFields;
13
+ // @ts-ignore
14
+ var _getFieldsValue = function _getFieldsValue(nameList, filterFunc) {
15
+ var _nameList = Array.isArray(nameList) ? nameList : true;
16
+ // 全部查询
17
+ if (_nameList === true) {
18
+ var values = getFieldsValue(true, filterFunc);
19
+ return filterInternalFields(values);
20
+ }
21
+ return getFieldsValue(_nameList, filterFunc);
22
+ };
23
+ var _validateFields = /*#__PURE__*/function () {
24
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(nameList) {
25
+ var _len,
26
+ rest,
27
+ _key,
28
+ values,
29
+ _values,
30
+ _args = arguments;
31
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
32
+ while (1) switch (_context.prev = _context.next) {
33
+ case 0:
34
+ for (_len = _args.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
35
+ rest[_key - 1] = _args[_key];
36
+ }
37
+ _context.next = 3;
38
+ return validateFields.apply(void 0, [nameList].concat(rest));
39
+ case 3:
40
+ values = _context.sent;
41
+ if (!nameList) {
42
+ _context.next = 6;
43
+ break;
44
+ }
45
+ return _context.abrupt("return", values);
46
+ case 6:
47
+ _values = _getFieldsValue();
48
+ return _context.abrupt("return", _values);
49
+ case 8:
50
+ case "end":
51
+ return _context.stop();
52
+ }
53
+ }, _callee);
54
+ }));
55
+ return function _validateFields(_x) {
56
+ return _ref.apply(this, arguments);
47
57
  };
48
- var _validateFields = /*#__PURE__*/function () {
49
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(nameList) {
50
- var _len,
51
- rest,
52
- _key,
53
- values,
54
- _values,
55
- _args = arguments;
56
- return _regeneratorRuntime().wrap(function _callee$(_context) {
57
- while (1) switch (_context.prev = _context.next) {
58
- case 0:
59
- for (_len = _args.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
60
- rest[_key - 1] = _args[_key];
61
- }
62
- _context.next = 3;
63
- return validateFields.apply(void 0, [nameList].concat(rest));
64
- case 3:
65
- values = _context.sent;
66
- if (!nameList) {
67
- _context.next = 6;
68
- break;
69
- }
70
- return _context.abrupt("return", values);
71
- case 6:
72
- _values = _getFieldsValue();
73
- return _context.abrupt("return", _values);
74
- case 8:
75
- case "end":
76
- return _context.stop();
77
- }
78
- }, _callee);
79
- }));
80
- return function _validateFields(_x) {
81
- return _ref.apply(this, arguments);
82
- };
83
- }();
84
- form.getFieldsValue = _getFieldsValue;
85
- form.validateFields = _validateFields;
86
- }, [form]);
58
+ }();
59
+ form.getFieldsValue = _getFieldsValue;
60
+ form.validateFields = _validateFields;
87
61
  return [form];
88
62
  };
@@ -160,7 +160,6 @@ var ProStep = function ProStep(_ref) {
160
160
  subtree: true,
161
161
  childList: true // 是否观察子元素的添加或删除
162
162
  };
163
-
164
163
  observer.observe(targetElement, config);
165
164
  };
166
165
  useDeepCompareEffect(function () {
@@ -115,7 +115,6 @@ var ProThemeTools = function ProThemeTools(_ref) {
115
115
  return ["".concat(getKebabCase(item === null || item === void 0 ? void 0 : item[0])), ['zauiSize'].includes(item === null || item === void 0 ? void 0 : item[0]) || typeof (item === null || item === void 0 ? void 0 : item[1]) !== 'number' ? item === null || item === void 0 ? void 0 : item[1] : "".concat(item === null || item === void 0 ? void 0 : item[1], "px") // zauiSize取数字
116
116
  ];
117
117
  }));
118
-
119
118
  setState(_objectSpread(_objectSpread({}, state), localThemeConfig));
120
119
  setThemes(cssVariables);
121
120
  _ConfigProvider.config({
@@ -49,7 +49,6 @@ export var getKebabCase = function getKebabCase(str) {
49
49
  if (temp.slice(0, 1) === '-') {
50
50
  temp = temp.slice(1); // 如果首字母是大写,执行replace时会多一个-,需要去掉
51
51
  }
52
-
53
52
  return temp;
54
53
  };
55
54
  /** JS实现对象驼峰命名与横线命名的转换 */
@@ -303,7 +303,6 @@ function List(props) {
303
303
  });
304
304
  return treeRow; // .filter((item) => item);
305
305
  };
306
-
307
306
  if ((other === null || other === void 0 ? void 0 : other.mode) === 'view') {
308
307
  return;
309
308
  }
@@ -19,7 +19,6 @@ import { useProConfig } from '../ProConfigProvider';
19
19
  import Container from '../ProForm/components/Container';
20
20
  var SHOW_PARENT = _TreeSelect.SHOW_PARENT;
21
21
  export var ProTreeSelect = function ProTreeSelect(props, ref) {
22
- var _classnames2;
23
22
  // 全局属性配置在ConfigProvider
24
23
  var _ref = useProConfig('ProTreeSelect') || {},
25
24
  _ref$fieldNames = _ref.fieldNames,
@@ -363,7 +362,6 @@ export var ProTreeSelect = function ProTreeSelect(props, ref) {
363
362
  // currentAllNodeChild.push(item);
364
363
  // }
365
364
  }
366
-
367
365
  return currentAllNodeChild;
368
366
  };
369
367
  sourceList = filterData(sourceList);
@@ -469,9 +467,9 @@ export var ProTreeSelect = function ProTreeSelect(props, ref) {
469
467
  'pro-tree-select': true
470
468
  }, "".concat(className), className));
471
469
  var innerClass = treeCheckable ? 'checkable-tree pro' : "".concat(tenCountClass, " signal-tree");
472
- var dropDownClassName = classnames((_classnames2 = {
470
+ var dropDownClassName = classnames(_defineProperty(_defineProperty({
473
471
  'pro-tree-select-drop-down-container': true
474
- }, _defineProperty(_classnames2, "".concat(innerClass), true), _defineProperty(_classnames2, "".concat(popupClassName), popupClassName), _classnames2));
472
+ }, "".concat(innerClass), true), "".concat(popupClassName), popupClassName));
475
473
  var treeProps = _objectSpread({
476
474
  disabled: disabled,
477
475
  showSearch: showSearch,
@@ -91,7 +91,6 @@ var ProUpload = /*#__PURE__*/React.forwardRef(function (props, ref) {
91
91
  response: file === null || file === void 0 ? void 0 : file.response
92
92
  // url: file?.response?.data?.url,
93
93
  };
94
-
95
94
  if (transformResponse) {
96
95
  var data = transformResponse(file.response) || {};
97
96
  return _objectSpread(_objectSpread({}, nfile), data);
package/es/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export { default as ProViewer } from './ProViewer';
8
8
  export { default as ProEditTable } from './ProEditTable';
9
9
  export { default as ProDrawerForm } from './ProDrawerForm';
10
10
  export { default as ProEditLabel } from './ProEditLabel';
11
+ export { ProFormGroup, useProFormGroup } from './ProForm/components/ProFormGroup';
11
12
  export { default as ProForm } from './ProForm';
12
13
  export * from './ProForm';
13
14
  export * from './ProForm/components';
package/es/index.js CHANGED
@@ -12,6 +12,7 @@ export { default as ProEditTable } from './ProEditTable';
12
12
  export { default as ProDrawerForm } from './ProDrawerForm';
13
13
  export { default as ProEditLabel } from './ProEditLabel';
14
14
  // 表单
15
+ export { ProFormGroup, useProFormGroup } from './ProForm/components/ProFormGroup';
15
16
  export { default as ProForm } from './ProForm';
16
17
  export * from './ProForm';
17
18
  export * from './ProForm/components'; // ProForm 中组件导出
@@ -404,7 +404,7 @@ var ProEditableTable = /*#__PURE__*/forwardRef(function (props, ref) {
404
404
  }, antButtonProps), {}, {
405
405
  children: buttonText
406
406
  }))]
407
- }) : /*#__PURE__*/cloneElement(buttonText, antButtonProps)
407
+ }) : ( /*#__PURE__*/cloneElement(buttonText, antButtonProps))
408
408
  }) : null
409
409
  });
410
410
  };
@@ -34,7 +34,6 @@ var antdLangMap = {
34
34
  'zh-CN': _zh_CN.default,
35
35
  'en-US': _en_US.default // en-US
36
36
  };
37
-
38
37
  var reducer = function reducer(state, action) {
39
38
  var _state$ProEnum;
40
39
  switch (action.type) {